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 SummaryConstructorsConstructorDescriptionDefault constructor.AnnotationMirrorMap(Map<AnnotationMirror, ? extends V> copy) Creates an annotation mirror map and adds all the mappings incopy.
- 
Method SummaryModifier and TypeMethodDescriptionvoidclear()booleancontainsKey(Object key) booleancontainsValue(Object value) static <V> AnnotationMirrorMap<V>emptyMap()Returns an empty set.Set<Map.Entry<@KeyFor("this") AnnotationMirror,V>> entrySet()booleaninthashCode()booleanisEmpty()keySet()Make this set unmodifiable.put(AnnotationMirror key, V value) voidputAll(Map<? extends AnnotationMirror, ? extends V> m) intsize()toString()static <V> AnnotationMirrorMap<V>unmodifiableSet(Map<AnnotationMirror, ? extends V> annos) Returns an unmodifiable AnnotationMirrorSet with the given elements.values()Methods inherited from class java.lang.Objectclone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Mapcompute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
- 
Constructor Details- 
AnnotationMirrorMappublic AnnotationMirrorMap()Default constructor.
- 
AnnotationMirrorMapCreates 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- 
unmodifiableSetReturns an unmodifiable AnnotationMirrorSet with the given elements.- Type Parameters:
- V- the type of the values in the map
- Parameters:
- annos- the annotation mirrors that will constitute the new unmodifable set
- Returns:
- an unmodifiable AnnotationMirrorSet with the given elements
 
- 
emptyMapReturns an empty set.- Type Parameters:
- V- the type of the values in the map
- Returns:
- an empty set
 
- 
makeUnmodifiableMake this set unmodifiable.- Returns:
- this set
 
- 
sizepublic int size()- Specified by:
- sizein interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
isEmptypublic boolean isEmpty()- Specified by:
- isEmptyin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
containsKey- Specified by:
- containsKeyin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
containsValue- Specified by:
- containsValuein interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
get- Specified by:
- getin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
put- Specified by:
- putin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
remove- Specified by:
- removein interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
putAll- Specified by:
- putAllin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
clearpublic void clear()- Specified by:
- clearin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
keySet- Specified by:
- keySetin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
values- Specified by:
- valuesin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
entrySet- Specified by:
- entrySetin interface- Map<@KeyFor("this") AnnotationMirror,- V> 
 
- 
toString
- 
equals
- 
hashCodepublic int hashCode()
 
-