public final class MoreTypes extends Object
TypeMirror instances.| Modifier and Type | Method and Description |
|---|---|
static ArrayType |
asArray(TypeMirror maybeArrayType)
Returns a
ArrayType if the TypeMirror represents a primitive array or throws an
IllegalArgumentException. |
static DeclaredType |
asDeclared(TypeMirror maybeDeclaredType)
Returns a
DeclaredType if the TypeMirror represents a declared type such as a
class, interface, union/compound, or enum or throws an IllegalArgumentException. |
static Element |
asElement(TypeMirror typeMirror)
An alternate implementation of
Types.asElement(javax.lang.model.type.TypeMirror) that does not require a Types
instance with the notable difference that it will throw IllegalArgumentException
instead of returning null if the TypeMirror can not be converted to an Element. |
static ErrorType |
asError(TypeMirror maybeErrorType)
Returns a
ExecutableType if the TypeMirror represents an executable type such
as may result from missing code, or bad compiles or throws an IllegalArgumentException. |
static ExecutableType |
asExecutable(TypeMirror maybeExecutableType)
Returns a
ExecutableType if the TypeMirror represents an executable type such
as a method, constructor, or initializer or throws an IllegalArgumentException. |
static TypeMirror |
asMemberOf(Types types,
DeclaredType container,
VariableElement variable)
Resolves a
VariableElement parameter to a method or constructor based on the given
container, or a member of a class. |
static NoType |
asNoType(TypeMirror maybeNoType)
Returns a
NoType if the TypeMirror represents an non-type such as void, or
package, etc. |
static NullType |
asNullType(TypeMirror maybeNullType)
Returns a
NullType if the TypeMirror represents the null type or throws an
IllegalArgumentException. |
static PrimitiveType |
asPrimitiveType(TypeMirror maybePrimitiveType)
Returns a
PrimitiveType if the TypeMirror represents a primitive type or throws
an IllegalArgumentException. |
static TypeElement |
asTypeElement(TypeMirror mirror) |
static com.google.common.collect.ImmutableSet<TypeElement> |
asTypeElements(Iterable<? extends TypeMirror> mirrors) |
static TypeVariable |
asTypeVariable(TypeMirror maybeTypeVariable)
Returns a
TypeVariable if the TypeMirror represents a type variable or throws
an IllegalArgumentException. |
static WildcardType |
asWildcard(WildcardType maybeWildcardType)
Returns a
WildcardType if the TypeMirror represents a wildcard type or throws
an IllegalArgumentException. |
static com.google.common.base.Equivalence<TypeMirror> |
equivalence() |
static boolean |
isType(TypeMirror type)
Returns true if the raw type underlying the given
TypeMirror represents a type that can
be referenced by a Class. |
static boolean |
isTypeOf(Class<?> clazz,
TypeMirror type)
Returns true if the raw type underlying the given
TypeMirror represents the same raw
type as the given Class and throws an IllegalArgumentException if the TypeMirror does not represent a type that can be referenced by a Class |
static com.google.common.base.Optional<DeclaredType> |
nonObjectSuperclass(Types types,
Elements elements,
DeclaredType type)
Returns the non-object superclass of the type with the proper type parameters.
|
static com.google.common.collect.ImmutableSet<TypeElement> |
referencedTypes(TypeMirror type)
Returns the set of types that are referenced by the given
TypeMirror. |
public static com.google.common.base.Equivalence<TypeMirror> equivalence()
public static com.google.common.collect.ImmutableSet<TypeElement> referencedTypes(TypeMirror type)
TypeMirror.public static Element asElement(TypeMirror typeMirror)
Types.asElement(javax.lang.model.type.TypeMirror) that does not require a Types
instance with the notable difference that it will throw IllegalArgumentException
instead of returning null if the TypeMirror can not be converted to an Element.NullPointerException - if typeMirror is nullIllegalArgumentException - if typeMirror cannot be converted to an Elementpublic static TypeElement asTypeElement(TypeMirror mirror)
public static com.google.common.collect.ImmutableSet<TypeElement> asTypeElements(Iterable<? extends TypeMirror> mirrors)
public static ArrayType asArray(TypeMirror maybeArrayType)
ArrayType if the TypeMirror represents a primitive array or throws an
IllegalArgumentException.public static DeclaredType asDeclared(TypeMirror maybeDeclaredType)
DeclaredType if the TypeMirror represents a declared type such as a
class, interface, union/compound, or enum or throws an IllegalArgumentException.public static ErrorType asError(TypeMirror maybeErrorType)
ExecutableType if the TypeMirror represents an executable type such
as may result from missing code, or bad compiles or throws an IllegalArgumentException.public static ExecutableType asExecutable(TypeMirror maybeExecutableType)
ExecutableType if the TypeMirror represents an executable type such
as a method, constructor, or initializer or throws an IllegalArgumentException.public static NoType asNoType(TypeMirror maybeNoType)
NoType if the TypeMirror represents an non-type such as void, or
package, etc. or throws an IllegalArgumentException.public static NullType asNullType(TypeMirror maybeNullType)
NullType if the TypeMirror represents the null type or throws an
IllegalArgumentException.public static PrimitiveType asPrimitiveType(TypeMirror maybePrimitiveType)
PrimitiveType if the TypeMirror represents a primitive type or throws
an IllegalArgumentException.public static TypeVariable asTypeVariable(TypeMirror maybeTypeVariable)
TypeVariable if the TypeMirror represents a type variable or throws
an IllegalArgumentException.public static WildcardType asWildcard(WildcardType maybeWildcardType)
WildcardType if the TypeMirror represents a wildcard type or throws
an IllegalArgumentException.public static boolean isType(TypeMirror type)
TypeMirror represents a type that can
be referenced by a Class. If this returns true, then isTypeOf(java.lang.Class<?>, javax.lang.model.type.TypeMirror) is guaranteed to
not throw.public static boolean isTypeOf(Class<?> clazz, TypeMirror type)
TypeMirror represents the same raw
type as the given Class and throws an IllegalArgumentException if the TypeMirror does not represent a type that can be referenced by a Classpublic static com.google.common.base.Optional<DeclaredType> nonObjectSuperclass(Types types, Elements elements, DeclaredType type)
public static TypeMirror asMemberOf(Types types, DeclaredType container, VariableElement variable)
VariableElement parameter to a method or constructor based on the given
container, or a member of a class. For parameters to a method or constructor, the variable's
enclosing element must be a supertype of the container type. For example, given a
container of type Set<String>, and a variable corresponding to the E e
parameter in the Set.add(E e) method, this will return a TypeMirror for String.Copyright © 2016 Google, Inc.. All Rights Reserved.