|
org.eclipse.jdt.core.dom
Class ImportDeclaration
java.lang.Object
org.eclipse.jdt.core.dom.ASTNode
org.eclipse.jdt.core.dom.ImportDeclaration
-
public class ImportDeclaration
- extends
ASTNode
Import declaration AST node type.
For JLS2:
ImportDeclaration:
import Name [ . * ] ;
For JLS3, static was added:
ImportDeclaration:
import [ static ] Name [ . * ] ;
-
Since:
- 2.0
-
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
|
Name
|
getName
()
Returns the name imported by this declaration. |
boolean
|
isOnDemand
()
Returns whether this import declaration is an on-demand or a
single-type import. |
boolean
|
isStatic
()
Returns whether this import declaration is a static import (added in JLS3 API). |
static
List
|
propertyDescriptors
(int apiLevel)
Returns a list of structural property descriptors for this node type. |
IBinding
|
resolveBinding
()
Resolves and returns the binding for the package, type, field, or
method named in this import declaration. |
void
|
setName
(
Name name)
Sets the name of this import declaration to the given name. |
void
|
setOnDemand
(boolean onDemand)
Sets whether this import declaration is an on-demand or a
single-type import. |
void
|
setStatic
(boolean isStatic)
Sets whether this import declaration is a static import (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
|
NAME_PROPERTY
public static final
ChildPropertyDescriptor NAME_PROPERTY
- The "name" structural property of this node type.
-
Since:
- 3.0
ON_DEMAND_PROPERTY
public static final
SimplePropertyDescriptor ON_DEMAND_PROPERTY
- The "onDemand" structural property of this node type.
-
Since:
- 3.0
STATIC_PROPERTY
public static final
SimplePropertyDescriptor STATIC_PROPERTY
- The "static" structural property of this node type (added in JLS3 API).
-
Since:
- 3.1
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
getName
public
Name getName()
- Returns the name imported by this declaration.
For a regular on-demand import, this is the name of a package.
For a static on-demand import, this is the qualified name of
a type. For a regular single-type import, this is the qualified name
of a type. For a static single-type import, this is the qualified name
of a static member of a type.
-
-
Returns:
- the imported name node
setName
public void setName(
Name name)
- Sets the name of this import declaration to the given name.
For a regular on-demand import, this is the name of a package.
For a static on-demand import, this is the qualified name of
a type. For a regular single-type import, this is the qualified name
of a type. For a static single-type import, this is the qualified name
of a static member of a type.
-
-
Parameters:
-
name - the new import name
-
Throws:
-
IllegalArgumentException
- if:
- the node belongs to a different AST
- the node already has a parent
isOnDemand
public boolean isOnDemand()
- Returns whether this import declaration is an on-demand or a
single-type import.
-
-
Returns:
-
true if this is an on-demand import,
and false if this is a single type import
setOnDemand
public void setOnDemand(boolean onDemand)
- Sets whether this import declaration is an on-demand or a
single-type import.
-
-
Parameters:
-
onDemand - true if this is an on-demand import,
and false if this is a single type import
isStatic
public boolean isStatic()
- Returns whether this import declaration is a static import (added in JLS3 API).
-
-
Returns:
-
true if this is a static import,
and false if this is a regular import
-
Throws:
-
UnsupportedOperationException
- if this operation is used in
a JLS2 AST -
Since:
- 3.1
setStatic
public void setStatic(boolean isStatic)
- Sets whether this import declaration is a static import (added in JLS3 API).
-
-
Parameters:
-
isStatic - true if this is a static import,
and false if this is a regular import
-
Throws:
-
UnsupportedOperationException
- if this operation is used in
a JLS2 AST -
Since:
- 3.1
resolveBinding
public
IBinding resolveBinding()
- Resolves and returns the binding for the package, type, field, or
method named in this import declaration.
The name specified in a non-static single-type import can resolve
to a type (only). The name specified in a non-static on-demand
import can itself resolve to either a package or a type.
For static imports (introduced in JLS3), the name specified in a
static on-demand import can itself resolve to a type (only).
The name specified in a static single import can resolve to a
type, field, or method; in cases where the name could be resolved
to more than one element with that name (for example, two
methods both named "max", or a method and a field), this method
returns one of the plausible bindings.
Note that bindings are generally unavailable unless requested when the
AST is being built.
-
-
Returns:
- a package, type, field, or method binding, or
null
if the binding cannot be resolved
Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.
|
|