spire.algebra

Order

trait Order[A] extends PartialOrder[A]

The Order type class is used to define a total ordering on some type A. An order is defined by a relation <=, which obeys the following laws:

- either x <= y or y <= x (totality) - if x <= y and y <= x, then x == y (antisymmetry) - if x <= y and y <= z, then x <= z (transitivity)

The truth table for compare is defined as follows:

x <= y x >= y Int true true = 0 (corresponds to x == y) true false < 0 (corresponds to x < y) false true > 0 (corresponds to x > y)

By the totality law, x <= y and y <= x cannot be both false.

Self Type
Order[A]
Linear Supertypes
PartialOrder[A], Eq[A], Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Order
  2. PartialOrder
  3. Eq
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def compare(x: A, y: A): Int

  2. abstract def getClass(): Class[_]

    Definition Classes
    Any

Concrete Value Members

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

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

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

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

    Definition Classes
    Any
  5. def equals(arg0: Any): Boolean

    Definition Classes
    Any
  6. def eqv(x: A, y: A): Boolean

    Returns true if x and y are equivalent, false otherwise.

    Returns true if x and y are equivalent, false otherwise.

    Definition Classes
    OrderPartialOrderEq
  7. def gt(x: A, y: A): Boolean

    Definition Classes
    OrderPartialOrder
  8. def gteqv(x: A, y: A): Boolean

    Definition Classes
    OrderPartialOrder
  9. def hashCode(): Int

    Definition Classes
    Any
  10. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  11. def lt(x: A, y: A): Boolean

    Definition Classes
    OrderPartialOrder
  12. def lteqv(x: A, y: A): Boolean

    Definition Classes
    OrderPartialOrder
  13. def max(x: A, y: A): A

  14. def min(x: A, y: A): A

  15. def neqv(x: A, y: A): Boolean

    Returns false if x and y are equivalent, true otherwise.

    Returns false if x and y are equivalent, true otherwise.

    Definition Classes
    Eq
  16. def on[B](f: (B) ⇒ A): Order[B]

    Defines an order on B by mapping B to A using f and using As order to order B.

    Defines an order on B by mapping B to A using f and using As order to order B.

    Definition Classes
    OrderPartialOrderEq
  17. def partialCompare(x: A, y: A): Double

    Result of comparing x with y.

    Result of comparing x with y. Returns NaN if operands are not comparable. If operands are comparable, returns a Double whose sign is: - negative iff x < y - zero iff x === y - positive iff x > y

    Definition Classes
    OrderPartialOrder
  18. def pmax(x: A, y: A): Option[A]

    Returns Some(x) if x >= y, Some(y) if x < y, otherwise None.

    Returns Some(x) if x >= y, Some(y) if x < y, otherwise None.

    Definition Classes
    PartialOrder
  19. def pmin(x: A, y: A): Option[A]

    Returns Some(x) if x <= y, Some(y) if x > y, otherwise None.

    Returns Some(x) if x <= y, Some(y) if x > y, otherwise None.

    Definition Classes
    PartialOrder
  20. def reverse: Order[A]

    Defines an ordering on A where all arrows switch direction.

    Defines an ordering on A where all arrows switch direction.

    Definition Classes
    OrderPartialOrder
  21. def toString(): String

    Definition Classes
    Any
  22. def tryCompare(x: A, y: A): Option[Int]

    Result of comparing x with y.

    Result of comparing x with y. Returns None if operands are not comparable. If operands are comparable, returns Some[Int] where the Int sign is: - negative iff x < y - zero iff x == y - positive iff x > y

    Definition Classes
    PartialOrder

Inherited from PartialOrder[A]

Inherited from Eq[A]

Inherited from Any

Ungrouped