Spec-Zone.ru › Scala 2.13 Library

Трейт scala.math.Ordering.SymbolOrdering

Трейт SymbolOrdering extends Ordering[Symbol]

Источник
Ordering.scala
Линейные надтипы
Ordering[Symbol], PartialOrdering[Symbol], Equiv[Symbol], java.io.Serializable, Comparator[Symbol], AnyRef, Any
Известные подклассы
Symbol

Члены типа

классOrderingOps extends AnyRef

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

Определяющие классы
Ordering

Члены-значения

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

возвращает

true если !(this == that), в противном случае false.

Определяющие классы
AnyRef → Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых значений возвращает хэш-значение, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## вернёт одно и то же хэш-значение для каждого из них. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.

возвращает

хэш-значение, согласованное с ==

Определяющие классы
AnyRef → Any

def +(other: String): String

Неявный
Этот член добавлен неявным преобразованием из SymbolOrdering вany2stringadd[SymbolOrdering] с помощью метода any2stringadd в scala.Predef.
Определяющие классы
any2stringadd

def ->[B](y: B): (SymbolOrdering, B)

Неявный
Этот член добавлен неявным преобразованием из SymbolOrdering вArrowAssoc[SymbolOrdering] с помощью метода ArrowAssoc в scala.Predef.
Определяющие классы
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Определяющие классы
AnyRef → Any

final def asInstanceOf[T0]: T0

Приведение типа объекта-получателя к типу T0.

Обратите внимание, что успех приведения в ходе выполнения зависит от правил стирания в Scala. Поэтому выражение 1.asInstanceOf[String] бросит ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] нет. В последнем примере, поскольку аргумент типа стирается при компиляции, невозможно проверить, относятся ли элементы списка к требуемому типу.

возвращает

объект-получатель.

Определяющие классы
Any
Исключения

ClassCastException если объект-получатель не является экземпляром стирания типа T0.

def clone(): AnyRef

Создаёт копию объекта-получателя.

Реализация метода clone по умолчанию зависит от платформы.

возвращает

копия объекта-получателя.

Атрибуты
protected[java.lang]
Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

не указано SLS в качестве члена AnyRef

def compare(x: Symbol, y: Symbol): Int

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

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

    отрицательный, если x < yположительный, если x > yноль в противном случае (если x == y)
Определяющие классы
SymbolOrdering → Ordering → Comparator

def ensuring(cond: (SymbolOrdering) => Boolean, msg: => Any): SymbolOrdering

Неявный
Этот член добавлен неявным преобразованием из SymbolOrdering вEnsuring[SymbolOrdering] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: (SymbolOrdering) => Boolean): SymbolOrdering

Неявный
Этот член добавлен неявным преобразованием из SymbolOrdering вEnsuring[SymbolOrdering] при помощи метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean, msg: => Any): SymbolOrdering

Неявный
Этот член добавлен неявным преобразованием из SymbolOrdering вEnsuring[SymbolOrdering] при помощи метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean): SymbolOrdering

Неявный
Этот член добавлен неявным преобразованием из SymbolOrdering вEnsuring[SymbolOrdering] при помощи метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности на непустых экземплярах AnyRef, и имеет три дополнительных свойства:

    Он согласован: для любых непустых экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого непустого экземпляра x типа AnyRef, вызовы x.eq(null) и null.eq(x) возвращают false. null.eq(null) возвращает true.

При переопределении методов equals или hashCode важно обеспечить согласованность их поведения с равенством по ссылке. Поэтому, если два объекта ссылаются друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое значение хеша (o1.hashCode == o2.hashCode).

возвращает

true если аргумент является ссылкой на объект-получатель; false в противном случае.

Определяющие классы
AnyRef

def equals(arg0: AnyRef): Boolean

Метод равенства для ссылочных типов. Реализация по умолчанию делегирует вызов eq.

См. также equals в scala.Any.

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Определяющие классы
AnyRef → Any

def equiv(x: Symbol, y: Symbol): Boolean

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

Определяющие классы
Ordering → PartialOrdering → Equiv

def finalize(): Unit

Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.

Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие с finalize и нелокальными возвратами и исключениями, зависят от платформы.

Атрибуты
protected[java.lang]
Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.Throwable])
Примечание

не указано SLS как член AnyRef

def formatted(fmtstr: String): String

