public class AstRoot extends ScriptNode
Comment nodes associated with the script
as a whole. Node type is Token.SCRIPT.
Note that the tree itself does not store errors. To collect the parse errors
and warnings, pass an ErrorReporter to the
Parser via the
CompilerEnvirons.
AstNode.DebugPrintVisitor, AstNode.PositionComparatorNode.NodeIteratorparentScope, symbolTable, topinlineComment, length, parent, positionARROW_FUNCTION_PROP, ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, DIRECTCALL_PROP, END_DROPS_OFF, END_RETURNS, END_RETURNS_VALUE, END_UNREACHED, END_YIELDS, EXPRESSION_CLOSURE_PROP, first, FUNCTION_PROP, GENERATOR_END_PROP, INCRDECR_PROP, ISNUMBER_PROP, JSDOC_PROP, LABEL_ID_PROP, last, LAST_PROP, LEFT, lineno, LOCAL_BLOCK_PROP, LOCAL_PROP, MEMBER_TYPE_PROP, NAME_PROP, next, NON_SPECIALCALL, OBJECT_IDS_PROP, PARENTHESIZED_PROP, POST_FLAG, PROPERTY_FLAG, propListHead, REGEXP_PROP, RIGHT, SHORTHAND_PROPERTY_NAME, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, TEMPLATE_LITERAL_PROP, type, VARIABLE_PROP| Modifier and Type | Method and Description |
|---|---|
void |
addComment(Comment comment)
Add a comment to the comment set.
|
void |
checkParentLinks()
Debugging function to check that the parser has set the parent
link for every node in the tree.
|
java.lang.String |
debugPrint()
A debug-printer that includes comments (at the end).
|
java.util.SortedSet<Comment> |
getComments()
Returns comment set
|
void |
setComments(java.util.SortedSet<Comment> comments)
Sets comment list, and updates the parent of each entry to point
to this node.
|
java.lang.String |
toSource(int depth)
Emits source code for this node.
|
void |
visitAll(NodeVisitor visitor)
Visits the AST nodes, then the comment nodes.
|
void |
visitComments(NodeVisitor visitor)
Visits the comment nodes in the order they appear in the source code.
|
addFunction, addRegExp, addTemplateLiteral, flattenSymbolTable, getBaseLineno, getCompilerData, getEncodedSource, getEncodedSourceEnd, getEncodedSourceStart, getEndLineno, getFunctionCount, getFunctionNode, getFunctions, getIndexForNameNode, getNextTempName, getParamAndVarConst, getParamAndVarCount, getParamAndVarNames, getParamCount, getParamOrVarName, getRegexpCount, getRegexpFlags, getRegexpString, getSourceName, getSymbols, getTemplateLiteralCount, getTemplateLiteralStrings, isInStrictMode, setBaseLineno, setCompilerData, setEncodedSource, setEncodedSourceBounds, setEncodedSourceEnd, setEncodedSourceStart, setEndLineno, setInStrictMode, setSourceName, setSymbols, visitaddChildScope, clearParentScope, getChildScopes, getDefiningScope, getParentScope, getStatements, getSymbol, getSymbolTable, getTop, joinScopes, putSymbol, replaceWith, setParentScope, setSymbolTable, setTop, splitScopegetContinue, getDefault, getFinally, getJumpStatement, getLoop, setContinue, setDefault, setFinally, setJumpStatement, setLoopaddChild, assertNotNull, codeBug, compareTo, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getInlineComment, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setInlineComment, setLength, setParent, setPosition, setRelative, shortName, toSourceaddChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, getBigInt, getChildBefore, getDouble, getExistingIntProp, getFirstChild, getIntProp, getJsDoc, getJsDocNode, getLastChild, getLastSibling, getNext, getProp, getScope, getString, getType, hasChildren, hasConsistentReturnUsage, iterator, labelId, labelId, newNumber, newString, newString, newTarget, putIntProp, putProp, removeChild, removeChildren, removeProp, replaceChild, replaceChildAfter, resetTargets, setBigInt, setDouble, setJsDocNode, setLineno, setScope, setString, setType, toString, toStringTreepublic java.util.SortedSet<Comment> getComments()
null.public void setComments(java.util.SortedSet<Comment> comments)
comments - comment list. can be null.public void addComment(Comment comment)
comment - the comment node.java.lang.IllegalArgumentException - if comment is nullpublic void visitComments(NodeVisitor visitor)
ScriptNode.visit(org.mozilla.javascript.ast.NodeVisitor) function - you must
use this function to visit them.visitor - the callback object. It is passed each comment node.
The return value is ignored.public void visitAll(NodeVisitor visitor)
ScriptNode.visit(org.mozilla.javascript.ast.NodeVisitor), then
visitComments(org.mozilla.javascript.ast.NodeVisitor). The return value
is ignored while visiting comment nodes.visitor - the callback object.public java.lang.String toSource(int depth)
AstNode
Note: if the parser was in error-recovery mode, some AST nodes may have
null children that are expected to be non-null
when no errors are present. In this situation, the behavior of the
toSource method is undefined: toSource
implementations may assume that the AST node is error-free, since it is
intended to be invoked only at runtime after a successful parse.
public java.lang.String debugPrint()
debugPrint in class AstNodepublic void checkParentLinks()
java.lang.IllegalStateException - if a parent link is missing