org.eclipse.wst.jsdt.core.dom
Class ParameterizedType

java.lang.Object
  extended by org.eclipse.wst.jsdt.core.dom.ASTNode
      extended by org.eclipse.wst.jsdt.core.dom.Type
          extended by org.eclipse.wst.jsdt.core.dom.ParameterizedType

public class ParameterizedType
extends Type

Type node for a parameterized type (added in JLS3 API). These nodes are used for type references (as opposed to declarations of parameterized types.)

 ParameterizedType:
    Type < Type { , Type } >
 
The first type may be a simple type or a qualified type; other kinds of types are meaningless.

Note: This Class only applies to ECMAScript 4 which is not yet supported

Provisional API: This class/interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made 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.


Field Summary
static ChildListPropertyDescriptor TYPE_ARGUMENTS_PROPERTY
          The "typeArguments" structural property of this node type.
static ChildPropertyDescriptor TYPE_PROPERTY
          The "type" structural property of this node type.
 
Fields inherited from class org.eclipse.wst.jsdt.core.dom.ASTNode
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, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, DO_STATEMENT, EMPTY_EXPRESSION, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_IN_STATEMENT, FOR_STATEMENT, FUNCTION_DECLARATION, FUNCTION_EXPRESSION, FUNCTION_INVOCATION, FUNCTION_REF, FUNCTION_REF_PARAMETER, IF_STATEMENT, IMPORT_DECLARATION, INFERRED_TYPE, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, JAVASCRIPT_UNIT, JSDOC, LABELED_STATEMENT, LINE_COMMENT, LIST_EXPRESSION, MALFORMED, MEMBER_REF, MODIFIER, NULL_LITERAL, NUMBER_LITERAL, OBJECT_LITERAL, OBJECT_LITERAL_FIELD, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RECOVERED, REGULAR_EXPRESSION_LITERAL, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, TAG_ELEMENT, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_PARAMETER, UNDEFINED_LITERAL, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, WITH_STATEMENT
 
Method Summary
 Type getType()
          Returns the type of this parameterized type.
static java.util.List propertyDescriptors(int apiLevel)
          Returns a list of structural property descriptors for this node type.
 void setType(Type type)
          Sets the type of this parameterized type.
 java.util.List typeArguments()
          Returns the live ordered list of type arguments of this parameterized type.
 
Methods inherited from class org.eclipse.wst.jsdt.core.dom.Type
isArrayType, isInferred, isParameterizedType, isPrimitiveType, isQualifiedType, isSimpleType, isWildcardType, resolveBinding
 
Methods inherited from class org.eclipse.wst.jsdt.core.dom.ASTNode
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, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPE_PROPERTY

public static final ChildPropertyDescriptor TYPE_PROPERTY
The "type" structural property of this node type.


TYPE_ARGUMENTS_PROPERTY

public static final ChildListPropertyDescriptor TYPE_ARGUMENTS_PROPERTY
The "typeArguments" structural property of this node type.

Method Detail

propertyDescriptors

public static java.util.List propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type. Clients must not modify the result.

Parameters:
apiLevel - the API level; one of the AST.JLS* constants
Returns:
a list of property descriptors (element type: StructuralPropertyDescriptor)

getType

public Type getType()
Returns the type of this parameterized type.

Returns:
the type of this parameterized type

setType

public void setType(Type type)
Sets the type of this parameterized type.

Parameters:
type - the new type of this parameterized type
Throws:
java.lang.IllegalArgumentException - if:
  • the node belongs to a different AST
  • the node already has a parent

typeArguments

public java.util.List typeArguments()
Returns the live ordered list of type arguments of this parameterized type. For the parameterized type to be plausible, the list should contain at least one element and not contain primitive types.

Returns:
the live list of type arguments (element type: Type)