implicit final class ExtraRichOrdering[T] extends AnyVal
- Alphabetic
- By Inheritance
- ExtraRichOrdering
- AnyVal
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new ExtraRichOrdering(ord1: Ordering[T])
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
##(): Int
- Definition Classes
- Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
getClass(): Class[_ <: AnyVal]
- Definition Classes
- AnyVal → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
thenBy(ord2: Ordering[T]): Ordering[T]
Returns a new Ordering which compares elements using the specified Ordering if this Ordering returned
0
when comparing them.Returns a new Ordering which compares elements using the specified Ordering if this Ordering returned
0
when comparing them.This method is an alias of thenOrderingBy, intended to be used when chaining several calls in order to reduce verbosity, as in the following example:
case class IntTuple(a: Int, b: Int, c: Int, d: Int) object IntTuple { val orderingA: Ordering[IntTuple] = Ordering.by(_.a) val orderingB: Ordering[IntTuple] = Ordering.by(_.b) val orderingC: Ordering[IntTuple] = Ordering.by(_.c) val orderingD: Ordering[IntTuple] = Ordering.by(_.d) val fullOrdering: Ordering[IntTuple] = orderingA .thenOrderingBy(orderingB) .thenBy(orderingC) .thenBy(orderingD) }
- ord2
another Ordering with which to compare elements
- returns
a new Ordering which compares elements using the specified Ordering if this Ordering returned
0
when comparing them
- Annotations
- @inline()
-
def
thenBy[S](f: (T) ⇒ S)(implicit arg0: Ordering[S]): Ordering[T]
Returns a new Ordering which compares elements by applying a function (
f
) to them if this Ordering returned0
when comparing them.Returns a new Ordering which compares elements by applying a function (
f
) to them if this Ordering returned0
when comparing them.This method is an alias of thenOrderingBy, intended to be used when chaining several calls in order to reduce verbosity, as in the following example:
case class IntTuple(a: Int, b: Int, c: Int, d: Int) object IntTuple { val ordering: Ordering[IntTuple] = Ordering.by[IntTuple, Int](_.a) .thenBy(_.b) .thenBy(_.c) .thenBy(_.d) }
- S
the return type of
f
- f
a function mapping elements to some value to be compared
- returns
a new Ordering which compares elements by applying a function to them if this Ordering returned
0
when comparing them
- Annotations
- @inline()
- See also
-
def
thenOrderingBy(ord2: Ordering[T]): Ordering[T]
Returns a new Ordering which compares elements using the specified Ordering if this Ordering returned
0
when comparing them.Returns a new Ordering which compares elements using the specified Ordering if this Ordering returned
0
when comparing them.This method is intended to be used to build more complex Orderings from other Orderings, as in the following example:
case class PlayingCard(rank: Rank, suit: Suit) object PlayingCard { val rankOnlyOrdering: Ordering[PlayingCard] = Ordering.by(_.rank) val suitOnlyOrdering: Ordering[PlayingCard] = Ordering.by(_.suit) val fullOrdering: Ordering[PlayingCard] = rankOnlyOrdering.thenOrderingBy(suitOnlyOrdering) }
- ord2
another Ordering with which to compare elements
- returns
a new Ordering which compares elements using the specified Ordering if this Ordering returned
0
when comparing them
-
def
thenOrderingBy[S](f: (T) ⇒ S)(implicit ord2: Ordering[S]): Ordering[T]
Returns a new Ordering which compares elements by applying a function (
f
) to them if this Ordering returned0
when comparing them.Returns a new Ordering which compares elements by applying a function (
f
) to them if this Ordering returned0
when comparing them.This method is intended to be used to build more complex Orderings from other Orderings, as in the following example:
case class PlayingCard(rank: Rank, suit: Suit) object PlayingCard { val rankOnlyOrdering: Ordering[PlayingCard] = Ordering.by(_.rank) val fullOrdering: Ordering[PlayingCard] = rankOnlyOrdering.thenOrderingBy(_.suit) }
- S
the return type of
f
- f
a function mapping elements to some value to be compared
- returns
a new Ordering which compares elements by applying a function to them if this Ordering returned
0
when comparing them
-
def
toString(): String
- Definition Classes
- Any