IsomorphismEnum

trait IsomorphismEnum[F, G] extends Enum[F] with IsomorphismOrder[F, G]
trait Enum[F]
trait Order[F]
trait Equal[F]
class Object
trait Matchable
class Any

Type members

Inherited classlikes

trait EnumLaw
Inherited from
Enum
trait EqualLaw
Inherited from
Equal
trait OrderLaw
Inherited from
Order

Value members

Concrete methods

override
def pred(a: F): F
Definition Classes
override
def succ(a: F): F
Definition Classes

Inherited methods

def apply(x: F, y: F): Ordering
Inherited from
Order
override
def contramap[B](f: B => F): Order[B]
Definition Classes
Inherited from
Order
Inherited from
Enum
override
def equal(x: F, y: F): Boolean
Definition Classes
Inherited from
IsomorphismOrder
def equalIsNatural: Boolean
Returns

true, if equal(f1, f2) is known to be equivalent to f1 == f2

Inherited from
Equal
Inherited from
Equal
def from(a: F): EphemeralStream[F]
Inherited from
Enum
def fromStep(n: Int, a: F): EphemeralStream[F]
Inherited from
Enum
def fromStepTo(n: Int, a: F, z: F): EphemeralStream[F]
Inherited from
Enum
def fromStepToL(n: Int, a: F, z: F): IList[F]
Inherited from
Enum
def fromTo(a: F, z: F): EphemeralStream[F]
Inherited from
Enum
def fromToL(a: F, z: F): IList[F]
Inherited from
Enum
def greaterThan(x: F, y: F): Boolean
Inherited from
Order
def greaterThanOrEqual(x: F, y: F): Boolean
Inherited from
Order
def iso: IsoSet[F, G]
Inherited from
IsomorphismEqual
def lessThan(x: F, y: F): Boolean
Inherited from
Order
def lessThanOrEqual(x: F, y: F): Boolean
Inherited from
Order
def max(x: F, y: F): F
Inherited from
Order
def max: Option[F]
Inherited from
Enum
def min(x: F, y: F): F
Inherited from
Order
def min: Option[F]
Inherited from
Enum
override
def order(x: F, y: F): Ordering
Definition Classes
Inherited from
IsomorphismOrder
Inherited from
Order
def predState[X](f: F => X): State[F, X]

Produce a state value that executes the predecessor (pred) on each spin and executing the given function on the current value. This is useful to implement decremental looping. Evaluating the state value requires a beginning to decrement from.

Produce a state value that executes the predecessor (pred) on each spin and executing the given function on the current value. This is useful to implement decremental looping. Evaluating the state value requires a beginning to decrement from.

Value Params
f

The function to execute on each spin of the state value.

Inherited from
Enum
def predStateMax[X, Y](f: F => X, k: X => Y): Option[Y]

Produce a value that starts at the maximum (if it exists) and decrements through a state value with the given mapping function. This is useful to implement decremental looping.

Produce a value that starts at the maximum (if it exists) and decrements through a state value with the given mapping function. This is useful to implement decremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The mapping function.

Inherited from
Enum
def predStateMaxM[X, Y](f: F => X, k: X => State[F, Y]): Option[Y]

Produce a value that starts at the maximum (if it exists) and decrements through a state value with the given binding function. This is useful to implement decremental looping.

Produce a value that starts at the maximum (if it exists) and decrements through a state value with the given binding function. This is useful to implement decremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The binding function.

Inherited from
Enum
def predStateZero[X, Y](f: F => X, k: X => Y)(implicit m: Monoid[F]): Y

Produce a value that starts at zero (Monoid.zero) and decrements through a state value with the given mapping function. This is useful to implement decremental looping.

Produce a value that starts at zero (Monoid.zero) and decrements through a state value with the given mapping function. This is useful to implement decremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The mapping function.

m

The implementation of the zero function from which to start.

Inherited from
Enum
def predStateZeroM[X, Y](f: F => X, k: X => State[F, Y])(implicit m: Monoid[F]): Y

Produce a value that starts at zero (Monoid.zero) and decrements through a state value with the given binding function. This is useful to implement decremental looping.

Produce a value that starts at zero (Monoid.zero) and decrements through a state value with the given binding function. This is useful to implement decremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The binding function.

m

The implementation of the zero function from which to start.

Inherited from
Enum
def predn(n: Int, a: F): F
Inherited from
Enum
def predx: Kleisli[Option, F, F]

Moves to the predecessor, unless at the minimum.

Moves to the predecessor, unless at the minimum.

Inherited from
Enum
Inherited from
Order
def sort(x: F, y: F): (F, F)
Inherited from
Order
def succState[X](f: F => X): State[F, X]

Produce a state value that executes the successor (succ) on each spin and executing the given function on the current value. This is useful to implement incremental looping. Evaluating the state value requires a beginning to increment from.

Produce a state value that executes the successor (succ) on each spin and executing the given function on the current value. This is useful to implement incremental looping. Evaluating the state value requires a beginning to increment from.

Value Params
f

The function to execute on each spin of the state value.

Inherited from
Enum
def succStateMin[X, Y](f: F => X, k: X => Y): Option[Y]

Produce a value that starts at the minimum (if it exists) and increments through a state value with the given mapping function. This is useful to implement incremental looping.

Produce a value that starts at the minimum (if it exists) and increments through a state value with the given mapping function. This is useful to implement incremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The mapping function.

Inherited from
Enum
def succStateMinM[X, Y](f: F => X, k: X => State[F, Y]): Option[Y]

Produce a value that starts at the minimum (if it exists) and increments through a state value with the given binding function. This is useful to implement incremental looping.

Produce a value that starts at the minimum (if it exists) and increments through a state value with the given binding function. This is useful to implement incremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The binding function.

Inherited from
Enum
def succStateZero[X, Y](f: F => X, k: X => Y)(implicit m: Monoid[F]): Y

Produce a value that starts at zero (Monoid.zero) and increments through a state value with the given mapping function. This is useful to implement incremental looping.

Produce a value that starts at zero (Monoid.zero) and increments through a state value with the given mapping function. This is useful to implement incremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The mapping function.

m

The implementation of the zero function from which to start.

Inherited from
Enum
def succStateZeroM[X, Y](f: F => X, k: X => State[F, Y])(implicit m: Monoid[F]): Y

Produce a value that starts at zero (Monoid.zero) and increments through a state value with the given binding function. This is useful to implement incremental looping.

Produce a value that starts at zero (Monoid.zero) and increments through a state value with the given binding function. This is useful to implement incremental looping.

Value Params
f

The function to execute on each spin of the state value.

k

The binding function.

m

The implementation of the zero function from which to start.

Inherited from
Enum
def succn(n: Int, a: F): F
Inherited from
Enum
def succx: Kleisli[Option, F, F]

Moves to the successor, unless at the maximum.

Moves to the successor, unless at the maximum.

Inherited from
Enum
def toScalaOrdering: Ordering[F]
Note

Order.fromScalaOrdering(toScalaOrdering).order(x, y) = this.order(x, y)

Inherited from
Order

Inherited fields

Inherited from
Enum
Inherited from
Equal
Inherited from
Order

Implicits

Implicits

implicit
def G: Enum[G]