public abstract class EvalNode extends JavaScriptNode
| Modifier and Type | Class and Description |
|---|---|
protected static class |
EvalNode.DirectEvalNode |
| Modifier and Type | Field and Description |
|---|---|
protected AbstractFunctionArgumentsNode |
arguments |
protected EvalNode.DirectEvalNode |
directEvalNode |
protected JavaScriptNode |
functionNode |
INTERMEDIATE_VALUE| Modifier | Constructor and Description |
|---|---|
protected |
EvalNode(JSContext context,
JavaScriptNode functionNode,
AbstractFunctionArgumentsNode arguments,
EvalNode.DirectEvalNode directEvalNode) |
protected |
EvalNode(JSContext context,
JavaScriptNode function,
JavaScriptNode[] args,
JavaScriptNode thisObject,
Object env) |
| Modifier and Type | Method and Description |
|---|---|
protected JavaScriptNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static EvalNode |
create(JSContext context,
JavaScriptNode functionNode,
JavaScriptNode[] args,
JavaScriptNode thisObject,
Object env) |
protected Object |
evalNotOverridden(com.oracle.truffle.api.frame.VirtualFrame frame,
Object evalFunction) |
protected Object |
evalOverridden(com.oracle.truffle.api.frame.VirtualFrame frame,
Object evalFunction,
JSFunctionCallNode redirectCall) |
static String |
findAndFormatEvalOrigin(com.oracle.truffle.api.nodes.Node evalNode,
JSContext context) |
boolean |
hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag) |
protected boolean |
isEvalOverridden(Object function) |
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, executeBoolean, executeDouble, executeInt, executeLong, executeSafeInteger, executeString, executeVoid, expressionToString, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, isResultAlwaysOfType, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, replace, replace, reportPolymorphicSpecializeprotected JavaScriptNode functionNode
protected AbstractFunctionArgumentsNode arguments
protected EvalNode.DirectEvalNode directEvalNode
protected EvalNode(JSContext context, JavaScriptNode function, JavaScriptNode[] args, JavaScriptNode thisObject, Object env)
protected EvalNode(JSContext context, JavaScriptNode functionNode, AbstractFunctionArgumentsNode arguments, EvalNode.DirectEvalNode directEvalNode)
public boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNodehasTag in class JavaScriptNodeprotected Object evalNotOverridden(com.oracle.truffle.api.frame.VirtualFrame frame, Object evalFunction)
protected Object evalOverridden(com.oracle.truffle.api.frame.VirtualFrame frame, Object evalFunction, JSFunctionCallNode redirectCall)
protected final boolean isEvalOverridden(Object function)
public static EvalNode create(JSContext context, JavaScriptNode functionNode, JavaScriptNode[] args, JavaScriptNode thisObject, Object env)
public static String findAndFormatEvalOrigin(com.oracle.truffle.api.nodes.Node evalNode, JSContext context)
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized in class JavaScriptNode