public abstract class Type extends ASTNode
Type:
AnnotatableType:
PrimitiveType
SimpleType
QualifiedType
NameQualifiedType
WildcardType
ArrayType
ParameterizedType
UnionType
IntersectionType
PrimitiveType:
{ Annotation } byte
{ Annotation } short
{ Annotation } char
{ Annotation } int
{ Annotation } long
{ Annotation } float
{ Annotation } double
{ Annotation } boolean
{ Annotation } void
ArrayType:
Type Dimension { Dimension }
SimpleType:
{ Annotation } TypeName
QualifiedType:
Type . {Annotation} SimpleName
NameQualifiedType:
Name . { Annotation } SimpleName
WildcardType:
{ Annotation } ? [ ( extends | super) Type ]
ParameterizedType:
Type < Type { , Type } >
UnionType:
Type | Type { | Type }
IntersectionType:
Type & Type { & Type }
ANNOTATION_TYPE_DECLARATION, ANNOTATION_TYPE_MEMBER_DECLARATION, ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, LABELED_STATEMENT, LAMBDA_EXPRESSION, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RECOVERED, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, UNION_TYPE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE| Modifier and Type | Method and Description |
|---|---|
boolean |
isAnnotatable()
Returns whether this type can be annotated.
|
boolean |
isArrayType()
Returns whether this type is an array type
(
ArrayType). |
boolean |
isIntersectionType()
Returns whether this type is an intersection type
(
IntersectionType). |
boolean |
isNameQualifiedType()
Returns whether this type is a name qualified type
(
NameQualifiedType). |
boolean |
isParameterizedType()
Returns whether this type is a parameterized type
(
ParameterizedType). |
boolean |
isPrimitiveType()
Returns whether this type is a primitive type
(
PrimitiveType). |
boolean |
isQualifiedType()
Returns whether this type is a qualified type
(
QualifiedType). |
boolean |
isSimpleType()
Returns whether this type is a simple type
(
SimpleType). |
boolean |
isUnionType()
Returns whether this type is a union type
(
UnionType). |
boolean |
isWildcardType()
Returns whether this type is a wildcard type
(
WildcardType). |
ITypeBinding |
resolveBinding()
Resolves and returns the binding for this type.
|
accept, copySubtree, copySubtrees, delete, equals, getAST, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, hashCode, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toStringpublic final boolean isPrimitiveType()
PrimitiveType).true if this is a primitive type, and
false otherwisepublic final boolean isSimpleType()
SimpleType).true if this is a simple type, and
false otherwisepublic final boolean isArrayType()
ArrayType).true if this is an array type, and
false otherwisepublic final boolean isNameQualifiedType()
NameQualifiedType).true if this is a name qualified type, and
false otherwisepublic final boolean isParameterizedType()
ParameterizedType).true if this is a parameterized type, and
false otherwisepublic final boolean isQualifiedType()
QualifiedType).
Note that a type like "A.B" can be represented either of two ways:
QualifiedType(SimpleType(SimpleName("A")),SimpleName("B"))
SimpleType(QualifiedName(SimpleName("A"),SimpleName("B")))
true if this is a qualified type, and
false otherwisepublic final boolean isUnionType()
UnionType).true if this is a union type, and
false otherwisepublic final boolean isIntersectionType()
IntersectionType).true if this is an intersection type, and
false otherwisepublic final boolean isWildcardType()
WildcardType).
Note that a wildcard type is only meaningful as a
type argument of a ParameterizedType node.
true if this is a wildcard type, and
false otherwisepublic boolean isAnnotatable()
AnnotatableType can be annotated.true if this type is an instance of AnnotatableType, and
false otherwisepublic final ITypeBinding resolveBinding()
Note that bindings are generally unavailable unless requested when the AST is being built.
null if the binding cannot be
resolved
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.