Class JSAddNode
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.JSAddNode
- All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode,com.oracle.truffle.api.nodes.NodeInterface,Truncatable,Cloneable
-
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
Fields inherited from class com.oracle.truffle.js.nodes.binary.JSBinaryNode
leftNode, rightNodeFields inherited from class com.oracle.truffle.js.nodes.JavaScriptNode
INTERMEDIATE_VALUE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJSAddNode(boolean truncate, JavaScriptNode left, JavaScriptNode right) -
Method Summary
Modifier and TypeMethodDescriptionfinal JSAddNodeprotected JavaScriptNodecopyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) static JavaScriptNodecreate(JavaScriptNode left, JavaScriptNode right) static JavaScriptNodecreate(JavaScriptNode left, JavaScriptNode right, boolean truncate) static JSAddNodestatic JavaScriptNodecreateUnoptimized(JavaScriptNode left, JavaScriptNode right, boolean truncate) protected BigIntprotected static doubledoDouble(double a, double b) protected static intdoInt(int a, int b) protected static ObjectdoIntOverflow(int a, int b) protected static SafeIntegerdoIntSafeInteger(int a, SafeInteger b) protected com.oracle.truffle.api.strings.TruffleStringdoIntString(int a, com.oracle.truffle.api.strings.TruffleString b, JSConcatStringsNode concatStringsNode, com.oracle.truffle.api.strings.TruffleString.FromLongNode stringFromLongNode) protected static intdoIntTruncate(int a, int b) protected ObjectdoNumberString(Object a, com.oracle.truffle.api.strings.TruffleString b, JSConcatStringsNode concatStringsNode, JSDoubleToStringNode doubleToStringNode) protected ObjectdoOverloaded(Object a, Object b, JSOverloadedBinaryNode overloadedOperatorNode) protected static ObjectdoPrimitiveConversion(Object a, Object b, com.oracle.truffle.api.nodes.Node node, JSToPrimitiveNode toPrimitiveA, JSToPrimitiveNode toPrimitiveB, JSToNumericNode toNumericA, JSToNumericNode toNumericB, JSToStringNode toStringA, JSToStringNode toStringB, com.oracle.truffle.api.profiles.InlinedConditionProfile profileA, com.oracle.truffle.api.profiles.InlinedConditionProfile profileB, JSAddNode add, com.oracle.truffle.api.profiles.InlinedBranchProfile mixedNumericTypes) protected static SafeIntegerprotected static SafeIntegerdoSafeIntegerInt(SafeInteger a, int b) protected com.oracle.truffle.api.strings.TruffleStringdoString(com.oracle.truffle.api.strings.TruffleString a, com.oracle.truffle.api.strings.TruffleString b, JSConcatStringsNode concatStringsNode) protected com.oracle.truffle.api.strings.TruffleStringdoStringInt(com.oracle.truffle.api.strings.TruffleString a, int b, JSConcatStringsNode concatStringsNode, com.oracle.truffle.api.strings.TruffleString.FromLongNode stringFromLongNode) protected ObjectdoStringNumber(com.oracle.truffle.api.strings.TruffleString a, Object b, JSConcatStringsNode concatStringsNode, JSDoubleToStringNode doubleToStringNode) abstract Objectprotected com.oracle.truffle.api.strings.TruffleStringvoidMethods inherited from class com.oracle.truffle.js.nodes.binary.JSBinaryNode
ensureBothSameNumericType, expressionToString, getLeft, getNodeObject, getRight, hasTag, largerThan2e32Methods 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, materializeInstrumentableNodes
-
Constructor Details
-
JSAddNode
-
-
Method Details
-
create
-
create
-
createUnoptimized
public static JavaScriptNode createUnoptimized(JavaScriptNode left, JavaScriptNode right, boolean truncate) -
createUnoptimized
-
execute
-
doIntTruncate
protected static int doIntTruncate(int a, int b) -
doInt
protected static int doInt(int a, int b) -
doIntOverflow
-
doIntSafeInteger
-
doSafeIntegerInt
-
doSafeInteger
-
doDouble
protected static double doDouble(double a, double b) -
doBigInt
-
doString
protected com.oracle.truffle.api.strings.TruffleString doString(com.oracle.truffle.api.strings.TruffleString a, com.oracle.truffle.api.strings.TruffleString b, JSConcatStringsNode concatStringsNode) -
doStringInt
protected com.oracle.truffle.api.strings.TruffleString doStringInt(com.oracle.truffle.api.strings.TruffleString a, int b, JSConcatStringsNode concatStringsNode, com.oracle.truffle.api.strings.TruffleString.FromLongNode stringFromLongNode) -
doIntString
protected com.oracle.truffle.api.strings.TruffleString doIntString(int a, com.oracle.truffle.api.strings.TruffleString b, JSConcatStringsNode concatStringsNode, com.oracle.truffle.api.strings.TruffleString.FromLongNode stringFromLongNode) -
doStringNumber
protected Object doStringNumber(com.oracle.truffle.api.strings.TruffleString a, Object b, JSConcatStringsNode concatStringsNode, JSDoubleToStringNode doubleToStringNode) -
doNumberString
protected Object doNumberString(Object a, com.oracle.truffle.api.strings.TruffleString b, JSConcatStringsNode concatStringsNode, JSDoubleToStringNode doubleToStringNode) -
doOverloaded
-
getOverloadedOperatorName
protected com.oracle.truffle.api.strings.TruffleString getOverloadedOperatorName() -
doPrimitiveConversion
protected static Object doPrimitiveConversion(Object a, Object b, com.oracle.truffle.api.nodes.Node node, JSToPrimitiveNode toPrimitiveA, JSToPrimitiveNode toPrimitiveB, JSToNumericNode toNumericA, JSToNumericNode toNumericB, JSToStringNode toStringA, JSToStringNode toStringB, com.oracle.truffle.api.profiles.InlinedConditionProfile profileA, com.oracle.truffle.api.profiles.InlinedConditionProfile profileB, JSAddNode add, com.oracle.truffle.api.profiles.InlinedBranchProfile mixedNumericTypes) -
copyRecursive
-
setTruncate
public void setTruncate()- Specified by:
setTruncatein interfaceTruncatable
-
copyUninitialized
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) - Overrides:
copyUninitializedin classJavaScriptNode
-