Compatibility Note: Methods may be added to this interface
in future releases of the platform.
author: Joseph D. Darcy author: Scott Seligman author: Peter von der Ahé version: 1.13 07/05/05 See Also:javax.annotation.processing.ProcessingEnvironment.getTypeUtils since: 1.6
asMemberOf(DeclaredType containing, Element element) Returns the type of an element when that element is viewed as
a member of, or otherwise directly contained by, a given type.
getDeclaredType(TypeElement typeElem, TypeMirror... typeArgs) Returns the type corresponding to a type element and
actual type arguments.
Given the type element for
Set and the type mirror
for
String ,
for example, this method may be used to get the
parameterized type
Set .
The number of type arguments must either equal the
number of the type element's formal type parameters, or must be
zero.
getDeclaredType(DeclaredType containing, TypeElement typeElem, TypeMirror... typeArgs) Returns the type corresponding to a type element
and actual type arguments, given a
of which it is a member.
Returns the element corresponding to a type.
The type may be a
DeclaredType or
TypeVariable .
Returns
null if the type is not one with a
corresponding element.
the element corresponding to the given type
Returns the type of an element when that element is viewed as
a member of, or otherwise directly contained by, a given type.
For example,
when viewed as a member of the parameterized type
Set ,
the
Set.add method is an
ExecutableType whose parameter is of type
String .
Parameters: containing - the containing type Parameters: element - the element the type of the element as viewed from the containing type throws: IllegalArgumentException - if the element is not a valid onefor the given type
Returns the class of a boxed value of a given primitive type.
That is, boxing conversion is applied.
Parameters: p - the primitive type to be converted the class of a boxed value of type p
Applies capture conversion to a type.
Parameters: t - the type to be converted the result of applying capture conversion throws: IllegalArgumentException - if given an executable or package type
Tests whether one type argument contains another.
Parameters: t1 - the first type Parameters: t2 - the second type true if and only if the first type contains the second throws: IllegalArgumentException - if given an executable or package type
Returns the direct supertypes of a type. The interface types, if any,
will appear last in the list.
Parameters: t - the type being examined the direct supertypes, or an empty list if none throws: IllegalArgumentException - if given an executable or package type
Returns the erasure of a type.
Parameters: t - the type to be erased the erasure of the given type throws: IllegalArgumentException - if given a package type
Returns an array type with the specified component type.
Parameters: componentType - the component type an array type with the specified component type. throws: IllegalArgumentException - if the component type is not valid foran array
Returns the type corresponding to a type element and
actual type arguments.
Given the type element for
Set and the type mirror
for
String ,
for example, this method may be used to get the
parameterized type
Set .
The number of type arguments must either equal the
number of the type element's formal type parameters, or must be
zero. If zero, and if the type element is generic,
then the type element's raw type is returned.
If a parameterized type is being returned, its type element
must not be contained within a generic outer class.
The parameterized type
Outer.Inner ,
for example, may be constructed by first using this
method to get the type
Outer , and then invoking
Types.getDeclaredType(DeclaredType,TypeElement,TypeMirror) .
Parameters: typeElem - the type element Parameters: typeArgs - the actual type arguments the type corresponding to the type element andactual type arguments throws: IllegalArgumentException - if too many or too fewtype arguments are given, or if an inappropriate typeargument or type element is provided
Returns the type corresponding to a type element
and actual type arguments, given a
of which it is a member.
The parameterized type
Outer.Inner ,
for example, may be constructed by first using
Types.getDeclaredType(TypeElement,TypeMirror) to get the type
Outer , and then invoking
this method.
If the containing type is a parameterized type,
the number of type arguments must equal the
number of
typeElem 's formal type parameters.
If it is not parameterized or if it is
null , this method is
equivalent to
getDeclaredType(typeElem, typeArgs) .
Parameters: containing - the containing type, or null if none Parameters: typeElem - the type element Parameters: typeArgs - the actual type arguments the type corresponding to the type element andactual type arguments, contained within the given type throws: IllegalArgumentException - if too many or too fewtype arguments are given, or if an inappropriate typeargument, type element, or containing type is provided
Returns a pseudo-type used where no actual type is appropriate.
The kind of type to return may be either
TypeKind.VOID VOID or
TypeKind.NONE NONE .
For packages, use
Elements.getPackageElement(CharSequence) .asType() instead.
Parameters: kind - the kind of type to return a pseudo-type of kind VOID or NONE throws: IllegalArgumentException - if kind is not valid
Returns a primitive type.
Parameters: kind - the kind of primitive type to return a primitive type throws: IllegalArgumentException - if kind is not a primitive kind
Returns a new wildcard type argument. Either of the wildcard's
bounds may be specified, or neither, but not both.
Parameters: extendsBound - the extends (upper) bound, or null if none Parameters: superBound - the super (lower) bound, or null if none a new wildcard throws: IllegalArgumentException - if bounds are not valid
Tests whether one type is assignable to another.
Parameters: t1 - the first type Parameters: t2 - the second type true if and only if the first type is assignableto the second throws: IllegalArgumentException - if given an executable or package type
Tests whether two
TypeMirror objects represent the same type.
Caveat: if either of the arguments to this method represents a
wildcard, this method will return false. As a consequence, a wildcard
is not the same type as itself. This might be surprising at first,
but makes sense once you consider that an example like this must be
rejected by the compiler:
List> list = new ArrayList
Parameters: t1 - the first type Parameters: t2 - the second type true if and only if the two types are the same
Tests whether the signature of one method is a subsignature
of another.
Parameters: m1 - the first method Parameters: m2 - the second method true if and only if the first signature is asubsignature of the second
Tests whether one type is a subtype of another.
Any type is considered to be a subtype of itself.
Parameters: t1 - the first type Parameters: t2 - the second type true if and only if the first type is a subtypeof the second throws: IllegalArgumentException - if given an executable or package type
Returns the type (a primitive type) of unboxed values of a given type.
That is, unboxing conversion is applied.
Parameters: t - the type to be unboxed the type of an unboxed value of type t throws: IllegalArgumentException - if the given type has nounboxing conversion