Class Value

    • Constructor Detail

      • Value

        public Value()
    • Method Detail

      • category1Value

        public Category1Value category1Value()
        Returns this Value as a Category1Value.
      • category2Value

        public Category2Value category2Value()
        Returns this Value as a Category2Value.
      • integerValue

        public IntegerValue integerValue()
        Returns this Value as an IntegerValue.
      • longValue

        public LongValue longValue()
        Returns this Value as a LongValue.
      • floatValue

        public FloatValue floatValue()
        Returns this Value as a FloatValue.
      • doubleValue

        public DoubleValue doubleValue()
        Returns this Value as a DoubleValue.
      • referenceValue

        public ReferenceValue referenceValue()
        Returns this Value as a ReferenceValue.
      • instructionOffsetValue

        public InstructionOffsetValue instructionOffsetValue()
        Returns this Value as an InstructionOffsetValue.
      • isSpecific

        public boolean isSpecific()
        Returns whether this Value represents a single specific (but possibly unknown) value.
      • isParticular

        public boolean isParticular()
        Returns whether this Value represents a single particular (known) value.
      • generalize

        public abstract Value generalize​(Value other)
        Returns the generalization of this Value and the given other Value.
      • isCategory2

        public abstract boolean isCategory2()
        Returns whether the computational type of this Value is a category 2 type. This means that it takes up the space of two category 1 types on the stack, for instance.
      • computationalType

        public abstract int computationalType()
        Returns the computational type of this Value.
        Returns:
        TYPE_INTEGER, TYPE_LONG, TYPE_FLOAT, TYPE_DOUBLE, TYPE_REFERENCE, or TYPE_INSTRUCTION_OFFSET.
      • internalType

        public abstract java.lang.String internalType()
        Returns the internal type of this Value.
        Returns:
        TypeConstants.BOOLEAN, TypeConstants.BYTE, TypeConstants.CHAR, TypeConstants.SHORT, TypeConstants.INT , TypeConstants.LONG, TypeConstants.FLOAT, TypeConstants.DOUBLE, TypeConstants.CLASS_START ... TypeConstants.CLASS_END , or an array type containing any of these types (always as String).
      • copyIfMutable

        public Value copyIfMutable()
        Returns a deep copy of the value if it mutable, returns the value itself otherwise.