Currying
Last updated
Last updated
Esta classe estática contém diversas sobrecargas para a operação de Currying, onde cada sobrecarga espera em funções com diferentes quantidades de parâmetros, contendo ou não um retorno.
As diversas sobrecargas disponíveis podem ser utilizadas para criar novas funções a partir de funções existentes.
Neste exemplo vamos considerar a função add
como uma função que realiza a soma de dois números:
Ao aplicarmos a função Curry
receberemos como retorno uma nova função, esta função irá esperar apenas um dos parâmetros da soma e retornará uma nova função, que por sua vez esperará um último parâmetro e retornará o resultado da soma.
O conceito para Currying e demais exemplos podem ser encontrados na seção Conceitos > Currying e Aplicação Parcial.
Nome
Parâmetros
Retorno
Descrição
Curry
Func<T, T2, TResult> function
Func<T, Func<T2, TResult>>
Cria uma nova função curriada a partir da função informada no parâmetro.
Curry
Func<T, T2, T3, TResult> function
Func<T, Func<T2, Func<T3,TResult>>>
Cria uma nova função curriada a partir da função informada no parâmetro.
Curry
Func<T, T2, T3, T4, TResult> function
Func<T, Func<T2, Func<T3,Func<T4, TResult>>>>
Cria uma nova função curriada a partir da função informada no parâmetro.
Curry
Action<T, T2> action
Func<T, Action<T2>>
Cria uma nova função curriada a partir da função informada no parâmetro.
Curry
Action<T, T2, T3> action
Func<T, Func<T2, Action<T3>>>
Cria uma nova função curriada a partir da função informada no parâmetro.
Curry
Action<T, T2, T3, T4> action
Func<T, Func<T2, Func<T3,Action<T4>>>>
Cria uma nova função curriada a partir da função informada no parâmetro.