An ordered version of Ring.
Attributes
- Companion
- object
- Experimental
- true
- Graph
-
- Supertypes
-
trait OrderedDifferenceSemiring[X]trait OrderedSemiring[X]trait OrderedMultiplicativeMonoid[X]trait OrderedMultiplicativeIdentity[X]trait OrderedMultiplicativeSemigroup[X]trait OrderedAdditiveGroup[X]trait OrderedAdditiveInverse[X]trait OrderedDifferenceMonoid[X]trait OrderedAdditiveMonoid[X]trait OrderedAdditiveIdentity[X]trait OrderedAdditiveSemigroup[X]trait Ordering[X]trait PartialOrdering[X]trait Equiv[X]trait Serializabletrait Comparator[X]trait Ring[X]trait DifferenceSemiring[X]trait Semiring[X]trait MultiplicativeMonoid[X]trait MultiplicativeIdentity[X]trait MultiplicativeSemigroup[X]trait AdditiveGroup[X]trait AdditiveInverse[X]trait DifferenceMonoid[X]trait AdditiveMonoid[X]trait AdditiveIdentity[X]trait AdditiveSemigroup[X]class Objecttrait Matchableclass AnyShow all
- Known subtypes
Members list
Type members
Inherited classlikes
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.
Attributes
- Inherited from:
- Ordering
- Supertypes
-
class Objecttrait Matchableclass Any
Value members
Concrete methods
Computes the sign of a value x, represented by one for positive, negativeOne for negative, or zero for itself.
Computes the sign of a value x, represented by one for positive, negativeOne for negative, or zero for itself.
Attributes
Inherited methods
Computes the absolute value of a value x.
Returns true if x == y in the ordering.
Returns true if x == y in the ordering.
Attributes
- Definition Classes
-
Ordering -> PartialOrdering -> Equiv
- Inherited from:
- Ordering
Returns true if x > y in the ordering.
Returns true if x > y in the ordering.
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Returns true if x >= y in the ordering.
Returns true if x >= y in the ordering.
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Attributes
- Returns
-
trueif a value x is strictly negative, i.e.x < 0. - Inherited from:
- OrderedAdditiveIdentity
Attributes
- Returns
-
trueif a value x is positive or zero, i.e.x ≥ 0. - Inherited from:
- OrderedAdditiveIdentity
Attributes
- Returns
-
trueif a value x is negative or zero, i.e.x ≤ 0. - Inherited from:
- OrderedAdditiveIdentity
Attributes
- Returns
-
trueif a value x is strictly positive, i.e.x > 0. - Inherited from:
- OrderedAdditiveIdentity
Returns whether or not the other ordering is the opposite ordering of this one.
Returns whether or not the other ordering is the opposite ordering of this one.
Equivalent to other == this.reverse.
Implementations should only override this method if they are overriding reverse as well.
Attributes
- Inherited from:
- Ordering
Returns true if x < y in the ordering.
Returns true if x < y in the ordering.
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Returns true if x <= y in the ordering.
Returns true if x <= y in the ordering.
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Returns x if x >= y, otherwise y.
Returns x if x >= y, otherwise y.
Attributes
- Inherited from:
- Ordering
Returns x if x <= y, otherwise y.
Returns x if x <= y, otherwise y.
Attributes
- Inherited from:
- Ordering
The unique representation of -1 in this algebra system.
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))
Attributes
- Inherited from:
- Ordering
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 parameters
- other
-
an Ordering to use if this Ordering returns zero
Attributes
- Example
-
case class Pair(a: Int, b: Int) val pairOrdering = Ordering.by[Pair, Int](_.a) .orElse(Ordering.by[Pair, Int](_.b)) - Inherited from:
- Ordering
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.
Attributes
- Example
-
case class Pair(a: Int, b: Int) val pairOrdering = Ordering.by[Pair, Int](_.a) .orElseBy[Int](_.b) - Inherited from:
- Ordering
Computes x raised to the power n, for any non-negative n.
Computes x raised to the power n, for any non-negative n.
Attributes
- Throws
-
IllegalArgumentException
if
n < 0. - Definition Classes
- Inherited from:
- MultiplicativeMonoid
Computes the product of x and all values in xss, i.e. x × xs₁ × xs₂ × ….
Computes the product of x and all values in xss, i.e. x × xs₁ × xs₂ × ….
Attributes
- Inherited from:
- MultiplicativeSemigroup
Computes the product of all values in xs, i.e. xs₁ × xs₂ × …, or else one if xs is empty.
Computes the product of all values in xs, i.e. xs₁ × xs₂ × …, or else one if xs is empty.
Attributes
- Inherited from:
- MultiplicativeMonoid
Computes the product of all values in xs, i.e. xs₁ × xs₂ × …, or else None if xs is empty.
Computes the product of all values in xs, i.e. xs₁ × xs₂ × …, or else None if xs is empty.
Attributes
- Inherited from:
- MultiplicativeSemigroup
Returns the opposite ordering of this one.
Returns the opposite ordering of this one.
Implementations overriding this method MUST override isReverseOf as well if they change the behavior at all (for example, caching does not require overriding it).
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Attributes
- Inherited from:
- Comparator
Computes x multiplied by n, for any integer n.
Computes x multiplied by n, for any integer n.
Attributes
- Definition Classes
- Inherited from:
- AdditiveGroup
Computes the difference between two values x and y, i.e. x - y.
Computes the difference between two values x and y, i.e. x - y.
Attributes
- Definition Classes
- Inherited from:
- AdditiveGroup
Computes the sum of x and all values in xs, i.e. x + xs₁ + xs₂ + ….
Computes the sum of x and all values in xs, i.e. x + xs₁ + xs₂ + ….
Attributes
- Inherited from:
- AdditiveSemigroup
Computes the sum of all values in xs, i.e. xs₁ + xs₂ + …, or else zero if xs is empty.
Computes the sum of all values in xs, i.e. xs₁ + xs₂ + …, or else zero if xs is empty.
Attributes
- Inherited from:
- AdditiveMonoid
Computes the sum of all values in xs, i.e. xs₁ + xs₂ + …, or else None if xs is empty.
Computes the sum of all values in xs, i.e. xs₁ + xs₂ + …, or else None if xs is empty.
Attributes
- Inherited from:
- AdditiveSemigroup
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
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).
Attributes
- Inherited from:
- Ordering
Inherited and Abstract methods
Computes the sum of two values x and y, i.e. x + y.
Computes the sum of two values x and y, i.e. x + y.
Attributes
- Note
-
All implementations must be associative, i.e.
(x + y) + z == x + (y + z). - Inherited from:
- AdditiveSemigroup
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)
Attributes
- Inherited from:
- Ordering
Computes the product of two values x and y, i.e. x × y.
Computes the product of two values x and y, i.e. x × y.
Attributes
- Note
-
All implementations must be associative, i.e.
(x × y) × z == x × (y × z). - Inherited from:
- MultiplicativeSemigroup
Computes the additive inverse (negative) of a value x, i.e. -x.
Computes the additive inverse (negative) of a value x, i.e. -x.
Attributes
- Note
-
All implementations must be involutions, i.e.
negate(negate(x)) == x. - Inherited from:
- AdditiveInverse
The unique representation of the multiplicative identity (1) in this algebra system. Typically corresponds to values such as 1 or 1.0F.
The unique representation of the multiplicative identity (1) in this algebra system. Typically corresponds to values such as 1 or 1.0F.
Attributes
- Note
-
All implementations must obey the identity property, i.e.
x × one == one × x == x. - Inherited from:
- MultiplicativeIdentity
The unique representation of the additive identity (0) in this algebra system. Typically corresponds to values such as 0, 0.0F, or Seq.empty.
The unique representation of the additive identity (0) in this algebra system. Typically corresponds to values such as 0, 0.0F, or Seq.empty.
Attributes
- Note
-
All implementations must obey the identity property, i.e.
x + zero == zero + x == x. - Inherited from:
- AdditiveIdentity
Implicits
Inherited implicits
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.
Attributes
- Inherited from:
- Ordering