CachedReverse

sealed
trait CachedReverse[T] extends Ordering[T]

An ordering which caches the value of its reverse.

Source
Ordering.scala
trait Ordering[T]
trait Equiv[T]
trait Comparator[T]
class Object
trait Matchable
class Any
object Int

Type members

Inherited classlikes

class OrderingOps(lhs: T)

This inner class defines comparison operators available for T.

This inner class defines comparison operators available for T.

It can't extend AnyVal because it is not a top-level class or a member of a statically accessible object.

Inherited from
Ordering
Source
Ordering.scala

Value members

Concrete methods

final override
def isReverseOf(other: Ordering[_]): Boolean
Definition Classes
Source
Ordering.scala
final override
Definition Classes
Source
Ordering.scala

Inherited methods

def compare(x: T, y: T): Int

Returns an integer whose sign communicates how x compares to y.

Returns an integer whose sign communicates how x compares to y.

The result sign has the following meaning:

- negative if x < y - positive if x > y - zero otherwise (if x == y)

Inherited from
Ordering
Source
Ordering.scala
override
def equiv(x: T, y: T): Boolean

Return true if x == y in the ordering.

Return true if x == y in the ordering.

Definition Classes
Inherited from
Ordering
Source
Ordering.scala
override
def gt(x: T, y: T): Boolean

Return true if x > y in the ordering.

Return true if x > y in the ordering.

Definition Classes
Inherited from
Ordering
Source
Ordering.scala
override
def gteq(x: T, y: T): Boolean

Return true if x >= y in the ordering.

Return true if x >= y in the ordering.

Definition Classes
Inherited from
Ordering
Source
Ordering.scala
override
def lt(x: T, y: T): Boolean

Return true if x < y in the ordering.

Return true if x < y in the ordering.

Definition Classes
Inherited from
Ordering
Source
Ordering.scala
override
def lteq(x: T, y: T): Boolean

Return true if x <= y in the ordering.

Return true if x <= y in the ordering.

Definition Classes
Inherited from
Ordering
Source
Ordering.scala
def max[U <: T](x: U, y: U): U

Return x if x >= y, otherwise y.

Return x if x >= y, otherwise y.

Inherited from
Ordering
Source
Ordering.scala
def min[U <: T](x: U, y: U): U

Return x if x <= y, otherwise y.

Return x if x <= y, otherwise y.

Inherited from
Ordering
Source
Ordering.scala
def on[U](f: U => T): Ordering[U]

Given f, a function from U into T, creates an Ordering[U] whose compare function is equivalent to:

Given f, a function from U into T, creates an Ordering[U] whose compare function is equivalent to:

def compare(x:U, y:U) = Ordering[T].compare(f(x), f(y))
Inherited from
Ordering
Source
Ordering.scala
def orElse(other: Ordering[T]): Ordering[T]

Creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else the result of others compare function.

Creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else the result of others compare function.

Value Params
other

an Ordering to use if this Ordering returns zero

Example

case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
                          .orElse(Ordering.by[Pair, Int](_.b))
Inherited from
Ordering
Source
Ordering.scala
def orElseBy[S](f: T => S)(implicit ord: Ordering[S]): Ordering[T]

Given f, a function from T into S, creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else a result equivalent to:

Given f, a function from T into S, creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else a result equivalent to:

Ordering[S].compare(f(x), f(y))

This function is equivalent to passing the result of Ordering.by(f) to orElse.

Example

case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
                          .orElseBy[Int](_.b)
Inherited from
Ordering
Source
Ordering.scala
Inherited from
Comparator
def thenComparing[U <: Comparable[_ >: U <: <FromJavaObject>]](x$0: Function[_ >: T <: <FromJavaObject>, _ <: U]): Comparator[T]
Inherited from
Comparator
def thenComparing[U <: <FromJavaObject>](x$0: Function[_ >: T <: <FromJavaObject>, _ <: U], x$1: Comparator[_ >: U <: <FromJavaObject>]): Comparator[T]
Inherited from
Comparator
def thenComparing(x$0: Comparator[_ >: T <: <FromJavaObject>]): Comparator[T]
Inherited from
Comparator
def thenComparingDouble(x$0: ToDoubleFunction[_ >: T <: <FromJavaObject>]): Comparator[T]
Inherited from
Comparator
def thenComparingInt(x$0: ToIntFunction[_ >: T <: <FromJavaObject>]): Comparator[T]
Inherited from
Comparator
def thenComparingLong(x$0: ToLongFunction[_ >: T <: <FromJavaObject>]): Comparator[T]
Inherited from
Comparator
def tryCompare(x: T, y: T): Option[Int]

Returns whether a comparison between x and y is defined, and if so the result of compare(x, y).

Returns whether a comparison between x and y is defined, and if so the result of compare(x, y).

Inherited from
Ordering
Source
Ordering.scala

Implicits

Inherited implicits

implicit

This implicit method augments T with the comparison operators defined in scala.math.Ordering.Ops.

This implicit method augments T with the comparison operators defined in scala.math.Ordering.Ops.

Inherited from
Ordering
Source
Ordering.scala