Class JSUnaryMinusNode

All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode, com.oracle.truffle.api.nodes.NodeInterface, Cloneable

public abstract class JSUnaryMinusNode extends JSUnaryNode
  • Constructor Details

    • JSUnaryMinusNode

      protected JSUnaryMinusNode(JavaScriptNode operand)
  • Method Details

    • create

      public static JavaScriptNode create(JavaScriptNode operand)
    • create

      protected static JSUnaryMinusNode create()
    • hasTag

      public boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
      Specified by:
      hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNode
      Overrides:
      hasTag in class JavaScriptNode
    • getNodeObject

      public Object getNodeObject()
      Specified by:
      getNodeObject in interface com.oracle.truffle.api.instrumentation.InstrumentableNode
      Overrides:
      getNodeObject in class JSUnaryNode
    • execute

      public abstract Object execute(Object value)
    • doInt

      protected static int doInt(int a)
    • isInt

      protected static boolean isInt(int a)
    • doDouble

      protected static double doDouble(double a)
    • doBigInt

      protected static BigInt doBigInt(BigInt a)
    • doOverloaded

      protected Object doOverloaded(JSOverloadedOperatorsObject a, JSOverloadedUnaryNode overloadedOperatorNode)
    • getOverloadedOperatorName

      protected com.oracle.truffle.api.strings.TruffleString getOverloadedOperatorName()
    • doGeneric

      protected static Object doGeneric(Object a, JSToNumericNode toNumericNode, JSUnaryMinusNode recursiveUnaryMinus)
    • copyUninitialized

      protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
      Overrides:
      copyUninitialized in class JavaScriptNode