public abstract class JSBitwiseAndConstantNode extends JSUnaryNode
Modifier and Type | Field and Description |
---|---|
protected boolean |
isInt |
protected BigInt |
rightBigIntValue |
protected int |
rightIntValue |
operandNode
INTERMEDIATE_VALUE
Modifier | Constructor and Description |
---|---|
protected |
JSBitwiseAndConstantNode(JavaScriptNode left,
Object rightValue) |
Modifier and Type | Method and Description |
---|---|
protected JavaScriptNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static JSBitwiseAndConstantNode |
create(JavaScriptNode left,
Object right) |
protected BigInt |
doBigInt(BigInt a) |
protected void |
doBigIntThrows(BigInt a) |
protected int |
doDouble(double a,
JSToInt32Node leftInt32) |
protected void |
doDoubleThrows(double a) |
protected Object |
doGeneric(Object a,
JSToNumericNode toNumeric,
com.oracle.truffle.api.profiles.InlinedConditionProfile profileIsBigInt,
JavaScriptNode innerAndNode) |
protected BigInt |
doGenericBigIntCase(Object a,
JSToNumericNode toNumeric,
com.oracle.truffle.api.profiles.InlinedConditionProfile profileIsBigInt) |
protected int |
doInteger(int a) |
protected void |
doIntegerThrows(int a) |
protected Object |
doOverloaded(JSOverloadedOperatorsObject a,
JSOverloadedBinaryNode overloadedOperatorNode) |
protected int |
doSafeInteger(SafeInteger a) |
abstract Object |
executeObject(Object a) |
String |
expressionToString() |
protected com.oracle.truffle.api.strings.TruffleString |
getOverloadedOperatorName() |
boolean |
hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag) |
com.oracle.truffle.api.instrumentation.InstrumentableNode |
materializeInstrumentableNodes(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
createWrapper, execute, getNodeObject, getOperand
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, execute, executeBoolean, executeDouble, executeInt, executeLong, executeSafeInteger, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, isResultAlwaysOfType, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTags
getLanguage, getRealm, hasOverloadedOperators
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize
protected final boolean isInt
protected final int rightIntValue
protected final BigInt rightBigIntValue
protected JSBitwiseAndConstantNode(JavaScriptNode left, Object rightValue)
public static JSBitwiseAndConstantNode create(JavaScriptNode left, Object right)
public boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
hasTag
in interface com.oracle.truffle.api.instrumentation.InstrumentableNode
hasTag
in class JavaScriptNode
public com.oracle.truffle.api.instrumentation.InstrumentableNode materializeInstrumentableNodes(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
protected int doInteger(int a)
protected int doSafeInteger(SafeInteger a)
protected int doDouble(double a, JSToInt32Node leftInt32)
protected void doIntegerThrows(int a)
protected void doDoubleThrows(double a)
protected void doBigIntThrows(BigInt a)
protected Object doOverloaded(JSOverloadedOperatorsObject a, JSOverloadedBinaryNode overloadedOperatorNode)
protected com.oracle.truffle.api.strings.TruffleString getOverloadedOperatorName()
protected Object doGeneric(Object a, JSToNumericNode toNumeric, com.oracle.truffle.api.profiles.InlinedConditionProfile profileIsBigInt, JavaScriptNode innerAndNode)
protected BigInt doGenericBigIntCase(Object a, JSToNumericNode toNumeric, com.oracle.truffle.api.profiles.InlinedConditionProfile profileIsBigInt)
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized
in class JavaScriptNode
public String expressionToString()
expressionToString
in class JSUnaryNode