public abstract class JSLeftShiftNode extends JSBinaryNode
leftNode, rightNode
INTERMEDIATE_VALUE
Modifier | Constructor and Description |
---|---|
protected |
JSLeftShiftNode(JavaScriptNode left,
JavaScriptNode right) |
Modifier and Type | Method and Description |
---|---|
protected JavaScriptNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static JSLeftShiftNode |
create() |
static JavaScriptNode |
create(JavaScriptNode left,
JavaScriptNode right) |
protected BigInt |
doBigInt(BigInt a,
BigInt b) |
protected Object |
doDouble(double a,
double b,
JSLeftShiftNode leftShift,
JSToInt32Node leftInt32,
JSToUInt32Node rightUInt32) |
protected Object |
doGeneric(Object a,
Object b,
JSLeftShiftNode leftShift,
JSToNumericNode leftToNumeric,
JSToNumericNode rightToNumeric,
com.oracle.truffle.api.profiles.BranchProfile mixedNumericTypes) |
protected int |
doInteger(int a,
int b) |
protected int |
doIntegerDouble(int a,
double b) |
abstract Object |
executeObject(Object a,
Object b) |
boolean |
isResultAlwaysOfType(Class<?> clazz) |
ensureBothSameNumericType, expressionToString, getLeft, getNodeObject, getRight, hasTag, largerThan2e32
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, executeBoolean, executeDouble, executeInt, executeLong, executeSafeInteger, executeString, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTags
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, replace, replace, reportPolymorphicSpecialize
protected JSLeftShiftNode(JavaScriptNode left, JavaScriptNode right)
public static JavaScriptNode create(JavaScriptNode left, JavaScriptNode right)
protected int doInteger(int a, int b)
protected int doIntegerDouble(int a, double b)
protected Object doDouble(double a, double b, JSLeftShiftNode leftShift, JSToInt32Node leftInt32, JSToUInt32Node rightUInt32)
protected Object doGeneric(Object a, Object b, JSLeftShiftNode leftShift, JSToNumericNode leftToNumeric, JSToNumericNode rightToNumeric, com.oracle.truffle.api.profiles.BranchProfile mixedNumericTypes)
public boolean isResultAlwaysOfType(Class<?> clazz)
isResultAlwaysOfType
in class JavaScriptNode
public static JSLeftShiftNode create()
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized
in class JavaScriptNode