|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.mozilla.javascript.Node org.mozilla.javascript.ast.AstNode org.mozilla.javascript.ast.Jump org.mozilla.javascript.ast.Scope org.mozilla.javascript.ast.ScriptNode org.mozilla.javascript.ast.AstRoot
public class AstRoot
Node for the root of a parse tree. It contains the statements and functions
in the script, and a list of 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
.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.mozilla.javascript.ast.AstNode |
---|
AstNode.DebugPrintVisitor, AstNode.PositionComparator |
Nested classes/interfaces inherited from class org.mozilla.javascript.Node |
---|
Node.NodeIterator |
Field Summary |
---|
Fields inherited from class org.mozilla.javascript.ast.Scope |
---|
parentScope, symbolTable, top |
Fields inherited from class org.mozilla.javascript.ast.Jump |
---|
target |
Fields inherited from class org.mozilla.javascript.ast.AstNode |
---|
length, parent, position |
Constructor Summary | |
---|---|
AstRoot()
|
|
AstRoot(int pos)
|
Method Summary | |
---|---|
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 |
boolean |
isInStrictMode()
|
void |
setComments(java.util.SortedSet<Comment> comments)
Sets comment list, and updates the parent of each entry to point to this node. |
void |
setInStrictMode(boolean inStrictMode)
|
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. |
Methods inherited from class org.mozilla.javascript.ast.Scope |
---|
addChildScope, clearParentScope, getChildScopes, getDefiningScope, getParentScope, getStatements, getSymbol, getSymbolTable, getTop, joinScopes, putSymbol, replaceWith, setParentScope, setSymbolTable, setTop, splitScope |
Methods inherited from class org.mozilla.javascript.ast.Jump |
---|
getContinue, getDefault, getFinally, getJumpStatement, getLoop, setContinue, setDefault, setFinally, setJumpStatement, setLoop |
Methods inherited from class org.mozilla.javascript.ast.AstNode |
---|
addChild, assertNotNull, codeBug, compareTo, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setLength, setParent, setPosition, setRelative, shortName, toSource |
Methods inherited from class org.mozilla.javascript.Node |
---|
addChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, 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, setDouble, setJsDocNode, setLineno, setScope, setString, setType, toString, toStringTree |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public AstRoot()
public AstRoot(int pos)
Method Detail |
---|
public 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 null
public void setInStrictMode(boolean inStrictMode)
public boolean isInStrictMode()
public 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.
toSource
in class Scope
depth
- the current recursion depth, typically beginning at 0
when called on the root node.public java.lang.String debugPrint()
debugPrint
in class AstNode
public void checkParentLinks()
java.lang.IllegalStateException
- if a parent link is missing
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |