Interface IType
public interface IType
The external representation of a Java type.
Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.
- Since:
- 2.3
- Version:
- 2.5
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturns the external representation of the Java class's constructors.boolean
Determines whether the given type represents the same Java type thank this one.String[]
getName()
Returns the fully qualified class name.Returns the declaration of the Java class, which gives the information about type parameters, dimensionality, etc.boolean
hasAnnotation
(Class<? extends Annotation> annotationType) Determines whether the given annotation is present on this type.boolean
isAssignableTo
(IType type) Determines whether this type is an instance of the given type.boolean
isEnum()
boolean
Determines whether this Java type actually exists.
-
Field Details
-
UNRESOLVABLE_TYPE
Special constant used to specify thisIType
represents an unresolvable type, or simply an unknown type. This has to be handled byITypeRepository.getType(String)
.- See Also:
-
-
Method Details
-
constructors
Iterable<IConstructor> constructors()Returns the external representation of the Java class's constructors. All public, protected, default (package) access, and private constructors should be included.- Returns:
- The declared constructors
-
equals
Determines whether the given type represents the same Java type thank this one.Note:
Object.hashCode()
needs to be overridden.- Parameters:
type
- The type to compare with this one- Returns:
true
if the given type and this one represents the same Java type;false
otherwise
-
getEnumConstants
String[] getEnumConstants()- Returns:
- The name of the
Enum
constant or an empty list if the type is not anEnum
-
getName
String getName()Returns the fully qualified class name.- Returns:
- The name of the class represented by this one
-
getTypeDeclaration
ITypeDeclaration getTypeDeclaration()Returns the declaration of the Java class, which gives the information about type parameters, dimensionality, etc.- Returns:
- The external form of the class' type declaration
-
hasAnnotation
Determines whether the given annotation is present on this type.- Parameters:
annotationType
- The class of the annotation- Returns:
true
if the annotation is defined on this type;false
otherwise
-
isAssignableTo
Determines whether this type is an instance of the given type.- Parameters:
type
- The type used to determine if the class represented by this external form is an instance of with one- Returns:
true
if this type is an instance of the given type;false
otherwise
-
isEnum
boolean isEnum()- Returns:
true
if this is anEnum
;false
otherwise
-
isResolvable
boolean isResolvable()Determines whether this Java type actually exists.- Returns:
true
if the actual Java type can be located on the application's class path;false
if it could not be found
-