Spec-Zone.ru › Scala 3.1

Объект scala.math.IeeeOrdering

Класс-компаньон • Исходный код

объект IeeeOrdering расширяет IeeeOrdering

Наследуемые типы
Трейт IeeeOrdering
Трейт Ordering[Double]
Трейт PartialOrdering[Double]
Трейт Equiv[Double]
Трейт Serializable
Трейт Comparator[Double]
Класс Object
Трейт Matchable
Класс Any
Тип «self»
IeeeOrdering.type

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

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

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

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

Наследуется от Ordering

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

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

Наследуется от IeeeOrdering

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

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

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

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

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

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

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

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

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

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

Наследуется от Ordering

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

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

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

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

Исходный код
переопределенный def max[U <: Double](x: U, y: U): U

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

Исходный код
переопределенный def min[U <: Double](x: U, y: U): U

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

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

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

Исходя из 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[Double]

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

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

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

def reversed(): Comparator[Double]

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник
def tryCompare(x: Double, y: Double): Option[Int]

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

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

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

Источник
implicit def mkOrderingOps(lhs: Double): 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/math/Ordering$$Double$$IeeeOrdering$.html

Spec-Zone.ru

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