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

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate()
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate()
  12. final def isInstanceOf[T0]: Boolean

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

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

    Permalink

    Returns negative value -x.

    Returns negative value -x.

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate()
  16. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate()
  17. 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
  18. def quot(x: T, y: T): T

    Permalink

    Integer division operation x / y.

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  23. final def wait(arg0: Long, arg1: Int): Unit

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. 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

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from ExactNumeric[T]

Inherited from AnyRef

Inherited from Any

Ungrouped