public class PackageDeclaration extends ASTNode
PackageDeclaration: package Name ;For JLS3, annotations and doc comment were added:
PackageDeclaration: [ jsdoc ] { Annotation } package Name ;Note that the standard AST parser only recognizes a jsdoc comment immediately preceding the package declaration when it occurs in the special
package-info.js
javaScript unit (JLS3 7.4.1.1).
The jsdoc comment in that file contains the package description.
Note: This Class only applies to ECMAScript 4 which is not yet supported
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.Modifier and Type | Field and Description |
---|---|
static ChildPropertyDescriptor |
JAVADOC_PROPERTY
The "javadoc" structural property of this node type.
|
static ChildPropertyDescriptor |
NAME_PROPERTY
The "name" structural property of this node type.
|
ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_NAME, ARRAY_TYPE, ARROW_FUNCTION_EXPRESSION, ASSIGNMENT, ASSIGNMENT_NAME, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, DEBUGGER_STATEMENT, DO_STATEMENT, EMPTY_EXPRESSION, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, EXPORT_DECLARATION, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_IN_STATEMENT, FOR_OF_STATEMENT, FOR_STATEMENT, FUNCTION_DECLARATION, FUNCTION_DECLARATION_STATEMENT, 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, META_PROPERTY, MODIFIER, MODULE_SPECIFIER, NULL_LITERAL, NUMBER_LITERAL, OBJECT_LITERAL, OBJECT_LITERAL_FIELD, OBJECT_NAME, ORIGINAL, PACKAGE_DECLARATION, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RECOVERED, REGULAR_EXPRESSION_LITERAL, REST_ELEMENT_NAME, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_VARIABLE_DECLARATION, SPREAD_ELEMENT, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, TAG_ELEMENT, TEMPLATE_ELEMENT, TEMPLATE_LITERAL, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_EXPRESSION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, UNDEFINED_LITERAL, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WITH_STATEMENT, YIELD_EXPRESSION
Modifier and Type | Method and Description |
---|---|
JSdoc |
getJavadoc()
Returns the doc comment node.
|
Name |
getName()
Returns the package name of this package declaration.
|
static java.util.List |
propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type.
|
IPackageBinding |
resolveBinding()
Resolves and returns the binding for the package declared in this package
declaration.
|
void |
setJavadoc(JSdoc docComment)
Sets or clears the doc comment node.
|
void |
setName(Name name)
Sets the package name of this package declaration to the given name.
|
accept, copySubtree, copySubtrees, delete, equals, getAST, getBodyChild, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, hashCode, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString
public static final ChildPropertyDescriptor JAVADOC_PROPERTY
public static final ChildPropertyDescriptor NAME_PROPERTY
public static java.util.List propertyDescriptors(int apiLevel)
apiLevel
- the API level; one of the
AST.JLS*
constantsStructuralPropertyDescriptor
)public JSdoc getJavadoc()
null
if nonejava.lang.UnsupportedOperationException
- if this operation is used in
a JLS2 ASTpublic void setJavadoc(JSdoc docComment)
docComment
- the doc comment node, or null
if nonejava.lang.IllegalArgumentException
- if the doc comment string is invalidjava.lang.UnsupportedOperationException
- if this operation is used in
a JLS2 ASTpublic Name getName()
public void setName(Name name)
name
- the new package namejava.lang.IllegalArgumentException
- if`:
public IPackageBinding resolveBinding()
Note that bindings are generally unavailable unless requested when the AST is being built.
null
if the binding cannot be
resolvedCopyright (c) IBM Corp. and others 2000, 2010. All Rights Reserved.