Spec-Zone.ru › Scala 3.1

Объект scala.math.IeeeOrdering

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

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

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

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

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

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

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

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

Наследованные методы

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

Наследованный от IeeeOrdering

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

Определяющие классы IeeeOrdering -> Ordering -> PartialOrdering -> Equiv
Наследованный от IeeeOrdering

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

Определяющие классы IeeeOrdering -> Ordering -> PartialOrdering
Наследованный от IeeeOrdering

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

Определяющие классы IeeeOrdering -> Ordering -> PartialOrdering
Наследованный от IeeeOrdering

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

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

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

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

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

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

Определяющие классы IeeeOrdering -> Ordering -> PartialOrdering
Наследованный от IeeeOrdering

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

Определяющие классы IeeeOrdering -> Ordering -> PartialOrdering
Наследованный от IeeeOrdering

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

Определяющие классы IeeeOrdering -> Ordering
Наследованный от IeeeOrdering

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

Определяющие классы IeeeOrdering -> Ordering
Наследованный от IeeeOrdering

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

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

Учитывая 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[Float]

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

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

Определяющие классы Ordering -> PartialOrdering
Наследованный от Ordering

def reversed(): Comparator[Float]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Spec-Zone.ru

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