Spec-Zone.ru › Scala 3.1

Объект scala.concurrent.duration.FiniteDurationIsOrdered

Исходный код

объект FiniteDurationIsOrdered расширяет Ordering[FiniteDuration]

Надтипы
Тракт Ordering[FiniteDuration]
Тракт PartialOrdering[FiniteDuration]
Тракт Equiv[FiniteDuration]
Тракт Serializable
Тракт Comparator[FiniteDuration]
Класс Object
Тракт Matchable
Класс Any
Тип самого себя
FiniteDurationIsOrdered.type

Наследуемые классы-подобные

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

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

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

Наследуется из Ordering

Конкретные методы

Исходный код
def compare(a: FiniteDuration, b: FiniteDuration): Int

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

Исходный код
переопределенный def equiv(x: FiniteDuration, y: FiniteDuration): Boolean

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

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

Исходный код
переопределенный def gt(x: FiniteDuration, y: FiniteDuration): Boolean

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

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

Исходный код
переопределенный def gteq(x: FiniteDuration, y: FiniteDuration): Boolean

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

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

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

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

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

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

Наследуется из Ordering

Исходный код
переопределенный def lt(x: FiniteDuration, y: FiniteDuration): Boolean

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

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

Исходный код
переопределенный def lteq(x: FiniteDuration, y: FiniteDuration): Boolean

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

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

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

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

Наследуется из Ordering

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

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

Наследуется из Ordering

Исходный код
def on[U](f: U => FiniteDuration): 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[FiniteDuration]): Ordering[FiniteDuration]

Создаёт 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: FiniteDuration => S)(implicit ord: Ordering[S]): Ordering[FiniteDuration]

При заданном 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

Исходный код
переопределенный def reverse: Ordering[FiniteDuration]

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

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

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

def reversed(): Comparator[FiniteDuration]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Унаследованные неявные значения

Source
implicit def mkOrderingOps(lhs: FiniteDuration): 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.1.1/scala/concurrent/duration/FiniteDuration$$FiniteDurationIsOrdered$.html

Spec-Zone.ru

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