Spec-Zone.ru › Scala 3.2

Object Ordering.Long

Исходный код

object Long extends LongOrdering

Суператрибуты
Тракт LongOrdering
Тракт Ordering[Long]
Тракт PartialOrdering[Long]
Тракт Equiv[Long]
Тракт Serializable
Тракт Comparator[Long]
Класс Object
Тракт Matchable
Класс Any
Тип самого себя
Long.type

Наследуемые классы

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

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

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

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

Наследуемые методы

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

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

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

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

Наследован от LongOrdering

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

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

Классы-определения Ordering -> PartialOrdering -> Equiv
Наследован от Ordering

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

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

Классы-определения Ordering -> PartialOrdering
Наследован от Ordering

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

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

Классы-определения Ordering -> PartialOrdering
Наследован от Ordering

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

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

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

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

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

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

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

Классы определения Ordering -> PartialOrdering
Унаследовано от Ordering

Источник
override def lteq(x: Long, y: Long): Boolean

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

Классы определения Ordering -> PartialOrdering
Унаследовано от Ordering

Источник
def max[U <: Long](x: U, y: U): U

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

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

Источник
def min[U <: Long](x: U, y: U): U

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

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

Источник
def on[U](f: U => Long): Ordering[U]

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

def compare(x:U, y:U) = Ordering[T].compare(f(x), f(y))
Унаследовано от Ordering

Источник
def orElse(other: Ordering[Long]): Ordering[T]

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

Параметры значения
other

Ordering для использования, если этот Ordering возвращает ноль

Пример
case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
                          .orElse(Ordering.by[Pair, Int](_.b))
Унаследовано от Ordering

Источник
def orElseBy[S](f: Long => S)(implicit ord: Ordering[S]): Ordering[T]

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

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

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

Пример
case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
                          .orElseBy[Int](_.b)
Унаследовано от Ordering

Источник
override def reverse: Ordering[T]

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

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

Классы определения Ordering -> PartialOrdering
Унаследовано от Ordering

def reversed(): Comparator[T]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Source
implicit def mkOrderingOps(lhs: Long): 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$$Long$.html

Spec-Zone.ru

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