Class ArithOp

All Implemented Interfaces:
Named
Direct Known Subclasses:
AddOp, BitwiseOp, DivideOp, MultiplyOp

public abstract class ArithOp extends ProcedureN
  • Field Details

    • DIVIDE_GENERIC

      public static final int DIVIDE_GENERIC
      Implement's Scheme / operation.
      See Also:
    • DIVIDE_INEXACT

      public static final int DIVIDE_INEXACT
      Implements a division operation. Like Scheme's (exact->inexact (/ x y)).
      See Also:
    • QUOTIENT

      public static final int QUOTIENT
      Implements a quotient operation. Depends on the value of getRoundingMode(). Operands are real; result is an integer. Inexact operands yield inexact integer result.
      See Also:
    • QUOTIENT_EXACT

      public static final int QUOTIENT_EXACT
      Implements a quotient operation. Depends on the value of getRoundingMode(). Operands and result are real. Operands are real; result is an integer. Inexact operands yield exact integer result.
      See Also:
    • MODULO

      public static final int MODULO
      Implements a modulo/remainder operation. Depends on the value of getRoundingMode(). Operands and result are real.
      See Also:
    • ASHIFT_GENERAL

      public static final int ASHIFT_GENERAL
      See Also:
    • ASHIFT_LEFT

      public static final int ASHIFT_LEFT
      See Also:
    • ASHIFT_RIGHT

      public static final int ASHIFT_RIGHT
      See Also:
    • LSHIFT_RIGHT

      public static final int LSHIFT_RIGHT
      See Also:
    • AND

      public static final int AND
      See Also:
    • IOR

      public static final int IOR
      See Also:
    • XOR

      public static final int XOR
      See Also:
    • NOT

      public static final int NOT
      See Also:
  • Constructor Details

    • ArithOp

      public ArithOp(String name, int op)
  • Method Details

    • defaultResult

      public Object defaultResult()
    • isSideEffectFree

      public boolean isSideEffectFree()
      Description copied from class: Procedure
      True if this Procedure (definitely) has no side-effects. Note side-effect-free does not imply idempotent if this allocates an object with "identity".
      Overrides:
      isSideEffectFree in class Procedure