|
org.eclipse.jdt.core.dom
Class MethodRefParameter
java.lang.Object
org.eclipse.jdt.core.dom.ASTNode
org.eclipse.jdt.core.dom.MethodRefParameter
-
public class MethodRefParameter
- extends
ASTNode
AST node for a parameter within a method reference (
MethodRef ).
These nodes only occur within doc comments (
Javadoc ).
For JLS2:
MethodRefParameter:
Type [ Identifier ]
For JLS3, the variable arity indicator was added:
MethodRefParameter:
Type [ ... ] [ Identifier ]
Note: The 1.5 spec for the Javadoc tool does not mention the possibility
of a variable arity indicator in method references. However, the 1.5
Javadoc tool itself does indeed support it. Since it makes sense to have
a way to explicitly refer to variable arity methods, it seems more likely
that the Javadoc spec is wrong in this case.
-
Since:
- 3.0
-
See Also:
-
Javadoc
-
Restriction:
- This class is not intended to be instantiated by clients.
Fields inherited from class org.eclipse.jdt.core.dom.
ASTNode
|
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,
DO_STATEMENT,
EMPTY_STATEMENT,
ENHANCED_FOR_STATEMENT,
ENUM_CONSTANT_DECLARATION,
ENUM_DECLARATION,
EXPRESSION_STATEMENT,
FIELD_ACCESS,
FIELD_DECLARATION,
FOR_STATEMENT,
IF_STATEMENT,
IMPORT_DECLARATION,
INFIX_EXPRESSION,
INITIALIZER,
INSTANCEOF_EXPRESSION,
JAVADOC,
LABELED_STATEMENT,
LINE_COMMENT,
MALFORMED,
MARKER_ANNOTATION,
MEMBER_REF,
MEMBER_VALUE_PAIR,
METHOD_DECLARATION,
METHOD_INVOCATION,
METHOD_REF,
METHOD_REF_PARAMETER,
MODIFIER,
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,
SWITCH_CASE,
SWITCH_STATEMENT,
SYNCHRONIZED_STATEMENT,
TAG_ELEMENT,
TEXT_ELEMENT,
THIS_EXPRESSION,
THROW_STATEMENT,
TRY_STATEMENT,
TYPE_DECLARATION,
TYPE_DECLARATION_STATEMENT,
TYPE_LITERAL,
TYPE_PARAMETER,
VARIABLE_DECLARATION_EXPRESSION,
VARIABLE_DECLARATION_FRAGMENT,
VARIABLE_DECLARATION_STATEMENT,
WHILE_STATEMENT,
WILDCARD_TYPE
|
Method Summary
|
SimpleName
|
getName
()
Returns the parameter name, or null if there is none. |
Type
|
getType
()
Returns the paramter type. |
boolean
|
isVarargs
()
Returns whether this method reference parameter is for
the last parameter of a variable arity method (added in JLS3 API). |
static
List
|
propertyDescriptors
(int apiLevel)
Returns a list of structural property descriptors for this node type. |
void
|
setName
(
SimpleName name)
Sets or clears the parameter name. |
void
|
setType
(
Type type)
Sets the paramter type to the given type. |
void
|
setVarargs
(boolean variableArity)
Sets whether this method reference parameter is for the last parameter of
a variable arity method (added in JLS3 API). |
Methods inherited from class org.eclipse.jdt.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
|
TYPE_PROPERTY
public static final
ChildPropertyDescriptor TYPE_PROPERTY
- The "type" structural property of this node type.
-
Since:
- 3.0
VARARGS_PROPERTY
public static final
SimplePropertyDescriptor VARARGS_PROPERTY
- The "varargs" structural property of this node type (added in JLS3 API).
-
Since:
- 3.1
NAME_PROPERTY
public static final
ChildPropertyDescriptor NAME_PROPERTY
- The "name" structural property of this node type.
-
Since:
- 3.0
propertyDescriptors
public static
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 ) -
Since:
- 3.0
getType
public
Type getType()
- Returns the paramter type.
-
-
Returns:
- the parameter type
setType
public void setType(
Type type)
- Sets the paramter type to the given type.
-
-
Parameters:
-
type - the new type
-
Throws:
-
IllegalArgumentException
- if:
- the type is
null
- the node belongs to a different AST
- the node already has a parent
isVarargs
public boolean isVarargs()
- Returns whether this method reference parameter is for
the last parameter of a variable arity method (added in JLS3 API).
Note that the binding for the type Foo in the vararg method
reference #fun(Foo...) is always for the type as
written; i.e., the type binding for Foo . However, if you
navigate from the MethodRef to its method binding to the
type binding for its last parameter, the type binding for the vararg
parameter is always an array type (i.e., Foo[] ) reflecting
the way vararg methods get compiled.
-
-
Returns:
-
true if this is a variable arity parameter,
and false otherwise
-
Throws:
-
UnsupportedOperationException
- if this operation is used in
a JLS2 AST -
Since:
- 3.1
setVarargs
public void setVarargs(boolean variableArity)
- Sets whether this method reference parameter is for the last parameter of
a variable arity method (added in JLS3 API).
-
-
Parameters:
-
variableArity - true if this is a variable arity
parameter, and false otherwise -
Since:
- 3.1
getName
public
SimpleName getName()
- Returns the parameter name, or
null if there is none.
-
-
Returns:
- the parameter name node, or
null if there is none
setName
public void setName(
SimpleName name)
- Sets or clears the parameter name.
-
-
Parameters:
-
name - the parameter name node, or null if
there is none
-
Throws:
-
IllegalArgumentException
- if:
- the node belongs to a different AST
- the node already has a parent
Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.
|
|