Eclipse JDT
2.0

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.

 ImportDeclaration:
    import Name [ . * ] ;
 

Since:
2.0

Field Summary
 
Fields inherited from class org.eclipse.jdt.core.dom.ASTNode
ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, 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, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, JAVADOC, LABELED_STATEMENT, MALFORMED, METHOD_DECLARATION, METHOD_INVOCATION, NULL_LITERAL, NUMBER_LITERAL, PACKAGE_DECLARATION, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, QUALIFIED_NAME, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT
 
Method Summary
 Name getName()
          Returns the name imported by this declaration.
 int getNodeType()
          Returns an integer value identifying the type of this concrete AST node.
 boolean isOnDemand()
          Returns whether this import declaration is an on-demand or a single-type import.
 IBinding resolveBinding()
          Resolves and returns the binding for the package or type imported by 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.
 boolean subtreeMatch(ASTMatcher matcher, Object other)
          Returns whether the subtree rooted at the given node matches the given other object as decided by the given matcher.
 
Methods inherited from class org.eclipse.jdt.core.dom.ASTNode
accept, copySubtree, copySubtrees, equals, getAST, getFlags, getLength, getParent, getProperty, getRoot, getStartPosition, properties, setFlags, setProperty, setSourceRange, subtreeBytes, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getNodeType

public int getNodeType()
Description copied from class: ASTNode
Returns an integer value identifying the type of this concrete AST node. The values are small positive integers, suitable for use in switch statements.

For each concrete node type there is a unique node type constant (name and value). The unique node type constant for a concrete node type such as CastExpression is ASTNode.CAST_EXPRESSION.

Specified by:
getNodeType in class ASTNode
Returns:
one of the node type constants

subtreeMatch

public boolean subtreeMatch(ASTMatcher matcher,
                            Object other)
Description copied from class: ASTNode
Returns whether the subtree rooted at the given node matches the given other object as decided by the given matcher.

Specified by:
subtreeMatch in class ASTNode
Parameters:
matcher - the matcher
other - the other object, or null
Returns:
true if the subtree matches, or false if they do not match

getName

public Name getName()
Returns the name imported by this declaration.

For an on-demand import, this is the name of a package. For a single-type import, this is the qualified name 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 an on-demand import, this is the name of a package. For a single-type import, this is the qualified name 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

resolveBinding

public IBinding resolveBinding()
Resolves and returns the binding for the package or type imported by this import declaration.

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

Returns:
the package binding (for on-demand imports) or type binding (for single-type imports), or null if the binding cannot be resolved

Eclipse JDT
2.0

Copyright (c) IBM Corp. and others 2000, 2002. All Rights Reserved.