Class UnaryOpBehavior

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      abstract long evaluateUnary​(int sizeout, int sizein, long unsignedIn1)
      Evaluate the unary operation using long data
      abstract java.math.BigInteger evaluateUnary​(int sizeout, int sizein, java.math.BigInteger unsignedIn1)
      Evaluate the unary operation using BigInteger data
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • evaluateUnary

        public abstract long evaluateUnary​(int sizeout,
                                           int sizein,
                                           long unsignedIn1)
        Evaluate the unary operation using long data
        Parameters:
        sizeout - intended output size (bytes)
        sizein - in1 size (bytes)
        unsignedIn1 - unsigned input 1
        Returns:
        operation result. NOTE: if the operation overflows bits may be set beyond the specified sizeout. Even though results should be treated as unsigned it may be returned as a signed long value. It is expected that the returned result always be properly truncated by the caller since the evaluation may not - this is done to conserve emulation cycles.
        See Also:
        Utils.longToBytes(long, int, boolean), Utils.bytesToLong(byte[], int, boolean)
      • evaluateUnary

        public abstract java.math.BigInteger evaluateUnary​(int sizeout,
                                                           int sizein,
                                                           java.math.BigInteger unsignedIn1)
        Evaluate the unary operation using BigInteger data
        Parameters:
        sizeout - intended output size (bytes)
        sizein - in1 size (bytes)
        unsignedIn1 - unsigned input 1
        Returns:
        operation result. NOTE: if the operation overflows bits may be set beyond the specified sizeout. Even though results should be treated as unsigned it may be returned as a signed value. It is expected that the returned result always be properly truncated by the caller since the evaluation may not - this is done to conserve emulation cycles.
        See Also:
        Utils.bigIntegerToBytes(BigInteger, int, boolean), Utils.bytesToBigInteger(byte[], int, boolean, boolean)