Class DeclareGlobalLexicalVariableNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.access.DeclareGlobalNode
com.oracle.truffle.js.nodes.access.DeclareGlobalLexicalVariableNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface,Cloneable
Instantiates a global lexical (let or const) declaration.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.Children -
Field Summary
Fields inherited from class com.oracle.truffle.js.nodes.access.DeclareGlobalNode
errorProfile, varName -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedDeclareGlobalLexicalVariableNode(com.oracle.truffle.api.strings.TruffleString varName, boolean isConst) -
Method Summary
Modifier and TypeMethodDescriptionprotected DeclareGlobalNodecopyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) create(com.oracle.truffle.api.strings.TruffleString varName, boolean isConst) protected voiddoCached(JSDynamicObject globalScope, JSContext context, PropertySetNode cache) protected voiddoUncached(JSDynamicObject globalScope, JSContext context) final voidexecuteVoid(com.oracle.truffle.api.frame.VirtualFrame frame, JSContext context, JSRealm realm) protected abstract voidexecuteVoid(JSDynamicObject globalScope, JSContext context) booleanprotected final PropertySetNodemakeDefineOwnPropertyCache(JSContext context) voidMethods inherited from class com.oracle.truffle.js.nodes.access.DeclareGlobalNode
isGlobalFunctionDeclarationMethods inherited from class com.oracle.truffle.js.nodes.JavaScriptBaseNode
copy, getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, onReplace, reportLoopCount, reportLoopCountMethods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, reportReplace, toString
-
Constructor Details
-
DeclareGlobalLexicalVariableNode
protected DeclareGlobalLexicalVariableNode(com.oracle.truffle.api.strings.TruffleString varName, boolean isConst)
-
-
Method Details
-
create
public static DeclareGlobalLexicalVariableNode create(com.oracle.truffle.api.strings.TruffleString varName, boolean isConst) -
verify
- Overrides:
verifyin classDeclareGlobalNode
-
executeVoid
public final void executeVoid(com.oracle.truffle.api.frame.VirtualFrame frame, JSContext context, JSRealm realm) - Specified by:
executeVoidin classDeclareGlobalNode
-
executeVoid
-
doCached
-
doUncached
-
makeDefineOwnPropertyCache
-
isLexicallyDeclared
public boolean isLexicallyDeclared()- Overrides:
isLexicallyDeclaredin classDeclareGlobalNode
-
copyUninitialized
protected DeclareGlobalNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) - Specified by:
copyUninitializedin classDeclareGlobalNode
-