Packages

o

scala

Function

object Function

A module defining utility methods for higher-order functional programming.

Source
Function.scala
Since

1.0

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Function
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. def chain[T](fs: collection.Seq[(T) => T]): (T) => T

    Given a sequence of functions f1, ..., fn, return the function f1 andThen ... andThen fn.

    Given a sequence of functions f1, ..., fn, return the function f1 andThen ... andThen fn.

    fs

    The given sequence of functions

  2. def const[T, U](x: T)(y: U): T

    The constant function

  3. def tupled[T1, T2, T3, T4, T5, R](f: (T1, T2, T3, T4, T5) => R): ((T1, T2, T3, T4, T5)) => R

    Tupling for functions of arity 5.

    Tupling for functions of arity 5. This transforms a function of arity 5 into a unary function that takes a 5-tuple of arguments.

  4. def tupled[T1, T2, T3, T4, R](f: (T1, T2, T3, T4) => R): ((T1, T2, T3, T4)) => R

    Tupling for functions of arity 4.

    Tupling for functions of arity 4. This transforms a function of arity 4 into a unary function that takes a 4-tuple of arguments.

  5. def tupled[T1, T2, T3, R](f: (T1, T2, T3) => R): ((T1, T2, T3)) => R

    Tupling for functions of arity 3.

    Tupling for functions of arity 3. This transforms a function of arity 3 into a unary function that takes a triple of arguments.

  6. def tupled[T1, T2, R](f: (T1, T2) => R): ((T1, T2)) => R

    Tupling for functions of arity 2.

    Tupling for functions of arity 2. This transforms a function of arity 2 into a unary function that takes a pair of arguments.

    Note

    These functions are slotted for deprecation, but it is on hold pending superior type inference for tupling anonymous functions.

  7. def uncurried[T1, T2, T3, T4, T5, R](f: (T1) => (T2) => (T3) => (T4) => (T5) => R): (T1, T2, T3, T4, T5) => R

    Uncurrying for functions of arity 5.

  8. def uncurried[T1, T2, T3, T4, R](f: (T1) => (T2) => (T3) => (T4) => R): (T1, T2, T3, T4) => R

    Uncurrying for functions of arity 4.

  9. def uncurried[T1, T2, T3, R](f: (T1) => (T2) => (T3) => R): (T1, T2, T3) => R

    Uncurrying for functions of arity 3.

  10. def uncurried[T1, T2, R](f: (T1) => (T2) => R): (T1, T2) => R

    Uncurrying for functions of arity 2.

    Uncurrying for functions of arity 2. This transforms a unary function returning another unary function into a function of arity 2.

  11. def unlift[T, R](f: (T) => Option[R]): PartialFunction[T, R]

    Turns a function A => Option[B] into a PartialFunction[A, B].

    Turns a function A => Option[B] into a PartialFunction[A, B].

    Important note: this transformation implies the original function may be called 2 or more times on each logical invocation, because the only way to supply an implementation of isDefinedAt is to call the function and examine the return value. See also scala.PartialFunction, method applyOrElse.

    f

    a function T => Option[R]

    returns

    a partial function defined for those inputs where f returns Some(_) and undefined where f returns None.

    See also

    scala.PartialFunction, method lift.

  12. def untupled[T1, T2, T3, T4, T5, R](f: ((T1, T2, T3, T4, T5)) => R): (T1, T2, T3, T4, T5) => R

    Un-tupling for functions of arity 5.

    Un-tupling for functions of arity 5. This transforms a function taking a 5-tuple of arguments into a function of arity 5 which takes each argument separately.

  13. def untupled[T1, T2, T3, T4, R](f: ((T1, T2, T3, T4)) => R): (T1, T2, T3, T4) => R

    Un-tupling for functions of arity 4.

    Un-tupling for functions of arity 4. This transforms a function taking a 4-tuple of arguments into a function of arity 4 which takes each argument separately.

  14. def untupled[T1, T2, T3, R](f: ((T1, T2, T3)) => R): (T1, T2, T3) => R

    Un-tupling for functions of arity 3.

    Un-tupling for functions of arity 3. This transforms a function taking a triple of arguments into a ternary function which takes each argument separately.

  15. def untupled[T1, T2, R](f: ((T1, T2)) => R): (T1, T2) => R

    Un-tupling for functions of arity 2.

    Un-tupling for functions of arity 2. This transforms a function taking a pair of arguments into a binary function which takes each argument separately.