|
Eclipse JDT 2.0 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.eclipse.jdt.core.dom.ASTNode | +--org.eclipse.jdt.core.dom.BodyDeclaration | +--org.eclipse.jdt.core.dom.TypeDeclaration
Type declaration AST node type. A type declaration is the union of a class declaration and an interface declaration.
TypeDeclaration: ClassDeclaration InterfaceDeclaration ClassDeclaration: [ Javadoc ] { Modifier } class Identifier [ extends Type] [ implements Type { , Type } ] { { ClassBodyDeclaration | ; } } InterfaceDeclaration: [ Javadoc ] { Modifier } interface Identifier [ extends Type] { { InterfaceBodyDeclaration | ; } }
When a Javadoc comment is present, the source range begins with the first character of the "/**" comment delimiter. When there is no Javadoc comment, the source range begins with the first character of the first modifier keyword (if modifiers), or the first character of the "class" or "interface": keyword (if no modifiers). The source range extends through the last character of the ";" token (if no body), or the last character of the "}" token following the body declarations.
Field Summary |
Method Summary | |
List |
bodyDeclarations()
Returns the live ordered list of body declarations of this type declaration. |
FieldDeclaration[] |
getFields()
Returns the ordered list of field declarations of this type declaration. |
MethodDeclaration[] |
getMethods()
Returns the ordered list of method declarations of this type declaration. |
int |
getModifiers()
Returns the modifiers explicitly specified on this declaration. |
SimpleName |
getName()
Returns the name of the type declared in this type declaration. |
int |
getNodeType()
Returns an integer value identifying the type of this concrete AST node. |
Name |
getSuperclass()
Returns the name of the superclass declared in this type declaration, or null if there is none. |
TypeDeclaration[] |
getTypes()
Returns the ordered list of member type declarations of this type declaration. |
boolean |
isInterface()
Returns whether this type declaration declares a class or an interface. |
boolean |
isLocalTypeDeclaration()
Returns whether this type declaration is a local type. |
boolean |
isMemberTypeDeclaration()
Returns whether this type declaration is a type member. |
boolean |
isPackageMemberTypeDeclaration()
Returns whether this type declaration is a package member (that is, a top-level type). |
ITypeBinding |
resolveBinding()
Resolves and returns the binding for the class or interface declared in this type declaration. |
void |
setInterface(boolean isInterface)
Sets whether this type declaration declares a class or an interface. |
void |
setModifiers(int modifiers)
Sets the modifiers explicitly specified on this declaration. |
void |
setName(SimpleName typeName)
Sets the name of the type declared in this type declaration to the given name. |
void |
setSuperclass(Name superclassName)
Sets or clears the name of the superclass declared in this type declaration. |
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. |
List |
superInterfaces()
Returns the live ordered list of names of superinterfaces of this type declaration. |
Methods inherited from class org.eclipse.jdt.core.dom.BodyDeclaration |
getJavadoc, setJavadoc |
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 |
public int getNodeType()
ASTNode
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
.
getNodeType
in class ASTNode
public boolean subtreeMatch(ASTMatcher matcher, Object other)
ASTNode
subtreeMatch
in class ASTNode
matcher
- the matcherother
- the other object, or null
true
if the subtree matches, or
false
if they do not matchpublic boolean isInterface()
true
if this is an interface declaration,
and false
if this is a class declarationpublic void setInterface(boolean isInterface)
isInterface
- true
if this is an interface
declaration, and false
if this is a class
declarationpublic int getModifiers()
Note that deprecated is not included.
Modifier
public void setModifiers(int modifiers)
The following modifiers are valid for types: public, private, protected, static, final, abstract, and strictfp.
Only a subset of modifiers are legal in any given situation. Note that deprecated is not included.
modifiers
- the bit-wise or of Modifier constants
IllegalArgumentException
- if the modifiers are illegalModifier
public SimpleName getName()
public void setName(SimpleName typeName)
typeName
- the new type name
IllegalArgumentException
- if:
public Name getSuperclass()
null
if there is none.
Note that this child is not relevant for interface declarations (although it does still figure in subtree equality comparisons).
null
if
there is nonepublic void setSuperclass(Name superclassName)
Note that this child is not relevant for interface declarations (although it does still figure in subtree equality comparisons).
superclassName
- the superclass name node, or null
if
there is none
IllegalArgumentException
- if:
public List superInterfaces()
Name
)public List bodyDeclarations()
BodyDeclaration
)public FieldDeclaration[] getFields()
This convenience method returns this node's body declarations
with non-fields filtered out. Unlike bodyDeclarations
,
this method does not return a live result.
public MethodDeclaration[] getMethods()
This convenience method returns this node's body declarations
with non-methods filtered out. Unlike bodyDeclarations
,
this method does not return a live result.
public TypeDeclaration[] getTypes()
This convenience method returns this node's body declarations
with non-types filtered out. Unlike bodyDeclarations
,
this method does not return a live result.
public boolean isPackageMemberTypeDeclaration()
Note that this is a convenience method that simply checks whether this node's parent is a compilation unit node.
true
if this type declaration is a child of
a compilation unit node, and false
otherwisepublic boolean isMemberTypeDeclaration()
Note that this is a convenience method that simply checks whether this node's parent is a type declaration node or an anonymous class declaration.
true
if this type declaration is a child of
a type declaration node or a class instance creation node, and
false
otherwisepublic boolean isLocalTypeDeclaration()
Note that this is a convenience method that simply checks whether this node's parent is a type declaration statement node.
true
if this type declaration is a child of
a type declaration statement node, and false
otherwisepublic ITypeBinding resolveBinding()
Note that bindings are generally unavailable unless requested when the AST is being built.
null
if the binding cannot be
resolved
|
Eclipse JDT 2.0 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |