parameter is declared as object as the underlying type can be represented either by
the TypeElement or TypeMirror class.
Further more when a type is analyzed it heavily depends upon its class. A TypeElement will always be
considered as a class but a TypeMirror will be considered as a class or as a parameterized type.
While the runtime java type model makes a clear distinction between the two cases, the compile time model
does not and only the type can be used to make the distinction.
An example with the ThreadLocal class
that is considered as a class when it is seen as a TypeElement but is considered as a parameterized type
when it is seen as @ TypeMirror.
- Version:
- $Revision$
- Author:
- Julien Viet
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JavaxLangTypeModel
public JavaxLangTypeModel()
getKind
public TypeKind getKind(java.lang.Object type)
- Specified by:
getKind in interface TypeModel<java.lang.Object>
getEnclosing
public java.lang.Object getEnclosing(java.lang.Object classType)
- Specified by:
getEnclosing in interface TypeModel<java.lang.Object>
getClassName
public java.lang.String getClassName(java.lang.Object classType)
- Specified by:
getClassName in interface TypeModel<java.lang.Object>
getInterfaces
public java.lang.Iterable<java.lang.Object> getInterfaces(java.lang.Object classType)
- Specified by:
getInterfaces in interface TypeModel<java.lang.Object>
getClassKind
public ClassKind getClassKind(java.lang.Object classType)
- Specified by:
getClassKind in interface TypeModel<java.lang.Object>
getSuperClass
public java.lang.Object getSuperClass(java.lang.Object classType)
- Specified by:
getSuperClass in interface TypeModel<java.lang.Object>
getTypeParameters
public java.lang.Iterable<java.lang.Object> getTypeParameters(java.lang.Object classType)
- Specified by:
getTypeParameters in interface TypeModel<java.lang.Object>
getName
public java.lang.String getName(java.lang.Object typeVariable)
- Specified by:
getName in interface TypeModel<java.lang.Object>
getGenericDeclarationKind
public GenericDeclarationKind getGenericDeclarationKind(java.lang.Object typeVariable)
- Specified by:
getGenericDeclarationKind in interface TypeModel<java.lang.Object>
getLiteralType
public LiteralType getLiteralType(java.lang.Object simpleType)
- Specified by:
getLiteralType in interface TypeModel<java.lang.Object>
getComponentType
public java.lang.Object getComponentType(java.lang.Object arrayType)
- Specified by:
getComponentType in interface TypeModel<java.lang.Object>
isPrimitive
public boolean isPrimitive(java.lang.Object simpleType)
- Specified by:
isPrimitive in interface TypeModel<java.lang.Object>
getGenericDeclaration
public java.lang.Object getGenericDeclaration(java.lang.Object typeVariable)
- Specified by:
getGenericDeclaration in interface TypeModel<java.lang.Object>
getRawType
public java.lang.Object getRawType(java.lang.Object parameterizedType)
- Specified by:
getRawType in interface TypeModel<java.lang.Object>
getTypeArguments
public java.lang.Iterable<java.lang.Object> getTypeArguments(java.lang.Object parameterizedType)
- Specified by:
getTypeArguments in interface TypeModel<java.lang.Object>
getBounds
public java.lang.Iterable<java.lang.Object> getBounds(java.lang.Object typeVariable)
- Specified by:
getBounds in interface TypeModel<java.lang.Object>
getUpperBounds
public java.lang.Iterable<java.lang.Object> getUpperBounds(java.lang.Object wildcardType)
- Specified by:
getUpperBounds in interface TypeModel<java.lang.Object>
getLowerBounds
public java.lang.Iterable<java.lang.Object> getLowerBounds(java.lang.Object wildcardType)
- Specified by:
getLowerBounds in interface TypeModel<java.lang.Object>
Copyright © 2011 eXo Platform SAS. All Rights Reserved.