Объект scala.PartialFunction
объект PartialFunction
Несколько полезных операций, которые используют дополнительную информацию, доступную в частичных функциях. Примеры:
import PartialFunction._
def strangeConditional(other: Any): Boolean = cond(other) {
case x: String if x == "abc" || x == "def" => true
case x: Int => true
}
def onlyInt(v: Any): Option[Int] = condOpt(v) { case x: Int => x }
| Надтипы | |
|---|---|
| Тип «Я сам» |
Классы-классы
Исходный код
финальный класс ElementWiseExtractor[-A, +B] extends AnyVal
Конкретные методы
Исходный код
Булево условие, которое является результатом заданной функции, если она определена, и ложно в противном случае.
Она ведет себя как case _ => false была добавлена к частичной функции.
| Параметры значения |
|
|---|---|
| Возвращает | истина, если |
Исходный код
Применить функцию к заданному значению, если она определена, и вернуть результат в Some; в противном случае вернуть None.
| Параметры значения |
|
|---|---|
| Возвращает |
|
Исходный код
def empty[A, B]: PartialFunction[A, B]
Частичная функция с пустой областью определения. Любая попытка вызвать пустую частичную функцию приводит к выбрасыванию исключения scala.MatchError.
Исходный код
def fromFunction[A, B](f: A => B): PartialFunction[A, B]
Преобразует обычную функцию в частичную функцию. Обратите внимание, что вызов isDefinedAt(x) этой частичной функции вернет true для каждой x.
| Параметры значения |
|
|---|---|
| Возвращает | частичная функция, которая делегирует обычной функции |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/PartialFunction$.html