public abstract class Comment extends ASTNode
LineComment),
block comments (BlockComment), and
doc comments (JSdoc).
Comment:
LineComment
BlockComment
JSdoc
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.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 |
|---|---|
ASTNode |
getAlternateRoot()
Returns the root AST node that this comment occurs
within, or
null if none (or not recorded). |
boolean |
isBlockComment()
Returns whether this comment is a block comment
(
BlockComment). |
boolean |
isDocComment()
Returns whether this comment is a doc comment
(
JSdoc). |
boolean |
isLineComment()
Returns whether this comment is a line comment
(
LineComment). |
void |
setAlternateRoot(ASTNode root)
Returns the root AST node that this comment occurs
within, or
null if none (or not recorded). |
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, toStringpublic final boolean isBlockComment()
BlockComment).true if this is a block comment, and
false otherwisepublic final boolean isLineComment()
LineComment).true if this is a line comment, and
false otherwisepublic final boolean isDocComment()
JSdoc).true if this is a doc comment, and
false otherwisepublic final ASTNode getAlternateRoot()
null if none (or not recorded).
Typically, the comment nodes created while parsing a compilation
unit are not considered descendents of the normal AST
root, namely an JavaScriptUnit. Instead, these
comment nodes exist outside the normal AST and each is
a root in its own right. This optional property provides
a well-known way to navigate from the comment to the
javaScript unit in such cases. Note that the alternate root
property is not one of the comment node's children. It is simply a
reference to a node.
null
if nonesetAlternateRoot(ASTNode)public final void setAlternateRoot(ASTNode root)
null if none (or not recorded).
root - the alternate root node, or null
if nonegetAlternateRoot()Copyright (c) IBM Corp. and others 2000, 2016. All Rights Reserved.