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

java.lang.Object
  extended by org.eclipse.wst.jsdt.core.dom.ASTNode
      extended by org.eclipse.wst.jsdt.core.dom.ProgramElement
          extended by org.eclipse.wst.jsdt.core.dom.Statement
              extended by org.eclipse.wst.jsdt.core.dom.ConstructorInvocation

public class ConstructorInvocation
extends Statement

Alternate constructor invocation statement AST node type. For JLS2:

 ConstructorInvocation:
                this ( [ Expression { , Expression } ] ) ;
 
For JLS3, type arguments are added:
 ConstructorInvocation:
      [ < Type { , Type } > ]
                      this ( [ Expression { , Expression } ] ) ;
 
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 ARGUMENTS_PROPERTY
          The "arguments" structural property of this node type.
static ChildListPropertyDescriptor TYPE_ARGUMENTS_PROPERTY
          The "typeArguments" structural property of this node type (added in JLS3 API).
 
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
 java.util.List arguments()
          Returns the live ordered list of argument expressions in this alternate constructor invocation statement.
static java.util.List propertyDescriptors(int apiLevel)
          Returns a list of structural property descriptors for this node type.
 IFunctionBinding resolveConstructorBinding()
          Resolves and returns the binding for the constructor invoked by this expression.
 java.util.List typeArguments()
          Returns the live ordered list of type arguments of this constructor invocation (added in JLS3 API).
 
Methods inherited from class org.eclipse.wst.jsdt.core.dom.Statement
getLeadingComment, setLeadingComment
 
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_ARGUMENTS_PROPERTY

public static final ChildListPropertyDescriptor TYPE_ARGUMENTS_PROPERTY
The "typeArguments" structural property of this node type (added in JLS3 API).


ARGUMENTS_PROPERTY

public static final ChildListPropertyDescriptor ARGUMENTS_PROPERTY
The "arguments" 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)

typeArguments

public java.util.List typeArguments()
Returns the live ordered list of type arguments of this constructor invocation (added in JLS3 API).

Returns:
the live list of type arguments (element type: Type)
Throws:
java.lang.UnsupportedOperationException - if this operation is used in a JLS2 AST

arguments

public java.util.List arguments()
Returns the live ordered list of argument expressions in this alternate constructor invocation statement.

Returns:
the live list of argument expressions (element type: Expression)

resolveConstructorBinding

public IFunctionBinding resolveConstructorBinding()
Resolves and returns the binding for the constructor invoked by this expression.

Note that bindings are generally unavailable unless requested when the AST is being built.

Returns:
the constructor binding, or null if the binding cannot be resolved