Spec-Zone.ru › Scala 2.13 Library

Класс scala.util.control.Exception.Catch

класс Catch[+T] extends Described

Контейнерный класс для логики catch/finally.

Передайте другое значение для rethrow, если вы хотите, возможно, неразумно разрешить перехват управляющих исключений и других исключений, которые остальная часть мира может ожидать получить.

T

тип результата тел, используемых в блоках try и catch

Источник
Exception.scala
Линейные супертипы
Described, AnyRef, Any

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

новый Catch(pf: Catcher[T], fin: Option[Finally] = None, rethrow: (Throwable) => Boolean = shouldRethrow)

pf

Частичная функция, используемая при применении логики catch для определения значения результата

fin

Логика finally, которая, если определена, будет вызвана после логики catch

rethrow

Предикат по исключениям, определяющий, когда необходимо повторно выбросить пойманное Throwable

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

final def !=(arg0: Any): Boolean

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

returns

true если !(this == that), иначе false.

Definition Classes
AnyRef → Any

final def ##(): Int

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

returns

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

Definition Classes
AnyRef → Any

def +(other: String): String

Неявный
Этот член добавлен неявным преобразованием из Catch[T] в any2stringadd[Catch[T]], выполненное методом any2stringadd в scala.Predef.
Definition Classes
any2stringadd

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

Неявный
Этот член добавлен неявным преобразованием из Catch[T] в ArrowAssoc[Catch[T]], выполненное методом ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

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

returns

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

Definition Classes
AnyRef → Any

def andFinally(body: => Unit): Catch[T]

Создаёт новый контейнер Catch из этого объекта и переданного тела finally.

body

Дополнительная логика, применяемая после всех имеющихся тел finally

def apply[U >: T](body: => U): U

final def asInstanceOf[T0]: T0

Преобразовать объект-получатель к типу T0.

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

returns

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

Definition Classes
Any
Исключения

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

def clone(): AnyRef

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

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

returns

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

Атрибуты
protected[java.lang]
Definition Classes
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

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

def desc: String

Definition Classes
Described

def either[U >: T](body: => U): Either[Throwable, U]

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

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

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

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

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

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

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

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

def equals(arg0: AnyRef): Boolean

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

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

возвращает

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

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

val fin: Option[Finally]

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

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

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

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

возвращает

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

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

def hashCode(): Int

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

возвращает

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

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

final def isInstanceOf[T0]: Boolean

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

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

возвращает

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

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

val name: String

Атрибуты
protected
Определяющие классы
Catch → Described

final def ne(arg0: AnyRef): Boolean

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

возвращает

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

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

final def notify(): Unit

Разбудит один поток, ожидающий монитора объекта получателя.

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

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

final def notifyAll(): Unit

Разбудит все потоки, ожидающие монитора объекта получателя.

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

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

def opt[U >: T](body: => U): Option[U]

def or[U >: T](other: Catch[U]): Catch[U]

def or[U >: T](pf2: Catcher[U]): Catch[U]

val pf: Catcher[T]

val rethrow: (Throwable) => Boolean

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

Определения классов
AnyRef

def toEither: Catch[Either[Throwable, T]]

def toOption: Catch[Option[T]]

def toString(): String

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

возвращает

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

Определения классов
Described → AnyRef → Any

def toTry: Catch[Try[T]]

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

def withApply[U](f: (Throwable) => U): Catch[U]

def withDesc(s: String): Catch.this.type

Определения классов
Described

def withTry[U >: T](body: => U): Try[U]

© 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/control/Exception$$Catch.html

Spec-Zone.ru

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