public class ScriptNode extends Scope
AstRoot and FunctionNode nodes, which need to collect much of the
same information.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, FIRST_PROP, 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, NUMBER_OF_SPREAD, OBJECT_IDS_PROP, OBJECT_LITERAL_DESTRUCTURING, OPTIONAL_CHAINING, PARENTHESIZED_PROP, POST_FLAG, PROPERTY_FLAG, propListHead, REGEXP_PROP, RIGHT, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, SUPER_PROPERTY_ACCESS, TARGETBLOCK_PROP, TEMPLATE_LITERAL_PROP, TRAILING_COMMA, type, VARIABLE_PROP| Constructor and Description |
|---|
ScriptNode() |
ScriptNode(int pos) |
| Modifier and Type | Method and Description |
|---|---|
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 |
addTemplateLiteral(TemplateLiteral templateLiteral)
Called by IRFactory to add a Template Literal to the templateLiterals table.
|
void |
flattenSymbolTable(boolean flattenAllTables)
Assign every symbol a unique integer index.
|
int |
getBaseLineno() |
Object |
getCompilerData() |
List<Object> |
getDefaultParams() |
List<Node[]> |
getDestructuringRvalues() |
int |
getEndLineno() |
int |
getFunctionCount() |
FunctionNode |
getFunctionNode(int i) |
List<FunctionNode> |
getFunctions() |
int |
getIndexForNameNode(Node nameNode) |
String |
getNextTempName() |
boolean[] |
getParamAndVarConst() |
int |
getParamAndVarCount() |
String[] |
getParamAndVarNames() |
int |
getParamCount() |
String |
getParamOrVarName(int index) |
String |
getRawSource() |
int |
getRawSourceEnd()
Returns the end offset of the raw source.
|
int |
getRawSourceStart()
Returns the start offset of the raw source.
|
int |
getRegexpCount() |
String |
getRegexpFlags(int index) |
String |
getRegexpString(int index) |
String |
getSourceName()
Returns the URI, path or descriptive text indicating the origin of this script's source code.
|
List<Symbol> |
getSymbols() |
int |
getTemplateLiteralCount() |
List<TemplateCharacters> |
getTemplateLiteralStrings(int index) |
boolean |
hasRestParameter() |
boolean |
isInStrictMode() |
boolean |
isMethodDefinition() |
boolean |
isShorthand() |
void |
putDestructuringRvalues(Node left,
Node right) |
void |
setBaseLineno(int lineno)
Sets base (starting) line number for this script or function.
|
void |
setCompilerData(Object data) |
void |
setEndLineno(int lineno) |
void |
setInStrictMode(boolean inStrictMode) |
void |
setMethodDefinition(boolean methodDefinition) |
void |
setRawSource(String rawSource)
Used by the code generator.
|
void |
setRawSourceBounds(int start,
int end)
Used by code generator.
|
void |
setRawSourceEnd(int end)
Used by code generator.
|
void |
setRawSourceStart(int start)
Used by code generator.
|
void |
setSourceName(String sourceName)
Sets the URI, path or descriptive text indicating the origin of this script's source code.
|
void |
setSymbols(List<Symbol> symbols) |
void |
visit(NodeVisitor v)
Jumps are only used directly during code generation, and do not support this interface.
|
addChildScope, clearParentScope, getChildScopes, getDefiningScope, getParentScope, getStatements, getSymbol, getSymbolTable, getTop, joinScopes, putSymbol, replaceWith, setParentScope, setSymbolTable, setTop, splitScope, toSourcegetContinue, getDefault, getFinally, getJumpStatement, getLoop, setContinue, setDefault, setFinally, setJumpStatement, setLoopaddChild, assertNotNull, codeBug, compareTo, debugPrint, 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, getColumn, 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, setLineColumnNumber, setScope, setString, setType, toString, toStringTreeclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitforEach, spliteratorpublic String getSourceName()
public void setSourceName(String sourceName)
public int getRawSourceStart()
getRawSource() returns
non-null.public void setRawSourceStart(int start)
getRawSource()public int getRawSourceEnd()
getRawSource() returns
non-null.public void setRawSourceEnd(int end)
getRawSource()public void setRawSourceBounds(int start,
int end)
getRawSource()public void setRawSource(String rawSource)
getRawSource()public String getRawSource()
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 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 String getRegexpString(int index)
public String getRegexpFlags(int index)
public void addRegExp(RegExpLiteral re)
public int getTemplateLiteralCount()
public List<TemplateCharacters> getTemplateLiteralStrings(int index)
public void addTemplateLiteral(TemplateLiteral templateLiteral)
public int getIndexForNameNode(Node nameNode)
public String getParamOrVarName(int index)
public int getParamCount()
public int getParamAndVarCount()
public String[] getParamAndVarNames()
public boolean[] getParamAndVarConst()
public boolean hasRestParameter()
public boolean isShorthand()
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 Object getCompilerData()
public void setCompilerData(Object data)
public String getNextTempName()
public void setInStrictMode(boolean inStrictMode)
public boolean isInStrictMode()
public boolean isMethodDefinition()
public void setMethodDefinition(boolean methodDefinition)
public void visit(NodeVisitor v)
JumpCopyright © 2025 HtmlUnit. All rights reserved.