trait ExactIntegral[T] extends ExactNumeric[T]

Type-class which defines the operations on Integral types (Byte, Short, Int, Long, BigInt) with overflow checks.

An exception is raised when an overflow is detected. Each concrete instance of this type-class overrides three methods plus, minus, times.

By default all the methods are implemented by delegating to the corresponding Integral instance from the standard Scala library.

This trait is used in core IR to avoid implicitly using standard scala implementations.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExactIntegral
  2. ExactNumeric
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def minus(x: T, y: T): T

    Subtraction operation x - y.

    Subtraction operation x - y.

    Definition Classes
    ExactNumeric
  2. abstract val n: Integral[T]
    Attributes
    protected
    Definition Classes
    ExactIntegralExactNumeric
  3. abstract def plus(x: T, y: T): T

    Addition operation x + y.

    Addition operation x + y.

    Definition Classes
    ExactNumeric
  4. abstract def times(x: T, y: T): T

    Multiplication operation x * y.

    Multiplication operation x * y.

    Definition Classes
    ExactNumeric

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  6. def divisionRemainder(x: T, y: T): T

    Operation which returns remainder from dividing x by y.

    Operation which returns remainder from dividing x by y. The exact rules are defined in the concrete instance of the type T. A default implementation delegates to Integral[T].rem method for the corresponding type T. The default implementation can be overridden for any concrete type T.

  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def fromInt(x: Int): T

    Returns a value of type T, which corresponds to the given integer value x.

    Returns a value of type T, which corresponds to the given integer value x.

    Definition Classes
    ExactNumeric
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def negate(x: T): T

    Returns negative value -x.

    Returns negative value -x.

    Definition Classes
    ExactNumeric
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  17. lazy val one: T

    A value of type T which corresponds to integer 1.

    A value of type T which corresponds to integer 1.

    Definition Classes
    ExactNumeric
  18. def quot(x: T, y: T): T

    Integer division operation x / y.

  19. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  20. def toInt(x: T): Int
    Definition Classes
    ExactNumeric
  21. def toLong(x: T): Long
    Definition Classes
    ExactNumeric
  22. def toString(): String
    Definition Classes
    AnyRef → Any
  23. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. lazy val zero: T

    A value of type T which corresponds to integer 0.

    A value of type T which corresponds to integer 0.

    Definition Classes
    ExactNumeric

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from ExactNumeric[T]

Inherited from AnyRef

Inherited from Any

Ungrouped