Package org.checkerframework.javacutil
Class AnnotationMirrorMap<V>
java.lang.Object
org.checkerframework.javacutil.AnnotationMirrorMap<V>
- All Implemented Interfaces:
Map<@KeyFor("this") AnnotationMirror,V>
public class AnnotationMirrorMap<V>
extends Object
implements Map<@KeyFor("this") AnnotationMirror,V>
The Map interface defines some of its methods with respect to the equals method. This
implementation of Map violates those specifications, but fulfills the same property using
AnnotationUtils.areSame(javax.lang.model.element.AnnotationMirror, javax.lang.model.element.AnnotationMirror).
For example, the specification for the containsKey(Object key) method says: "returns true if
and only if this map contains a mapping for a key k such that (key == null ? k == null :
key.equals(k))." The specification for containsKey(java.lang.Object) is "returns true
if and only if this map contains a mapping for a key k such that (key == null ? k == null :
AnnotationUtils.areSame(key, k))."
AnnotationMirror is an interface and not all implementing classes provide a correct equals method; therefore, existing implementations of Map cannot be used.
-
Nested Class Summary
-
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.AnnotationMirrorMap(Map<AnnotationMirror, ? extends V> copy) Creates an annotation mirror map and adds all the mappings incopy. -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()booleancontainsKey(Object key) booleancontainsValue(Object value) Set<Map.Entry<@KeyFor("this") AnnotationMirror, V>> entrySet()booleaninthashCode()booleanisEmpty()keySet()put(AnnotationMirror key, V value) voidputAll(Map<? extends AnnotationMirror, ? extends V> m) intsize()toString()values()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Constructor Details
-
AnnotationMirrorMap
public AnnotationMirrorMap()Default constructor. -
AnnotationMirrorMap
Creates an annotation mirror map and adds all the mappings incopy.- Parameters:
copy- a map whose contents should be copied to the newly created map
-
-
Method Details
-
size
public int size()- Specified by:
sizein interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
isEmpty
public boolean isEmpty()- Specified by:
isEmptyin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
containsKey
- Specified by:
containsKeyin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
containsValue
- Specified by:
containsValuein interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
get
- Specified by:
getin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
put
- Specified by:
putin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
remove
- Specified by:
removein interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
putAll
- Specified by:
putAllin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
clear
public void clear()- Specified by:
clearin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
keySet
- Specified by:
keySetin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
values
- Specified by:
valuesin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
entrySet
- Specified by:
entrySetin interfaceMap<@KeyFor("this") AnnotationMirror,V>
-
toString
-
equals
-
hashCode
public int hashCode()
-