checkers.types
Class AnnotatedTypeMirror.AnnotatedTypeVariable

java.lang.Object
  extended by checkers.types.AnnotatedTypeMirror
      extended by checkers.types.AnnotatedTypeMirror.AnnotatedTypeVariable
All Implemented Interfaces:
AnnotatedTypeMirror.AnnotatedReferenceType
Enclosing class:
AnnotatedTypeMirror

public static class AnnotatedTypeMirror.AnnotatedTypeVariable
extends AnnotatedTypeMirror
implements AnnotatedTypeMirror.AnnotatedReferenceType

Represents a type variable. A type variable may be explicitly declared by a type parameter of a type, method, or constructor. A type variable may also be declared implicitly, as by the capture conversion of a wildcard type argument (see chapter 5 of The Java Language Specification, Third Edition).


Nested Class Summary
Modifier and Type Class and Description
 
Nested classes/interfaces inherited from class checkers.types.AnnotatedTypeMirror
AnnotatedTypeMirror.AnnotatedArrayType, AnnotatedTypeMirror.AnnotatedDeclaredType, AnnotatedTypeMirror.AnnotatedExecutableType, AnnotatedTypeMirror.AnnotatedNoType, AnnotatedTypeMirror.AnnotatedNullType, AnnotatedTypeMirror.AnnotatedPrimitiveType, AnnotatedTypeMirror.AnnotatedReferenceType, AnnotatedTypeMirror.AnnotatedTypeVariable, AnnotatedTypeMirror.AnnotatedWildcardType
 
Field Summary
Modifier and Type Field and Description
 
Fields inherited from class checkers.types.AnnotatedTypeMirror
annotationFactory, annotations, element, enclosingType, env, typeFactory
 
Method Summary
Modifier and Type Method and Description
<R,P> R
accept(AnnotatedTypeVisitor<R,P> v, P p)
          Applies a visitor to this type.
 boolean equals(Object o)
           
 Set<AnnotationMirror> getAnnotations()
          Returns the annotations on this type.
 Set<AnnotationMirror> getAnnotationsOnTypeVar()
           
 AnnotatedTypeMirror.AnnotatedTypeVariable getCopy(boolean annotation)
          Returns a shallow copy of this type.
 AnnotatedTypeMirror getErased()
          Returns the erasure type of the this type, according to JLS specifications.
 AnnotatedTypeMirror getLowerBound()
           
 Element getTypeVariableElement()
           
 TypeVariable getUnderlyingType()
          Returns the underlying unannotated Java type wrapped with this
 AnnotatedTypeMirror getUpperBound()
           
 int hashCode()
           
 boolean isAnnotated()
          Returns true if an annotation targets this type location.
 AnnotatedTypeMirror substitute(Map<? extends AnnotatedTypeMirror,? extends AnnotatedTypeMirror> mappings)
          Sub
 String toString()
           
 
Methods inherited from class checkers.types.AnnotatedTypeMirror
addAnnotation, addAnnotation, addAnnotations, clearAnnotations, copyFields, createType, createTypeOfObject, directSuperTypes, directSuperTypes, formatAnnotationString, getAnnotation, getAnnotation, getAnnotation, getElement, getEnclosingType, getKind, hasAnnotation, hasAnnotation, removeAnnotation, removeAnnotation, removeAnnotations
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

accept

public <R,P> R accept(AnnotatedTypeVisitor<R,P> v,
                      P p)
Description copied from class: AnnotatedTypeMirror
Applies a visitor to this type.

Specified by:
accept in class AnnotatedTypeMirror
Type Parameters:
R - the return type of the visitor's methods
P - the type of the additional parameter to the visitor's methods
Parameters:
v - the visitor operating on this type
p - additional parameter to the visitor
Returns:
a visitor-specified result

getUnderlyingType

public TypeVariable getUnderlyingType()
Description copied from class: AnnotatedTypeMirror
Returns the underlying unannotated Java type wrapped with this

Overrides:
getUnderlyingType in class AnnotatedTypeMirror
Returns:
the underlying type

getTypeVariableElement

public Element getTypeVariableElement()
Returns:
the element of the type variable in this

getLowerBound

public AnnotatedTypeMirror getLowerBound()
Returns:
the lower bound type of this type variable

getUpperBound

public AnnotatedTypeMirror getUpperBound()
Returns:
the upper bound type of this type variable

getCopy

public AnnotatedTypeMirror.AnnotatedTypeVariable getCopy(boolean annotation)
Description copied from class: AnnotatedTypeMirror
Returns a shallow copy of this type.

Specified by:
getCopy in class AnnotatedTypeMirror
Parameters:
annotation - whether copy should have annotations

getErased

public AnnotatedTypeMirror getErased()
Description copied from class: AnnotatedTypeMirror
Returns the erasure type of the this type, according to JLS specifications.

Overrides:
getErased in class AnnotatedTypeMirror
Returns:
the erasure of this

substitute

public AnnotatedTypeMirror substitute(Map<? extends AnnotatedTypeMirror,? extends AnnotatedTypeMirror> mappings)
Description copied from class: AnnotatedTypeMirror
Sub

Overrides:
substitute in class AnnotatedTypeMirror

isAnnotated

public boolean isAnnotated()
Description copied from class: AnnotatedTypeMirror
Returns true if an annotation targets this type location. It doesn't account for annotations in deep types (type arguments, array components, etc).

Overrides:
isAnnotated in class AnnotatedTypeMirror

getAnnotationsOnTypeVar

public Set<AnnotationMirror> getAnnotationsOnTypeVar()

getAnnotations

public Set<AnnotationMirror> getAnnotations()
Description copied from class: AnnotatedTypeMirror
Returns the annotations on this type. It does not include annotations in deep types (type arguments, array components, etc).

Overrides:
getAnnotations in class AnnotatedTypeMirror
Returns:
a set of the annotations on this

toString

public String toString()
Overrides:
toString in class AnnotatedTypeMirror

hashCode

public int hashCode()
Overrides:
hashCode in class AnnotatedTypeMirror

equals

public boolean equals(Object o)
Overrides:
equals in class AnnotatedTypeMirror