Class InstanceofNode
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.binary.JSBinaryNode
com.oracle.truffle.js.nodes.binary.InstanceofNode
- All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode, com.oracle.truffle.api.nodes.NodeInterface, Cloneable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic final classNested 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
FieldsFields inherited from class JSBinaryNode
leftNode, rightNodeFields inherited from class JavaScriptNode
INTERMEDIATE_VALUE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedInstanceofNode(JSContext context, JavaScriptNode left, JavaScriptNode right) -
Method Summary
Modifier and TypeMethodDescriptionprotected JavaScriptNodecopyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) static InstanceofNodestatic InstanceofNodecreate(JSContext context, JavaScriptNode left, JavaScriptNode right) protected booleandoBigIntTarget(Object obj, BigInt target) protected booleandoBooleanTarget(Object obj, boolean target) protected booleandoDoubleTarget(Object obj, double target) protected booleandoForeignTargetJSType(JSDynamicObject instance, Object target) protected booleandoForeignTargetOther(Object instance, Object target, com.oracle.truffle.api.interop.InteropLibrary interop) protected booleandoJSObject(Object obj, JSDynamicObject target, com.oracle.truffle.api.nodes.Node node, IsJSObjectNode isObjectNode, GetMethodNode getMethodHasInstanceNode, JSToBooleanNode toBooleanNode, JSFunctionCallNode callHasInstanceNode, IsCallableNode isCallableNode, com.oracle.truffle.api.profiles.InlinedConditionProfile hasInstanceProfile, com.oracle.truffle.api.profiles.InlinedBranchProfile errorBranch) protected booleandoLongTarget(Object obj, long target) protected booleandoNullOrUndefinedTarget(Object obj, Object target) protected booleandoStringTarget(Object obj, com.oracle.truffle.api.strings.TruffleString target) protected booleandoSymbolTarget(Object obj, Symbol target) abstract booleanexecuteBoolean(Object left, Object right) booleanisResultAlwaysOfType(Class<?> clazz) Methods inherited from class JSBinaryNode
ensureBothSameNumericType, expressionToString, getLeft, getNodeObject, getRight, hasTag, largerThan2e32Methods inherited from class JavaScriptNode
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, executeBoolean, executeDouble, executeInt, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, 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, materializeInstrumentableNodes
-
Field Details
-
context
-
-
Constructor Details
-
InstanceofNode
-
-
Method Details
-
create
-
create
-
isResultAlwaysOfType
- Overrides:
isResultAlwaysOfTypein classJavaScriptNode
-
executeBoolean
-
doJSObject
protected boolean doJSObject(Object obj, JSDynamicObject target, com.oracle.truffle.api.nodes.Node node, IsJSObjectNode isObjectNode, GetMethodNode getMethodHasInstanceNode, JSToBooleanNode toBooleanNode, JSFunctionCallNode callHasInstanceNode, IsCallableNode isCallableNode, com.oracle.truffle.api.profiles.InlinedConditionProfile hasInstanceProfile, com.oracle.truffle.api.profiles.InlinedBranchProfile errorBranch) -
doNullOrUndefinedTarget
-
doStringTarget
-
doDoubleTarget
-
doLongTarget
-
doBooleanTarget
-
doBigIntTarget
-
doSymbolTarget
-
doForeignTargetJSType
-
doForeignTargetOther
-
copyUninitialized
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) - Overrides:
copyUninitializedin classJavaScriptNode
-