Class JSRightShiftConstantNode
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.unary.JSUnaryNode
com.oracle.truffle.js.nodes.binary.JSRightShiftConstantNode
- All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode,com.oracle.truffle.api.nodes.NodeInterface,Cloneable
11.7.2 The Signed Right Shift Operator ( >> ), special-cased for the step to be a constant
integer value.
-
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
FieldsFields inherited from class com.oracle.truffle.js.nodes.unary.JSUnaryNode
operandNodeFields inherited from class com.oracle.truffle.js.nodes.JavaScriptNode
INTERMEDIATE_VALUE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJSRightShiftConstantNode(JavaScriptNode operand, int shiftValue) -
Method Summary
Modifier and TypeMethodDescriptionprotected JavaScriptNodecopyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) static JavaScriptNodecreate(JavaScriptNode left, JavaScriptNode right) protected voidprotected intdoDouble(double a, JSToInt32Node leftInt32Node) protected intdoGeneric(Object a, JSToNumericNode leftToNumeric, JSRightShiftConstantNode innerShiftNode) protected intdoInteger(int a) protected ObjectdoOverloaded(JSOverloadedOperatorsObject a, JSOverloadedBinaryNode overloadedOperatorNode) protected intabstract intexecuteInt(Object a) protected com.oracle.truffle.api.strings.TruffleStringbooleanprotected JSRightShiftConstantNodemakeCopy()com.oracle.truffle.api.instrumentation.InstrumentableNodematerializeInstrumentableNodes(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) Methods inherited from class com.oracle.truffle.js.nodes.unary.JSUnaryNode
getNodeObject, getOperandMethods inherited from class com.oracle.truffle.js.nodes.JavaScriptNode
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, executeBoolean, executeDouble, executeInt, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, isResultAlwaysOfType, onReplace, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsMethods inherited from class com.oracle.truffle.js.nodes.JavaScriptBaseNode
getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperatorsMethods 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, reportPolymorphicSpecializeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
findNearestNodeAt, findNearestNodeAt
-
Field Details
-
shiftValue
protected final int shiftValue
-
-
Constructor Details
-
JSRightShiftConstantNode
-
-
Method Details
-
create
-
hasTag
- Specified by:
hasTagin interfacecom.oracle.truffle.api.instrumentation.InstrumentableNode- Overrides:
hasTagin classJavaScriptNode
-
materializeInstrumentableNodes
-
executeInt
-
doInteger
protected int doInteger(int a) -
doSafeInteger
-
doDouble
-
doBigInt
-
doOverloaded
protected Object doOverloaded(JSOverloadedOperatorsObject a, JSOverloadedBinaryNode overloadedOperatorNode) -
getOverloadedOperatorName
protected com.oracle.truffle.api.strings.TruffleString getOverloadedOperatorName() -
doGeneric
protected int doGeneric(Object a, JSToNumericNode leftToNumeric, JSRightShiftConstantNode innerShiftNode) -
makeCopy
-
copyUninitialized
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) - Overrides:
copyUninitializedin classJavaScriptNode
-
expressionToString
- Overrides:
expressionToStringin classJSUnaryNode
-