Method ComposeWith
ComposeWith<TInput, TInter, TOutput>(IMap<TInput, TInter>, IMap<TInter, TOutput>)
Creates a Composition Map. This map pass the map1 Forward call as a parameter of the map2 Forward call making a composition of such methods. For the Reverse the process is the other way around, calling the Reverse of map2 passing the return value to the Reverse of the map1.
public static IMap<TInput, TOutput> ComposeWith<TInput, TInter, TOutput>(this IMap<TInput, TInter> map1, IMap<TInter, TOutput> map2)
Parameters
map1IMap<TInput, TInter>Base map where you apply this call.
map2IMap<TInter, TOutput>Map used for the composition.
Returns
- IMap<TInput, TOutput>
Type Parameters
TInputThe type of the Input.
TInterThe type of the Intermediate value that allows communication between map1 and map2.
TOutputThe type of the Output.
ComposeWith<TInput, TInter, TOutput>(IForwardMap<TInput, TInter>, IForwardMap<TInter, TOutput>)
Creates a Composition Map based only on the CompositionForwardMap. This map pass the map1 Forward call as a parameter of the map2 Forward call making a composition of such methods. There is no Reverse call from this Map.
public static IForwardMap<TInput, TOutput> ComposeWith<TInput, TInter, TOutput>(this IForwardMap<TInput, TInter> map1, IForwardMap<TInter, TOutput> map2)
Parameters
map1IForwardMap<TInput, TInter>Base map where you apply this call.
map2IForwardMap<TInter, TOutput>Map used for the composition.
Returns
- IForwardMap<TInput, TOutput>
Type Parameters
TInputThe type of the Input.
TInterThe type of the Intermediate value that allows communication between map1 and map2.
TOutputThe type of the Output.
ComposeWith<TInput, TInter, TOutput>(IReverseMap<TInput, TInter>, IReverseMap<TInter, TOutput>)
Creates a Composition Map based only on the CompositionReverseMap. This map pass the map2 Reverse call as a parameter of the map1 Reverse call making a composition of such methods. There is no Forward call from this Map.
public static IReverseMap<TInput, TOutput> ComposeWith<TInput, TInter, TOutput>(this IReverseMap<TInput, TInter> map1, IReverseMap<TInter, TOutput> map2)
Parameters
map1IReverseMap<TInput, TInter>Base map where you apply this call.
map2IReverseMap<TInter, TOutput>Map used for the composition.
Returns
- IReverseMap<TInput, TOutput>
Type Parameters
TInputThe type of the Input.
TInterThe type of the Intermediate value that allows communication between map1 and map2.
TOutputThe type of the Output.