public abstract class JSAddNode extends JSBinaryNode implements Truncatable
leftNode, rightNodeINTERMEDIATE_VALUE| Modifier | Constructor and Description |
|---|---|
protected |
JSAddNode(boolean truncate,
JavaScriptNode left,
JavaScriptNode right) |
| Modifier and Type | Method and Description |
|---|---|
JSAddNode |
copyRecursive() |
protected JavaScriptNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static JavaScriptNode |
create(JavaScriptNode left,
JavaScriptNode right) |
static JavaScriptNode |
create(JavaScriptNode left,
JavaScriptNode right,
boolean truncate) |
static JavaScriptNode |
createUnoptimized(JavaScriptNode left,
JavaScriptNode right,
boolean truncate) |
protected BigInt |
doBigInt(BigInt left,
BigInt right) |
protected static double |
doDouble(double a,
double b) |
protected static int |
doInt(int a,
int b) |
protected static Object |
doIntOverflow(int a,
int b) |
protected static SafeInteger |
doIntSafeInteger(int a,
SafeInteger b) |
protected CharSequence |
doIntString(int a,
CharSequence b) |
protected static int |
doIntTruncate(int a,
int b) |
protected CharSequence |
doNumberString(Object a,
CharSequence b,
JSConcatStringsNode concatStringsNode,
JSDoubleToStringNode doubleToStringNode) |
protected Object |
doPrimitiveConversion(Object a,
Object b,
JSToPrimitiveNode toPrimitiveA,
JSToPrimitiveNode toPrimitiveB,
JSToNumericNode toNumericA,
JSToNumericNode toNumericB,
JSToStringNode toStringA,
JSToStringNode toStringB,
com.oracle.truffle.api.profiles.ConditionProfile profileA,
com.oracle.truffle.api.profiles.ConditionProfile profileB,
JSAddNode add,
com.oracle.truffle.api.profiles.BranchProfile mixedNumericTypes) |
protected static SafeInteger |
doSafeInteger(SafeInteger a,
SafeInteger b) |
protected static SafeInteger |
doSafeIntegerInt(SafeInteger a,
int b) |
protected CharSequence |
doString(CharSequence a,
CharSequence b,
JSConcatStringsNode concatStringsNode) |
protected CharSequence |
doStringInt(CharSequence a,
int b) |
protected CharSequence |
doStringNumber(CharSequence a,
Object b,
JSConcatStringsNode concatStringsNode,
JSDoubleToStringNode doubleToStringNode) |
abstract Object |
execute(Object a,
Object b) |
void |
setTruncate() |
ensureBothSameNumericType, expressionToString, getLeft, getNodeObject, getRight, hasTag, largerThan2e32addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, executeBoolean, executeDouble, executeInt, executeLong, executeSafeInteger, executeString, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, isResultAlwaysOfType, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, replace, replace, reportPolymorphicSpecializeclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waittruncateprotected JSAddNode(boolean truncate,
JavaScriptNode left,
JavaScriptNode right)
public static JavaScriptNode create(JavaScriptNode left, JavaScriptNode right, boolean truncate)
public static JavaScriptNode create(JavaScriptNode left, JavaScriptNode right)
public static JavaScriptNode createUnoptimized(JavaScriptNode left, JavaScriptNode right, boolean truncate)
protected static int doIntTruncate(int a,
int b)
protected static int doInt(int a,
int b)
protected static Object doIntOverflow(int a, int b)
protected static SafeInteger doIntSafeInteger(int a, SafeInteger b)
protected static SafeInteger doSafeIntegerInt(SafeInteger a, int b)
protected static SafeInteger doSafeInteger(SafeInteger a, SafeInteger b)
protected static double doDouble(double a,
double b)
protected CharSequence doString(CharSequence a, CharSequence b, JSConcatStringsNode concatStringsNode)
protected CharSequence doStringInt(CharSequence a, int b)
protected CharSequence doIntString(int a, CharSequence b)
protected CharSequence doStringNumber(CharSequence a, Object b, JSConcatStringsNode concatStringsNode, JSDoubleToStringNode doubleToStringNode)
protected CharSequence doNumberString(Object a, CharSequence b, JSConcatStringsNode concatStringsNode, JSDoubleToStringNode doubleToStringNode)
protected Object doPrimitiveConversion(Object a, Object b, JSToPrimitiveNode toPrimitiveA, JSToPrimitiveNode toPrimitiveB, JSToNumericNode toNumericA, JSToNumericNode toNumericB, JSToStringNode toStringA, JSToStringNode toStringB, com.oracle.truffle.api.profiles.ConditionProfile profileA, com.oracle.truffle.api.profiles.ConditionProfile profileB, JSAddNode add, com.oracle.truffle.api.profiles.BranchProfile mixedNumericTypes)
public final JSAddNode copyRecursive()
public void setTruncate()
setTruncate in interface Truncatableprotected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized in class JavaScriptNode