Class Data

  • All Implemented Interfaces:
    java.lang.Comparable<Data>

    public final class Data
    extends java.lang.Object
    implements java.lang.Comparable<Data>
    • Constructor Detail

      • Data

        public Data​(ru.ispras.fortress.data.types.bitvector.BitVector rawData,
                    Type type)
      • Data

        public Data​(Type type,
                    ru.ispras.fortress.data.types.bitvector.BitVector rawData)
      • Data

        public Data​(Data other)
      • Data

        public Data​(Type type)
    • Method Detail

      • getType

        public Type getType()
      • isType

        public boolean isType​(TypeId typeId)
      • getBitSize

        public int getBitSize()
      • getRawData

        public ru.ispras.fortress.data.types.bitvector.BitVector getRawData()
      • bitField

        public Data bitField​(int start,
                             int end)
      • bitField

        public Data bitField​(Data start,
                             Data end)
      • repeat

        public Data repeat​(int count)
      • signExtendTo

        public Data signExtendTo​(Type newType)
      • zeroExtendTo

        public Data zeroExtendTo​(Type newType)
      • coerceTo

        public Data coerceTo​(Type newType)
      • castTo

        public Data castTo​(Type newType)
      • negate

        public Data negate()
      • subtract

        public Data subtract​(Data other)
      • multiply

        public Data multiply​(Data other)
      • divide

        public Data divide​(Data other)
      • not

        public Data not()
      • shiftLeft

        public Data shiftLeft​(Data amount)
      • shiftRight

        public Data shiftRight​(Data amount)
      • rotateLeft

        public Data rotateLeft​(Data amount)
      • rotateRight

        public Data rotateRight​(Data amount)
      • compareTo

        public int compareTo​(Data other)
        Specified by:
        compareTo in interface java.lang.Comparable<Data>
      • sqrt

        public Data sqrt()
      • round

        public Data round()
      • isNan

        public boolean isNan()
      • isSignalingNan

        public boolean isSignalingNan()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • bigIntegerValue

        public java.math.BigInteger bigIntegerValue()
      • bigIntegerValue

        public java.math.BigInteger bigIntegerValue​(boolean signed)
      • booleanValue

        public boolean booleanValue()
      • floatXValue

        public FloatX floatXValue()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • toHexString

        public java.lang.String toHexString()
      • toBinString

        public java.lang.String toBinString()
      • valueOf

        public static Data valueOf​(Type type,
                                   java.math.BigInteger value)
      • valueOf

        public static Data valueOf​(Type type,
                                   long value)
      • valueOf

        public static Data valueOf​(Type type,
                                   int value)
      • valueOf

        public static Data valueOf​(Type type,
                                   boolean value)
      • signExtend

        public static Data signExtend​(Type type,
                                      Data value)
      • zeroExtend

        public static Data zeroExtend​(Type type,
                                      Data value)
      • coerce

        public static Data coerce​(Type type,
                                  Data value)
      • cast

        public static Data cast​(Type type,
                                Data value)
      • intToFloat

        public static Data intToFloat​(Type type,
                                      Data value)
      • floatToInt

        public static Data floatToInt​(Type type,
                                      Data value)
      • floatToFloat

        public static Data floatToFloat​(Type type,
                                        Data value)
      • isLossOfSignificantBits

        public static boolean isLossOfSignificantBits​(Type type,
                                                      java.math.BigInteger value)
        Checks whether the significant bits are lost when the specified integer is converted to the specified Model API type. This happens when the type is shorter than the value and the truncated part goes beyond sign extension bits.
        Parameters:
        type - Conversion target type.
        value - Value to be converted.
        Returns:
        true if significant bits will be lost during the conversion or false otherwise.
      • getFloatRoundingMode

        public static int getFloatRoundingMode()
      • setFloatRoundingMode

        public static void setFloatRoundingMode​(int value)
      • getFloatExceptionFlags

        public static int getFloatExceptionFlags()
      • setFloatExceptionFlags

        public static void setFloatExceptionFlags​(int value)