Currying
This static class contains several overloads for the Currying operation, where each overload deals with functions that contains different amounts of parameters, with or without a return.
Methods
Name | Parameters | Returns | Description |
Curry | Func<T, T2, TResult> function | Func<T, Func<T2, TResult>> | Creates a new curried method of function. |
Curry | Func<T, T2, T3, TResult> function | Func<T, Func<T2, Func<T3,TResult>>> | Creates a new curried method of function. |
Curry | Func<T, T2, T3, T4, TResult> function | Func<T, Func<T2, Func<T3,Func<T4, TResult>>>> | Creates a new curried method of function. |
Curry | Action<T, T2> action | Func<T, Action<T2>> | Creates a new curried method of function. |
Curry | Action<T, T2, T3> action | Func<T, Func<T2, Action<T3>>> | Creates a new curried method of function. |
Curry | Action<T, T2, T3, T4> action | Func<T, Func<T2, Func<T3,Action<T4>>>> | Creates a new curried method of function. |
Usage
The overloads available in this class can be used to create new functions from existing functions.
In this example we'll consider an add
function as a function that performs a sum of two numbers:
With the application of the Curry
function is created a new function as return, this function needs only one of the parameters of the sum as argument and returns a new function. This last function needs the last parameter of the sum and return the result of this operation.
The fundamentals about Currying and another examples can be find in Fundamentals> Currying and Partial Application.
Last updated