in scala
object Function

object Function
extends java.lang.Object
with scala.ScalaObject
A module defining utility methods for higher-order functional programming.
Author:
Martin Odersky
Version:
1.0, 29/11/2006

Constructor Summary
def this

Def Summary
def chain [a] (fs: scala.Seq[(a) => a]) : (a) => a
Given a sequence of functions f1, ..., fn, return the function f1 andThen ... andThen fn.
def curried [a1, a2, a3, a4, a5, b] (f: (a1, a2, a3, a4, a5) => b) : (a1) => (a2) => (a3) => (a4) => (a5) => b
Currying for functions of arity 5.
def curried [a1, a2, a3, a4, b] (f: (a1, a2, a3, a4) => b) : (a1) => (a2) => (a3) => (a4) => b
Currying for functions of arity 4.
def curried [a1, a2, a3, b] (f: (a1, a2, a3) => b) : (a1) => (a2) => (a3) => b
Currying for functions of arity 3.
def curried [a1, a2, b] (f: (a1, a2) => b) : (a1) => (a2) => b
Currying for functions of arity 2. This transforms a function of arity 2 into a a unary function returning another unary function.
def tupled [a1, a2, a3, a4, a5, b] (f: (a1, a2, a3, a4, a5) => b) : (scala.Tuple5[a1, a2, a3, a4, a5]) => b
Tupling for functions of arity 5. This transforms a function of arity 5 into a unary function that takes a 5-tuple of arguments.
def tupled [a1, a2, a3, a4, b] (f: (a1, a2, a3, a4) => b) : (scala.Tuple4[a1, a2, a3, a4]) => b
Tupling for functions of arity 4. This transforms a function of arity 4 into a unary function that takes a 4-tuple of arguments.
def tupled [a1, a2, a3, b] (f: (a1, a2, a3) => b) : (scala.Tuple3[a1, a2, a3]) => b
Tupling for functions of arity 3. This transforms a function of arity 3 into a unary function that takes a triple of arguments.
def tupled [a1, a2, b] (f: (a1, a2) => b) : (scala.Tuple2[a1, a2]) => b
Tupling for functions of arity 2. This transforms a function of arity 2 into a unary function that takes a pair of arguments.
def uncurried [a1, a2, a3, a4, a5, b] (f: (a1) => (a2) => (a3) => (a4) => (a5) => b) : (a1, a2, a3, a4, a5) => b
Uncurrying for functions of arity 5.
def uncurried [a1, a2, a3, a4, b] (f: (a1) => (a2) => (a3) => (a4) => b) : (a1, a2, a3, a4) => b
Uncurrying for functions of arity 4.
def uncurried [a1, a2, a3, b] (f: (a1) => (a2) => (a3) => b) : (a1, a2, a3) => b
Uncurrying for functions of arity 3.
def uncurried [a1, a2, b] (f: (a1) => (a2) => b) : (a1, a2) => b
Uncurrying for functions of arity 2. This transforms a unary function returning another unary function into a function of arity 2.
def untupled [a1, a2, a3, a4, a5, b] (f: (scala.Tuple5[a1, a2, a3, a4, a5]) => b) : (a1, a2, a3, a4, a5) => b
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.
def untupled [a1, a2, a3, a4, b] (f: (scala.Tuple4[a1, a2, a3, a4]) => b) : (a1, a2, a3, a4) => b
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.
def untupled [a1, a2, a3, b] (f: (scala.Tuple3[a1, a2, a3]) => b) : (a1, a2, a3) => b
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.
def untupled [a1, a2, b] (f: (scala.Tuple2[a1, a2]) => b) : (a1, a2) => b
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.
Constructor Detail
def this

Def Detail
def chain [a](fs: scala.Seq[(a) => a]): (a) => a
Given a sequence of functions f1, ..., fn, return the function f1 andThen ... andThen fn.
Parameters:
fs - The given sequence of functions
Returns:
...

def curried [a1, a2, a3, a4, a5, b](f: (a1, a2, a3, a4, a5) => b): (a1) => (a2) => (a3) => (a4) => (a5) => b
Currying for functions of arity 5.

def curried [a1, a2, a3, a4, b](f: (a1, a2, a3, a4) => b): (a1) => (a2) => (a3) => (a4) => b
Currying for functions of arity 4.

def curried [a1, a2, a3, b](f: (a1, a2, a3) => b): (a1) => (a2) => (a3) => b
Currying for functions of arity 3.
Parameters:
f - ...
Returns:
...

def curried [a1, a2, b](f: (a1, a2) => b): (a1) => (a2) => b
Currying for functions of arity 2. This transforms a function of arity 2 into a a unary function returning another unary function.
Parameters:
f - ...
Returns:
...

def tupled [a1, a2, a3, a4, a5, b](f: (a1, a2, a3, a4, a5) => b): (scala.Tuple5[a1, a2, a3, a4, a5]) => b
Tupling for functions of arity 5. This transforms a function of arity 5 into a unary function that takes a 5-tuple of arguments.

def tupled [a1, a2, a3, a4, b](f: (a1, a2, a3, a4) => b): (scala.Tuple4[a1, a2, a3, a4]) => b
Tupling for functions of arity 4. This transforms a function of arity 4 into a unary function that takes a 4-tuple of arguments.

def tupled [a1, a2, a3, b](f: (a1, a2, a3) => b): (scala.Tuple3[a1, a2, a3]) => b
Tupling for functions of arity 3. This transforms a function of arity 3 into a unary function that takes a triple of arguments.

def tupled [a1, a2, b](f: (a1, a2) => b): (scala.Tuple2[a1, a2]) => b
Tupling for functions of arity 2. This transforms a function of arity 2 into a unary function that takes a pair of arguments.
Parameters:
f - ...
Returns:
...

def uncurried [a1, a2, a3, a4, a5, b](f: (a1) => (a2) => (a3) => (a4) => (a5) => b): (a1, a2, a3, a4, a5) => b
Uncurrying for functions of arity 5.

def uncurried [a1, a2, a3, a4, b](f: (a1) => (a2) => (a3) => (a4) => b): (a1, a2, a3, a4) => b
Uncurrying for functions of arity 4.

def uncurried [a1, a2, a3, b](f: (a1) => (a2) => (a3) => b): (a1, a2, a3) => b
Uncurrying for functions of arity 3.

def uncurried [a1, a2, b](f: (a1) => (a2) => b): (a1, a2) => b
Uncurrying for functions of arity 2. This transforms a unary function returning another unary function into a function of arity 2.

def untupled [a1, a2, a3, a4, a5, b](f: (scala.Tuple5[a1, a2, a3, a4, a5]) => b): (a1, a2, a3, a4, a5) => b
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.

def untupled [a1, a2, a3, a4, b](f: (scala.Tuple4[a1, a2, a3, a4]) => b): (a1, a2, a3, a4) => b
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.

def untupled [a1, a2, a3, b](f: (scala.Tuple3[a1, a2, a3]) => b): (a1, a2, a3) => b
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.

def untupled [a1, a2, b](f: (scala.Tuple2[a1, a2]) => b): (a1, a2) => b
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.