spire.math.real

ConstantFolder

trait ConstantFolder[A <: RealLike[A]] extends ScalaNumber with RealTransform[A]

This folds all ring ops (+, -, *) on constants to constants. This only works on IntLits for now, as BigInts may be slow.

TODO: It may be worth it to fold BigIntLits for add/subtract, since the space requirement would approximately half.

Self Type
ConstantFolder[A] with A
Linear Supertypes
RealTransform[A], RealLike[A], ScalaNumber, java.lang.Number, Serializable, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ConstantFolder
  2. RealTransform
  3. RealLike
  4. ScalaNumber
  5. Number
  6. Serializable
  7. AnyRef
  8. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. implicit abstract def coexpr: Coexpr[A]

    Definition Classes
    RealLike
  2. abstract def doubleValue(): Double

    Definition Classes
    Number
  3. abstract def floatValue(): Float

    Definition Classes
    Number
  4. abstract def intValue(): Int

    Definition Classes
    Number
  5. abstract def isWhole(): Boolean

    Definition Classes
    RealLike → ScalaNumber
  6. abstract def longValue(): Long

    Definition Classes
    Number
  7. abstract def sign: Sign

    Definition Classes
    RealLike
  8. abstract def toBigDecimal(implicit mc: MathContext): BigDecimal

    Definition Classes
    RealLike
  9. abstract def toBigInt: BigInt

    Definition Classes
    RealLike
  10. abstract def toDouble: Double

    Definition Classes
    RealLike
  11. abstract def toFloat: Float

    Definition Classes
    RealLike
  12. abstract def toInt: Int

    Definition Classes
    RealLike
  13. abstract def toLong: Long

    Definition Classes
    RealLike
  14. abstract def underlying(): AnyRef

    Definition Classes
    ScalaNumber

Concrete Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def *(that: A): A

    Definition Classes
    RealTransformRealLike
  5. def +(that: A): A

    Definition Classes
    RealTransformRealLike
  6. def -(that: A): A

    Definition Classes
    RealTransformRealLike
  7. def /(that: A): A

    Definition Classes
    RealTransformRealLike
  8. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  9. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  10. def abs: A

    Definition Classes
    RealLike
  11. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  12. def byteValue(): Byte

    Definition Classes
    Number
  13. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  14. def compare(that: A): Int

    Definition Classes
    RealLike
  15. final def eq(arg0: AnyRef): Boolean

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

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

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  18. final def getClass(): Class[_]

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

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

    Definition Classes
    Any
  21. def isRadical: Boolean

    Returns true if this is a radical expression, false otherwise.

    Returns true if this is a radical expression, false otherwise.

    Definition Classes
    RealLike
  22. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  23. final def notify(): Unit

    Definition Classes
    AnyRef
  24. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  25. def nroot(k: Int): A

    Definition Classes
    RealTransformRealLike
  26. def pow(k: Int): A

    Definition Classes
    RealLike
  27. def shortValue(): Short

    Definition Classes
    Number
  28. def signum: Int

    Definition Classes
    RealLike
  29. def sqrt: A

    Definition Classes
    RealLike
  30. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  31. def toString(): String

    Definition Classes
    AnyRef → Any
  32. def transform(num: A): A

    Override this to return the Real resulting from the tree.

    Override this to return the Real resulting from the tree.

    Definition Classes
    ConstantFolderRealTransform
  33. def unary_-(): A

    Definition Classes
    RealTransformRealLike
  34. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from RealTransform[A]

Inherited from RealLike[A]

Inherited from ScalaNumber

Inherited from java.lang.Number

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped