Spec-Zone.ru › Scala 2.13 Library

Класс scala.util.Failure

final case class Failure[+T](exception: Throwable) extends Try[T] with Product with Serializable

Source
Try.scala
Линейные супертипы
Try[T], java.io.Serializable, Product, Equals, AnyRef, Any

Конструкторы экземпляров

new Failure(exception: Throwable)

Члены типа

final class WithFilter extends AnyRef

Нам нужен целый класс WithFilter, чтобы соблюдать контракт "не создавать новую коллекцию", даже если это, похоже, не имеет большого значения в коллекции с максимальным размером 1.

Definition Classes
Try

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

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

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

def ->[B](y: B): (Failure[T], B)

Неявный
Этот член добавлен с помощью неявного преобразования из Failure[T] в ArrowAssoc[Failure[T]], выполненного методом 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 collect[U](pf: PartialFunction[T, U]): Try[U]

Применяет заданную частичную функцию к значению из этого Success или возвращает это значение, если это Failure.

Классы-определения
Failure → Try

def ensuring(cond: (Failure[T]) => Boolean, msg: => Any): Failure[T]

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

def ensuring(cond: (Failure[T]) => Boolean): Failure[T]

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

def ensuring(cond: Boolean, msg: => Any): Failure[T]

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

def ensuring(cond: Boolean): Failure[T]

Неявный
Этот член добавлен с помощью неявного преобразования из Failure[T] в Ensuring[Failure[T]] с помощью метода 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

val exception: Throwable

def failed: Try[Throwable]

Инвертирует этот Try. Если это Failure, возвращает его исключение, заключённое в Success. Если это Success, возвращает Failure, содержащую UnsupportedOperationException.

Классы определения
Failure → Try

def filter(p: (T) => Boolean): Try[T]

Преобразует это в Failure если предикат не выполняется.

Классы определения
Failure → Try

def finalize(): Unit

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

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

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

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

def flatMap[U](f: (T) => Try[U]): Try[U]

Возвращает заданную функцию, применённую к значению из этого Success или возвращает это значение, если это Failure.

Определяющие классы
Failure → Try

def flatten[U](implicit ev: <:<[T, Try[U]]): Try[U]

Преобразует вложенный Try, т.е. Try типа Try[Try[T]], в не вложенный Try, т.е. Try типа Try[T].

Определяющие классы
Failure → Try

def fold[U](fa: (Throwable) => U, fb: (T) => U): U

Применяет fa если это Failure или fb, если это Success. Если сначала применена fb, и произошла ошибка, то применяется fa с этой ошибкой.

fa

функция, применяемая если это Failure

fb

функция, применяемая если это Success

возвращает

результат применения функции

Определяющие классы
Failure → Try
Пример:
    val result: Try[Int] = Try { string.toInt }
    log(result.fold(
      ex => "Operation failed with " + ex,
      v => "Operation produced value: " + v
    ))

def foreach[U](f: (T) => U): Unit

Применяет данную функцию f если это Success, в противном случае возвращает Unit, если это Failure.

Примечание: Если f вызывает ошибку, то этот метод может выбросить исключение.

Определяющие классы
Failure → Try

def formatted(fmtstr: String): String

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

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

def get: T

Возвращает значение из этого Success или выбрасывает исключение, если это Failure.

Определяющие классы
Failure → Try

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

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

возвращает

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

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

def getOrElse[U >: T](default: => U): U

Возвращает значение из этого Success или заданное default значение, если это Failure.

Примечание:: Это выбросит исключение, если это не успех, и вызов default тоже выбросит исключение.

Определяющие классы
Failure → Try

def isFailure: Boolean

Возвращает true если Try является Failure, false в противном случае.

Определяющие классы
Failure → Try

final def isInstanceOf[T0]: Boolean

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

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

returns

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

Definition Classes
Any

def isSuccess: Boolean

Возвращает true, если Try является Success; false в противном случае.

Definition Classes
Failure → Try

def map[U](f: (T) => U): Try[U]

Применяет заданную функцию к значению из этого Success или возвращает этот объект, если это Failure.

Definition Classes
Failure → Try

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

def orElse[U >: T](default: => Try[U]): Try[U]

Возвращает этот Try , если это Success, или заданный аргумент default, если это Failure.

Definition Classes
Failure → Try

def productElementNames: Iterator[String]

Итератор по именам всех элементов этого произведения.

Definition Classes
Product

def recover[U >: T](pf: PartialFunction[Throwable, U]): Try[U]

Применяет заданную функцию f, если это Failure, в противном случае возвращает этот объект, если это Success. Это как map для исключения.

Definition Classes
Failure → Try

def recoverWith[U >: T](pf: PartialFunction[Throwable, Try[U]]): Try[U]

Применяет заданную функцию f, если это Failure, в противном случае возвращает этот объект, если это Success. Это как flatMap для исключения.

Definition Classes
Failure → Try

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

Definition Classes
AnyRef

def toEither: Either[Throwable, T]

Возвращает Left с Throwable, если это Failure, в противном случае возвращает Right с значением Success.

Definition Classes
Failure → Try

def toOption: Option[T]

Возвращает None, если это Failure, или значение, если это Success.

Классы-определения
Failure → Try

def transform[U](s: (T) => Try[U], f: (Throwable) => Try[U]): Try[U]

Завершает этот Try, применив функцию f к этому объекту, если он типа Failure, или применив s, если это Success.

Классы-определения
Failure → Try

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()

final def withFilter(p: (T) => Boolean): WithFilter

Создаёт нестрогий фильтр, который в конечном итоге преобразует это в Failure , если предикат не удовлетворён.

Примечание: в отличие от filter, withFilter не создаёт новый Try. Вместо этого он ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.

Так как Try — коллекция из одного элемента, это может показаться немного избыточным, но это согласуется с withFilter для Option и других коллекций.

p

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

returns

объект класса WithFilter, который поддерживает map, flatMap, foreach, и withFilter операции. Все эти операции применяются к тем элементам этого Try, которые удовлетворяют предикату p.

Definition Classes
Try
Annotations
@inline()

© 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/util/Failure.html

Spec-Zone.ru

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