org.eclipse.wst.jsdt.core.dom
Class Comment

java.lang.Object
  extended by org.eclipse.wst.jsdt.core.dom.ASTNode
      extended by org.eclipse.wst.jsdt.core.dom.Comment
Direct Known Subclasses:
BlockComment, JSdoc, LineComment

public abstract class Comment
extends ASTNode

Abstract base class for all AST nodes that represent comments. There are exactly three kinds of comment: line comments (LineComment), block comments (BlockComment), and doc comments (JSdoc).

 Comment:
     LineComment
     BlockComment
     Javadoc
 

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.


Field Summary
 
Fields inherited from class org.eclipse.wst.jsdt.core.dom.ASTNode
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, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, DO_STATEMENT, EMPTY_EXPRESSION, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_IN_STATEMENT, FOR_STATEMENT, FUNCTION_DECLARATION, 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, MODIFIER, NULL_LITERAL, NUMBER_LITERAL, OBJECT_LITERAL, OBJECT_LITERAL_FIELD, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RECOVERED, REGULAR_EXPRESSION_LITERAL, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, TAG_ELEMENT, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_PARAMETER, UNDEFINED_LITERAL, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, WITH_STATEMENT
 
Method Summary
 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).
 
Methods inherited from class org.eclipse.wst.jsdt.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
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

isBlockComment

public final boolean isBlockComment()
Returns whether this comment is a block comment (BlockComment).

Returns:
true if this is a block comment, and false otherwise

isLineComment

public final boolean isLineComment()
Returns whether this comment is a line comment (LineComment).

Returns:
true if this is a line comment, and false otherwise

isDocComment

public final boolean isDocComment()
Returns whether this comment is a doc comment (JSdoc).

Returns:
true if this is a doc comment, and false otherwise

getAlternateRoot

public final ASTNode getAlternateRoot()
Returns the root AST node that this comment occurs within, or 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.

Returns:
the alternate root node, or null if none
See Also:
setAlternateRoot(ASTNode)

setAlternateRoot

public final void setAlternateRoot(ASTNode root)
Returns the root AST node that this comment occurs within, or null if none (or not recorded).

Parameters:
root - the alternate root node, or null if none
See Also:
getAlternateRoot()