public abstract class DeclareGlobalLexicalVariableNode extends DeclareGlobalNode
errorProfile, varName| Modifier | Constructor and Description |
|---|---|
protected |
DeclareGlobalLexicalVariableNode(com.oracle.truffle.api.strings.TruffleString varName,
boolean isConst) |
| Modifier and Type | Method and Description |
|---|---|
protected DeclareGlobalNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static DeclareGlobalLexicalVariableNode |
create(com.oracle.truffle.api.strings.TruffleString varName,
boolean isConst) |
protected void |
doCached(JSDynamicObject globalScope,
JSContext context,
PropertySetNode cache) |
protected void |
doUncached(JSDynamicObject globalScope,
JSContext context) |
protected abstract void |
executeVoid(JSDynamicObject globalScope,
JSContext context) |
void |
executeVoid(com.oracle.truffle.api.frame.VirtualFrame frame,
JSContext context,
JSRealm realm) |
boolean |
isLexicallyDeclared() |
protected PropertySetNode |
makeDefineOwnPropertyCache(JSContext context) |
void |
verify(JSContext context,
JSRealm realm) |
ensureHasVarDeclarationOrRestrictedGlobalProperty, isGlobalFunctionDeclarationcopy, getLanguage, getRealm, hasOverloadedOperators, onReplaceaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, toStringprotected DeclareGlobalLexicalVariableNode(com.oracle.truffle.api.strings.TruffleString varName,
boolean isConst)
public static DeclareGlobalLexicalVariableNode create(com.oracle.truffle.api.strings.TruffleString varName, boolean isConst)
public void verify(JSContext context, JSRealm realm)
verify in class DeclareGlobalNodepublic final void executeVoid(com.oracle.truffle.api.frame.VirtualFrame frame,
JSContext context,
JSRealm realm)
executeVoid in class DeclareGlobalNodeprotected abstract void executeVoid(JSDynamicObject globalScope, JSContext context)
protected void doCached(JSDynamicObject globalScope, JSContext context, PropertySetNode cache)
protected void doUncached(JSDynamicObject globalScope, JSContext context)
protected final PropertySetNode makeDefineOwnPropertyCache(JSContext context)
public boolean isLexicallyDeclared()
isLexicallyDeclared in class DeclareGlobalNodeprotected DeclareGlobalNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized in class DeclareGlobalNode