Class JSTargetableNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.JavaScriptNode
com.oracle.truffle.js.nodes.access.JSTargetableNode
- All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode, com.oracle.truffle.api.nodes.NodeInterface, Cloneable
- Direct Known Subclasses:
DeletePropertyNode, EvalVariableNode, GlobalConstantNode, GlobalPropertyNode, JSMaterializedInvokeTargetableNode, JSMaterializedInvokeTargetableNode.EchoTargetValueNode, JSTargetableWrapperNode, JSTargetableWriteNode, OptionalChainNode.OptionalTargetableNode, OptionalChainNode.ShortCircuitTargetableNode, PrivateBrandCheckNode, PrivateFieldGetNode, PrivateFieldSetNode, PropertyNode, ReadElementNode, SuperPropertyReferenceNode, WithVarWrapperNode, WriteElementNode
-
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.ChildrenNested classes/interfaces inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode -
Field Summary
Fields inherited from class JavaScriptNode
INTERMEDIATE_VALUE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncom.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNodecreateWrapper(com.oracle.truffle.api.instrumentation.ProbeNode probe) static ObjectevaluateReceiver(JavaScriptNode targetNode, com.oracle.truffle.api.frame.VirtualFrame frame, Object targetValue) evaluateTarget(com.oracle.truffle.api.frame.VirtualFrame frame) doubleexecuteDoubleWithTarget(com.oracle.truffle.api.frame.VirtualFrame frame, Object target) intexecuteIntWithTarget(com.oracle.truffle.api.frame.VirtualFrame frame, Object target) abstract ObjectexecuteWithTarget(com.oracle.truffle.api.frame.VirtualFrame frame, Object target) Methods inherited from class JavaScriptNode
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, copyUninitialized, execute, executeBoolean, executeDouble, executeInt, executeVoid, expressionToString, findBlockScopeNode, getSourceSection, hasSourceSection, hasTag, isInstrumentable, isResultAlwaysOfType, onReplace, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsMethods inherited from class JavaScriptBaseNode
getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, reportLoopCount, reportLoopCountMethods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, reportReplaceMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
createProbe, findNearestNodeAt, findNearestNodeAt, findProbe, getNodeObject, materializeInstrumentableNodes
-
Constructor Details
-
JSTargetableNode
public JSTargetableNode()
-
-
Method Details
-
executeWithTarget
-
evaluateTarget
-
executeIntWithTarget
public int executeIntWithTarget(com.oracle.truffle.api.frame.VirtualFrame frame, Object target) throws com.oracle.truffle.api.nodes.UnexpectedResultException - Throws:
com.oracle.truffle.api.nodes.UnexpectedResultException
-
executeDoubleWithTarget
public double executeDoubleWithTarget(com.oracle.truffle.api.frame.VirtualFrame frame, Object target) throws com.oracle.truffle.api.nodes.UnexpectedResultException - Throws:
com.oracle.truffle.api.nodes.UnexpectedResultException
-
getTarget
-
evaluateReceiver
public static Object evaluateReceiver(JavaScriptNode targetNode, com.oracle.truffle.api.frame.VirtualFrame frame, Object targetValue) -
createWrapper
public com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode createWrapper(com.oracle.truffle.api.instrumentation.ProbeNode probe) - Specified by:
createWrapperin interfacecom.oracle.truffle.api.instrumentation.InstrumentableNode- Overrides:
createWrapperin classJavaScriptNode
-