Spec-Zone.ru › Scala 2.13 Library

Объект scala.Function

объект Function

Модуль, определяющий служебные методы для функционального программирования высшего порядка.

Исходный код
Function.scala
С

1.0

Линейные надтипы
AnyRef, Any

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

final def !=(arg0: Any): Boolean

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

возвращает

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

Классы-определения
AnyRef → Any

final def ##(): Int

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

возвращает

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

Классы-определения
AnyRef → Any

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 chain[T](fs: collection.Seq[(T) => T]): (T) => T

Учитывая последовательность функций f1, ..., fn, вернуть функцию f1 andThen ... andThen fn.

fs

Указанная последовательность функций

def clone(): AnyRef

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

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

возвращает

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

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

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

def const[T, U](x: T)(y: U): T

final def eq(arg0: AnyRef): Boolean

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

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

    Он согласован: для любых не-null экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого не-null экземпляра 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 finalize(): Unit

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

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

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

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

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

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

def hashCode(): Int

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

final def isInstanceOf[T0]: Boolean

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

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

returns

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

Definition Classes
Any

final def ne(arg0: AnyRef): Boolean

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

returns

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

Definition Classes
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

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

Definition Classes
AnyRef

def toString(): String

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

returns

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

Definition Classes
AnyRef → Any

def tupled[T1, T2, T3, T4, T5, R](f: (T1, T2, T3, T4, T5) => R): ((T1, T2, T3, T4, T5)) => R

Преобразование в кортеж для функций арности 5. Преобразует функцию арности 5 в одноместную функцию, принимающую 5-кортеж аргументов.

def tupled[T1, T2, T3, T4, R](f: (T1, T2, T3, T4) => R): ((T1, T2, T3, T4)) => R

Преобразование в кортеж для функций арности 4. Преобразует функцию арности 4 в одноместную функцию, принимающую 4-кортеж аргументов.

def tupled[T1, T2, T3, R](f: (T1, T2, T3) => R): ((T1, T2, T3)) => R

Преобразование в кортеж для функций арности 3. Преобразует функцию арности 3 в одноместную функцию, принимающую тройку аргументов.

def tupled[T1, T2, R](f: (T1, T2) => R): ((T1, T2)) => R

Упаковка для функций арности 2. Это преобразует функцию арности 2 в унарную функцию, которая принимает пару аргументов.

Примечание

Эти функции предназначены для устаревания, но это приостановлено в ожидании улучшенного вывода типов для упаковки анонимных функций.

def uncurried[T1, T2, T3, T4, T5, R](f: (T1) => (T2) => (T3) => (T4) => (T5) => R): (T1, T2, T3, T4, T5) => R

def uncurried[T1, T2, T3, T4, R](f: (T1) => (T2) => (T3) => (T4) => R): (T1, T2, T3, T4) => R

def uncurried[T1, T2, T3, R](f: (T1) => (T2) => (T3) => R): (T1, T2, T3) => R

def uncurried[T1, T2, R](f: (T1) => (T2) => R): (T1, T2) => R

Разделение для функций арности 2. Это преобразует унарную функцию, возвращающую другую унарную функцию, в функцию арности 2.

def unlift[T, R](f: (T) => Option[R]): PartialFunction[T, R]

Преобразует функцию A => Option[B] в PartialFunction[A, B].

Важное примечание: это преобразование подразумевает, что исходная функция может вызываться 2 или более раз при каждом логическом вызове, потому что единственный способ предоставить реализацию isDefinedAt — это вызвать функцию и проверить значение возврата. См. также scala.PartialFunction, метод applyOrElse.

f

функция T => Option[R]

возвращает

частичная функция, определенная для тех входных данных, где f возвращает Some(_), и неопределенная, где f возвращает None.

См. также

scala.PartialFunction, метод lift.

def untupled[T1, T2, T3, T4, T5, R](f: ((T1, T2, T3, T4, T5)) => R): (T1, T2, T3, T4, T5) => R

Разделение для функций арности 5. Это преобразует функцию, принимающую 5-кортеж аргументов, в функцию арности 5, которая принимает каждый аргумент по отдельности.

def untupled[T1, T2, T3, T4, R](f: ((T1, T2, T3, T4)) => R): (T1, T2, T3, T4) => R

Разделение для функций арности 4. Это преобразует функцию, принимающую 4-кортеж аргументов, в функцию арности 4, которая принимает каждый аргумент по отдельности.

def untupled[T1, T2, T3, R](f: ((T1, T2, T3)) => R): (T1, T2, T3) => R

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

def untupled[T1, T2, R](f: ((T1, T2)) => R): (T1, T2) => R

Разделение для функций арности 2. Это преобразует функцию, принимающую пару аргументов, в бинарную функцию, которая принимает каждый аргумент по отдельности.

final def wait(): Unit

Классы-определения
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

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

Классы-определения
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Классы-определения
AnyRef
Аннотации
@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/Function$.html

Spec-Zone.ru

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