PartialFunction

scala.PartialFunction
See thePartialFunction companion trait

A few handy operations which leverage the extra bit of information available in partial functions. Examples:

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 }

Attributes

Companion
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Type members

Classlikes

final class ElementWiseExtractor[-A, +B] extends AnyVal

Attributes

Supertypes
class AnyVal
trait Matchable
class Any
Self type

Value members

Concrete methods

A Boolean test that is the result of the given function where defined, and false otherwise.

A Boolean test that is the result of the given function where defined, and false otherwise.

It behaves like a case _ => false were added to the partial function.

Value parameters

pf

the partial function

x

the value to test

Attributes

Returns

true, iff x is in the domain of pf and pf(x) == true.

def condOpt[A, B](x: A)(pf: PartialFunction[A, B]^): Option[B]

Apply the function to the given value if defined, and return the result in a Some; otherwise, return None.

Apply the function to the given value if defined, and return the result in a Some; otherwise, return None.

Value parameters

pf

the PartialFunction[T, U]

x

the value to test

Attributes

Returns

Some(pf(x)) if pf isDefinedAt x, None otherwise.

def empty[A, B]: PartialFunction[A, B]

The partial function with empty domain. Any attempt to invoke empty partial function leads to throwing scala.MatchError exception.

The partial function with empty domain. Any attempt to invoke empty partial function leads to throwing scala.MatchError exception.

Attributes

def fromFunction[A, B](f: A -> B): PartialFunction[A, B]^{f}

Converts an ordinary function to a partial function. Note that calling isDefinedAt(x) on this partial function will return true for every x.

Converts an ordinary function to a partial function. Note that calling isDefinedAt(x) on this partial function will return true for every x.

Value parameters

f

an ordinary function

Attributes

Returns

a partial function which delegates to the ordinary function f