|
|||||||||
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
public class ScriptNode
Base type for AstRoot
and FunctionNode
nodes, which need to
collect much of the same information.
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 | |
---|---|
ScriptNode()
|
|
ScriptNode(int pos)
|
Method Summary | |
---|---|
int |
addFunction(FunctionNode fnNode)
Adds a FunctionNode to the functions table for codegen. |
void |
addRegExp(RegExpLiteral re)
Called by IRFactory to add a RegExp to the regexp table. |
void |
flattenSymbolTable(boolean flattenAllTables)
Assign every symbol a unique integer index. |
int |
getBaseLineno()
|
java.lang.Object |
getCompilerData()
|
java.lang.String |
getEncodedSource()
Returns a canonical version of the source for this script or function, for use in implementing the Object.toSource method of
JavaScript objects. |
int |
getEncodedSourceEnd()
Returns the end offset of the encoded source. |
int |
getEncodedSourceStart()
Returns the start offset of the encoded source. |
int |
getEndLineno()
|
int |
getFunctionCount()
|
FunctionNode |
getFunctionNode(int i)
|
java.util.List<FunctionNode> |
getFunctions()
|
int |
getIndexForNameNode(Node nameNode)
|
java.lang.String |
getNextTempName()
|
boolean[] |
getParamAndVarConst()
|
int |
getParamAndVarCount()
|
java.lang.String[] |
getParamAndVarNames()
|
int |
getParamCount()
|
java.lang.String |
getParamOrVarName(int index)
|
int |
getRegexpCount()
|
java.lang.String |
getRegexpFlags(int index)
|
java.lang.String |
getRegexpString(int index)
|
java.lang.String |
getSourceName()
Returns the URI, path or descriptive text indicating the origin of this script's source code. |
java.util.List<Symbol> |
getSymbols()
|
void |
setBaseLineno(int lineno)
Sets base (starting) line number for this script or function. |
void |
setCompilerData(java.lang.Object data)
|
void |
setEncodedSource(java.lang.String encodedSource)
Used by the code generator. |
void |
setEncodedSourceBounds(int start,
int end)
Used by code generator. |
void |
setEncodedSourceEnd(int end)
Used by code generator. |
void |
setEncodedSourceStart(int start)
Used by code generator. |
void |
setEndLineno(int lineno)
|
void |
setSourceName(java.lang.String sourceName)
Sets the URI, path or descriptive text indicating the origin of this script's source code. |
void |
setSymbols(java.util.List<Symbol> symbols)
|
void |
visit(NodeVisitor v)
Jumps are only used directly during code generation, and do not support this interface. |
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, toSource |
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, debugPrint, 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 ScriptNode()
public ScriptNode(int pos)
Method Detail |
---|
public java.lang.String getSourceName()
public void setSourceName(java.lang.String sourceName)
public int getEncodedSourceStart()
getEncodedSource()
returns non-null
.
public void setEncodedSourceStart(int start)
getEncodedSource()
public int getEncodedSourceEnd()
getEncodedSource()
returns non-null
.
public void setEncodedSourceEnd(int end)
getEncodedSource()
public void setEncodedSourceBounds(int start, int end)
getEncodedSource()
public void setEncodedSource(java.lang.String encodedSource)
getEncodedSource()
public java.lang.String getEncodedSource()
Object.toSource
method of
JavaScript objects. This source encoding is only recorded during code
generation. It must be passed back to
Decompiler.decompile(java.lang.String, int, org.mozilla.javascript.UintMap)
to construct the
human-readable source string.
Given a parsed AST, you can always convert it to source code using the
AstNode.toSource(int)
method, although it's not guaranteed to produce
exactly the same results as Object.toSource
with respect to
formatting, parenthesization and other details.
null
if it was not recorded.public int getBaseLineno()
public void setBaseLineno(int lineno)
public int getEndLineno()
public void setEndLineno(int lineno)
public int getFunctionCount()
public FunctionNode getFunctionNode(int i)
public java.util.List<FunctionNode> getFunctions()
public int addFunction(FunctionNode fnNode)
FunctionNode
to the functions table for codegen.
Does not set the parent of the node.
public int getRegexpCount()
public java.lang.String getRegexpString(int index)
public java.lang.String getRegexpFlags(int index)
public void addRegExp(RegExpLiteral re)
public int getIndexForNameNode(Node nameNode)
public java.lang.String getParamOrVarName(int index)
public int getParamCount()
public int getParamAndVarCount()
public java.lang.String[] getParamAndVarNames()
public boolean[] getParamAndVarConst()
public java.util.List<Symbol> getSymbols()
public void setSymbols(java.util.List<Symbol> symbols)
public void flattenSymbolTable(boolean flattenAllTables)
flattenAllTables
- if true, flatten all symbol tables,
included nested block scope symbol tables. If false, just flatten the
script's or function's symbol table.public java.lang.Object getCompilerData()
public void setCompilerData(java.lang.Object data)
public java.lang.String getNextTempName()
public void visit(NodeVisitor v)
Jump
visit
in class Scope
v
- the object to call with this node and its children
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |