Класс scala.util.Success
final case class Success[+T](value: T) extends Try[T] with Product with Serializable
- Источник
- Try.scala
Конструкторы экземпляров
new Success(value: T)
Типовые члены
class WithFilter extends AnyRef
Нам нужен весь класс WithFilter, чтобы соблюсти контракт «не создает новую коллекцию», хотя в коллекции с максимальным размером 1 это, вероятно, не так важно.
- Определяющие классы
- Try
- Аннотации
- @deprecatedInheritance( message = ... , since = "2.12.0" )
Члены-значения
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
- Неявный
- Этот член добавлен неявным преобразованием из Success[T] в any2stringadd[Success[T]], выполненным методом any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ->[B](y: B): (Success[T], B)
- Неявный
- Этот член добавлен неявным преобразованием из Success[T] в ArrowAssoc[Success[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
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
копия объекта-получателя.
def collect[U](pf: PartialFunction[T, U]): Try[U]
Применяет данную частичную функцию к значению из этого Success или возвращает это значение, если это Failure.
def ensuring(cond: (Success[T]) ⇒ Boolean, msg: ⇒ Any): Success[T]
- Неявный
- Этот член добавлен неявным преобразованием из Success[T] в Ensuring[Success[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (Success[T]) ⇒ Boolean): Success[T]
- Неявный
- Этот член добавлен неявным преобразованием из Success[T] в Ensuring[Success[T]] с помощью метода Ensuring в scala.Predef.
- Классы определений
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Success[T]
- Неявный
- Этот член добавлен неявным преобразованием из Success[T] в Ensuring[Success[T]] с помощью метода Ensuring в scala.Predef.
- Классы определений
- Ensuring
def ensuring(cond: Boolean): Success[T]
- Неявный
- Этот член добавлен неявным преобразованием из Success[T] в Ensuring[Success[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).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Классы определений
- AnyRef
def failed: Try[Throwable]
Инвертирует этот Try. Если это Failure, возвращает его исключение, заключенное в Success. Если это Success, возвращает Failure содержащий UnsupportedOperationException.
def filter(p: (T) ⇒ Boolean): Try[T]
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействии finalize с нелокальными возвратами и исключениями, зависят от платформы.
- Атрибуты
- protected[lang]
- Классы определений
- AnyRef
- Аннотации
- @throws( classOf[java.lang.Throwable] )
- Примечание
не указан в SLS как член AnyRef
def flatMap[U](f: (T) ⇒ Try[U]): Try[U]
Возвращает результат применения данной функции к значению из этого Success или возвращает это значение, если это Failure.
def flatten[U](implicit ev: <:<[T, Try[U]]): Try[U]
Преобразует вложенное Try, т.е. Try типа Try[Try[T]], в не-вложенное Try, т.е. Try типа Try[T].
def fold[U](fa: (Throwable) ⇒ U, fb: (T) ⇒ U): U
Применяет fa если это Failure или fb если это Success. Если fb изначально применяется и генерирует исключение, то применяется fa с этим исключением.
- fa
функция для применения, если это
Failure- fb
функция для применения, если это
Success- возвращает
результаты применения функции
def foreach[U](f: (T) ⇒ U): Unit
Применяет заданную функцию f если это Success, в противном случае возвращает Unit если это Failure.
Примечание: Если f вызывает исключение, то этот метод может выбросить исключение.
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной format строкой. Строки форматирования аналогичны String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из Success[T] в StringFormat[Success[T]] выполненным методом StringFormat в scala.Predef.
- Классы-определения
- StringFormat
- Аннотации
- @inline()
def get: T
Возвращает значение из этого Success или выбрасывает исключение, если это Failure.
final def getClass(): Class[_]
Возвращает представление класса времени выполнения объекта.
- возвращает
объект класса, соответствующий типу времени выполнения получателя.
def getOrElse[U >: T](default: ⇒ U): U
Возвращает значение из этого Success или заданный default аргумент, если это Failure.
Примечание:: Это выбросит исключение, если это не успех, а default выбросит исключение.
def isFailure: Boolean
Возвращает true если Try является Failure, false в противном случае.
final def isInstanceOf[T0]: Boolean
Проверяет, соответствует ли динамический тип объекта получателя типу T0.
Обратите внимание, что результат проверки зависит от стирания семантики Scala. Поэтому выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, так как тип аргумента стирается во время компиляции, проверить, соответствуют ли содержимое списка указанному типу, невозможно.
- возвращает
trueесли объект получателя является экземпляром стираемого типаT0;falseв противном случае.
- Классы-определения
- Any
def isSuccess: Boolean
Возвращает true если Try является Success, false в противном случае.
def map[U](f: (T) ⇒ U): Try[U]
Применяет заданную функцию к значению из этого Success или возвращает это значение, если это Failure.
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
trueесли аргумент не является ссылкой на объект получателя;falseв противном случае.
- Классы-определения
- AnyRef
final def notify(): Unit
Разбуждает один поток, ожидающий монитор объекта получателя.
- Классы-определения
- AnyRef
- Аннотации
- @native()
- Примечание
не указано 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.
def recover[U >: T](pf: PartialFunction[Throwable, U]): Try[U]
Применяет заданную функцию f, если это Failure, в противном случае возвращает это, если это Success. Это как map для исключения.
def recoverWith[U >: T](pf: PartialFunction[Throwable, Try[U]]): Try[U]
Применяет заданную функцию f, если это Failure, в противном случае возвращает это, если это Success. Это как flatMap для исключения.
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def toEither: Either[Throwable, T]
Возвращает Left с Throwable, если это Failure, в противном случае возвращает Right с Success значением.
def toOption: Option[T]
Возвращает None если это Failure или Some содержащее значение, если это Success.
def transform[U](s: (T) ⇒ Try[U], f: (Throwable) ⇒ Try[U]): Try[U]
Завершает это Try, применяя функцию f к этому, если это типа Failure, или наоборот, применяя s если это Success.
val value: T
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
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.
def →[B](y: B): (Success[T], B)
- Implicit
- Этот член добавлен неявным преобразованием из Success[T] в ArrowAssoc[Success[T]], выполненным методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/util/Success.html