Возвращает строку, отформатированную согласно заданной строке format. Формат строк аналогичен String.format (@см. java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из SymbolOrdering вStringFormat[SymbolOrdering] при помощи метода StringFormat в scala.Predef.
Определяющие классы
StringFormat
Аннотации
@inline()

final def getClass(): Class[_ <: AnyRef]

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

returns

объект класса, соответствующий времени выполнения типа получателя.

Определяющие классы
AnyRef → Any
Аннотации
@native()

def gt(x: Symbol, y: Symbol): Boolean

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

Определяющие классы
Ordering → PartialOrdering

def gteq(x: Symbol, y: Symbol): Boolean

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

Определяющие классы
Ordering → PartialOrdering

def hashCode(): Int

Метод hashCode для ссылочных типов. См. hashCode в scala.Any.

returns

хеш-код для этого объекта.

Определяющие классы
AnyRef → Any
Аннотации
@native()

final def isInstanceOf[T0]: Boolean

Проверяет, является ли динамический тип объекта получателя T0.

Обратите внимание, что результат теста зависит от семантики стирания типов в Scala. Поэтому выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. Во втором примере, поскольку тип аргумента стирается во время компиляции, невозможно проверить, являются ли содержимое списка указанного типа.

returns

true, если объект получателя является экземпляром стирания типа T0; false в противном случае.

Определяющие классы
Any

def isReverseOf(other: Ordering[_]): Boolean

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

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

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

Определяющие классы
Ordering

def lt(x: Symbol, y: Symbol): Boolean

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

Определяющие классы
Ordering → PartialOrdering

def lteq(x: Symbol, y: Symbol): Boolean

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

Определяющие классы
Ordering → PartialOrdering

def max[U <: Symbol](x: U, y: U): U

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

Определяющие классы
Ordering

def min[U <: Symbol](x: U, y: U): U

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

Определяющие классы
Ordering

implicit def mkOrderingOps(lhs: Symbol): OrderingOps

Этот неявный метод расширяет T операторами сравнения, определенными в scala.math.Ordering.Ops.

Определяющие классы
Ordering

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

returns

true, если аргумент не является ссылкой на объект получателя; false в противном случае.

Определяющие классы
AnyRef

final def notify(): Unit

Разбуждает единственную нить, которая ожидает монитор объекта-приёмника.

Definition Classes
AnyRef
Annotations
@native()
Note

не указано SLS в качестве члена AnyRef

final def notifyAll(): Unit

Разбуждает все нити, которые ожидают монитор объекта-приёмника.

Definition Classes
AnyRef
Annotations
@native()
Note

не указано SLS в качестве члена AnyRef

def on[U](f: (U) => Symbol): Ordering[U]

На основе функции f, которая преобразует U в T, создаёт Ordering[U], чья функция сравнения эквивалентна:

def compare(x:U, y:U) = Ordering[T].compare(f(x), f(y))
Definition Classes
Ordering

def orElse(other: Ordering[Symbol]): Ordering[Symbol]

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

other

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

Definition Classes
Ordering
Пример:
    case class Pair(a: Int, b: Int)
    
    val pairOrdering = Ordering.by[Pair, Int](_.a)
                               .orElse(Ordering.by[Pair, Int](_.b))

def orElseBy[S](f: (Symbol) => S)(implicit ord: Ordering[S]): Ordering[Symbol]

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

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

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

Definition Classes
Ordering
Пример:
    case class Pair(a: Int, b: Int)
    
    val pairOrdering = Ordering.by[Pair, Int](_.a)
                               .orElseBy[Int](_.b)

def reverse: Ordering[Symbol]

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

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

Definition Classes
Ordering → PartialOrdering

def reversed(): Comparator[Symbol]

Definition Classes
Comparator

final def synchronized[T0](arg0: => T0): T0

Definition Classes
AnyRef

def thenComparing[U <: Comparable[_ >: U <: AnyRef]](arg0: java.util.function.Function[_ >: Symbol <: AnyRef, _ <: U]): Comparator[Symbol]

Definition Classes
Comparator

def thenComparing[U <: AnyRef](arg0: java.util.function.Function[_ >: Symbol <: AnyRef, _ <: U], arg1: Comparator[_ >: U <: AnyRef]): Comparator[Symbol]

Definition Classes
Comparator

def thenComparing(arg0: Comparator[_ >: Symbol <: AnyRef]): Comparator[Symbol]

Definition Classes
Comparator

def thenComparingDouble(arg0: ToDoubleFunction[_ >: Symbol <: AnyRef]): Comparator[Symbol]

Definition Classes
Comparator

def thenComparingInt(arg0: ToIntFunction[_ >: Symbol <: AnyRef]): Comparator[Symbol]

Definition Classes
Comparator

def thenComparingLong(arg0: ToLongFunction[_ >: Symbol <: AnyRef]): Comparator[Symbol]

Definition Classes
Comparator

def toString(): String

Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это объединение имени класса, "@" и хэш-кода объекта в шестнадцатеричном формате.

returns

строковое представление объекта.

Definition Classes
AnyRef → Any

def tryCompare(x: Symbol, y: Symbol): Some[Int]

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

Definition Classes
Ordering → PartialOrdering

final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException]) @native()

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/math/Ordering$$SymbolOrdering.html

Spec-Zone.ru

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