Trait/Object

scalan

ExactIntegral

Related Docs: object ExactIntegral | package scalan

Permalink

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
ExactNumeric[T], AnyRef, Any
Known Subclasses
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

    Permalink

    Subtraction operation x - y.

    Subtraction operation x - y.

    Definition Classes
    ExactNumeric
  2. abstract val n: Integral[T]

    Permalink
    Attributes
    protected
    Definition Classes
    ExactIntegralExactNumeric
  3. abstract def plus(x: T, y: T): T

    Permalink

    Addition operation x + y.

    Addition operation x + y.

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

    Permalink

    Multiplication operation x * y.

    Multiplication operation x * y.

    Definition Classes
    ExactNumeric

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def divisionRemainder(x: T, y: T): T

    Permalink

    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

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. def fromInt(x: Int): T

    Permalink

    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
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def negate(x: T): T

    Permalink

    Returns negative value -x.

    Returns negative value -x.

    Definition Classes
    ExactNumeric
  16. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. lazy val one: T

    Permalink

    A value of type T which corresponds to integer 1.

    A value of type T which corresponds to integer 1.

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

    Permalink

    Integer division operation x / y.

  20. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  21. def toInt(x: T): Int

    Permalink
    Definition Classes
    ExactNumeric
  22. def toLong(x: T): Long

    Permalink
    Definition Classes
    ExactNumeric
  23. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. lazy val zero: T

    Permalink

    A value of type T which corresponds to integer 0.

    A value of type T which corresponds to integer 0.

    Definition Classes
    ExactNumeric

Inherited from ExactNumeric[T]

Inherited from AnyRef

Inherited from Any

Ungrouped