Spec-Zone.ru › Scala 3.1

Объект scala.math.Boolean

Исходный код

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

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

Унаследованные классы

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

def reversed(): Comparator[Boolean]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Наследуемые неявные параметры

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

Spec-Zone.ru

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