The PartialOrder
type class is used to define a partial ordering on some type A
.
A partial order is defined by a relation <=, which obeys the following laws:
-
x <= x (reflexivity)
-
if x <= y and y <= x, then x = y (anti-symmetry)
-
if x <= y and y <= z, then x <= z (transitivity)
To compute both <= and >= at the same time, we use a Double number to encode the result of the comparisons x <= y and x >= y. The truth table is defined as follows:
x <= y |
x >= y |
result |
note |
---|---|---|---|
true |
true |
0.0 |
(corresponds to x = y) |
false |
false |
NaN |
(x and y cannot be compared) |
true |
false |
-1.0 |
(corresponds to x < y) |
false |
true |
1.0 |
(corresponds to x > y) |
Attributes
- Companion
- object
- Source
- PartialOrder.scala
- Graph
-
- Supertypes
- Known subtypes
-
class BitSetPartialOrderclass LazyListPartialOrder[A]class ListPartialOrder[A]class OptionPartialOrder[A]class QueuePartialOrder[A]class SeqPartialOrder[A]class SetPartialOrder[A]class StreamPartialOrder[A]class VectorPartialOrder[A]trait Order[A]class BigDecimalOrderclass BigIntOrderclass BooleanOrderclass ByteOrderclass CharOrderclass DeadlineOrderclass DoubleOrderclass DurationOrderclass FiniteDurationOrderclass FloatOrderclass IntOrderclass LazyListOrder[A]class ListOrder[A]class LongOrderclass OptionOrder[A]class QueueOrder[A]class SeqOrder[A]class ShortOrderclass SortedSetOrder[A]class SortedSetOrder[A]class StreamOrder[A]class StringOrderclass SymbolOrderclass UnitOrderclass VectorOrder[A]object Oobject OShow all
- Self type
-
PartialOrder[A]
Members list
Value members
Abstract methods
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
Concrete methods
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
= y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
> y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
>= y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
< y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Returns true if x
<= y
, false otherwise.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double.
Like partialCompare
, but returns a cats.kernel.Comparison instead of an Double. Has the benefit of being able to pattern match on, but not as performant.
Attributes
- Source
- PartialOrder.scala
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala
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
Attributes
- Source
- PartialOrder.scala