Spec-Zone.ru › Scala 3.2

Object Ordering.Unit

Исходный код

object Unit extends UnitOrdering

Supertypes
trait UnitOrdering
trait Ordering[Unit]
trait PartialOrdering[Unit]
trait Equiv[Unit]
trait Serializable
trait Comparator[Unit]
class Object
trait Matchable
class Any
Self type
Unit.type

Inherited classlikes

Исходный код
class OrderingOps(lhs: T)

Этот внутренний класс определяет операторы сравнения, доступные для T.

Он не может расширять AnyVal , потому что это не класс верхнего уровня или член статически доступного объекта.

Inherited from Ordering

Inherited methods

Исходный код
def compare(x: Unit, y: Unit): Int

Возвращает целое число, знак которого указывает, как x сравнивается с y.

Знак результата имеет следующее значение:

- отрицательный, если x < y - положительный, если x > y - нулевой, если x == y

Inherited from UnitOrdering

Исходный код
override def equiv(x: Unit, y: Unit): Boolean

Возвращает true, если x равно y в порядке сортировки.

Definition Classes Ordering -> PartialOrdering -> Equiv
Inherited from Ordering

Исходный код
override def gt(x: Unit, y: Unit): Boolean

Возвращает true, если x > y в порядке сортировки.

Definition Classes Ordering -> PartialOrdering
Inherited from Ordering

Исходный код
override def gteq(x: Unit, y: Unit): Boolean

Возвращает true, если x >= y в порядке сортировки.

Definition Classes Ordering -> PartialOrdering
Inherited from Ordering

Исходный код
def isReverseOf(other: Ordering[_]): Boolean

Возвращает true, если другой порядок является обратным порядком этого.

Эквивалентно other == this.reverse.

Реализации должны переопределять этот метод только в том случае, если они переопределяют reverse также.

Inherited from Ordering

Исходный код
override def lt(x: Unit, y: Unit): Boolean

Возвращает true, если x < y в порядке сортировки.

Definition Classes Ordering -> PartialOrdering
Inherited from Ordering

Исходный код
override def lteq(x: Unit, y: Unit): Boolean

Возвращает true, если x <= y в порядке сортировки.

Definition Classes Ordering -> PartialOrdering
Inherited from Ordering

Исходный код
def max[U <: Unit](x: U, y: U): U

Возвращает x , если x >= y, в противном случае y.

Inherited from Ordering

Исходный код
def min[U <: Unit](x: U, y: U): U

Возвращает x , если x <= y, в противном случае y.

Inherited from Ordering

Исходный код
def on[U](f: U => Unit): Ordering[U]

Взяв функцию f из U в T, создает Ordering[U], чья функция сравнения эквивалентна:

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

Исходный код
def orElse(other: Ordering[Unit]): Ordering[T]

Создаёт Ordering[T], чья функция сравнения возвращает результат функции сравнения этого Ordering, если она не равна нулю, а иначе - результат функции сравнения other.

Value parameters
other

Ordering, который используется, если этот Ordering возвращает ноль

Example
case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
                          .orElse(Ordering.by[Pair, Int](_.b))
Inherited from Ordering

Исходный код
def orElseBy[S](f: Unit => S)(implicit ord: Ordering[S]): Ordering[T]

Взяв функцию f из T в S, создаёт Ordering[T], чья функция сравнения возвращает результат функции сравнения этого Ordering, если она не равна нулю, иначе результат, эквивалентный:

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

Эта функция эквивалентна передаче результата Ordering.by(f) в orElse.

Example
case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
                          .orElseBy[Int](_.b)
Inherited from Ordering

Исходный код
override def reverse: Ordering[T]

Возвращает обратный порядок этого.

Реализации, переопределяющие этот метод, ОБЯЗАТЕЛЬНО должны переопределять isReverseOf также, если они изменяют поведение (например, кэширование не требует переопределения).

Definition Classes Ordering -> PartialOrdering
Inherited from Ordering

def reversed(): Comparator[T]

Inherited from Comparator

def thenComparing[U <: Comparable[_ >: U <: <<FromJavaObject>]](x$0: Function[_ >: Unit <: <<FromJavaObject>>, _ <: U]): Comparator[T]

Унаследовано от Comparator

def thenComparing[U <: <<FromJavaObject>]](x$0: Function[_ >: Unit <: <<FromJavaObject>>, _ <: U], x$1: Comparator[_ >: U <: <<FromJavaObject>>]): Comparator[T]

Унаследовано от Comparator

def thenComparing(x$0: Comparator[_ >: Unit <: <<FromJavaObject>>]): Comparator[T]

Унаследовано от Comparator

def thenComparingDouble(x$0: ToDoubleFunction[_ >: Unit <: <<FromJavaObject>>]): Comparator[T]

Унаследовано от Comparator

def thenComparingInt(x$0: ToIntFunction[_ >: Unit <: <<FromJavaObject>>]): Comparator[T]

Унаследовано от Comparator

def thenComparingLong(x$0: ToLongFunction[_ >: Unit <: <<FromJavaObject>>]): Comparator[T]

Унаследовано от Comparator

Source
def tryCompare(x: Unit, y: Unit): Option[Int]

Возвращает, определена ли операция сравнения между x и y, и если да, то результат compare(x, y).

Унаследовано от Ordering

Унаследованные неявные методы

Source
implicit def mkOrderingOps(lhs: Unit): OrderingOps

Этот неявный метод дополняет T операторами сравнения, определёнными в scala.math.Ordering.Ops.

Унаследовано от Ordering

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/math/Ordering$$Unit$.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API