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
map1
IMap<TInput, TInter>Base map where you apply this call.
map2
IMap<TInter, TOutput>Map used for the composition.
Returns
- IMap<TInput, TOutput>
Type Parameters
TInput
The type of the Input.
TInter
The type of the Intermediate value that allows communication between map1 and map2.
TOutput
The 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
map1
IForwardMap<TInput, TInter>Base map where you apply this call.
map2
IForwardMap<TInter, TOutput>Map used for the composition.
Returns
- IForwardMap<TInput, TOutput>
Type Parameters
TInput
The type of the Input.
TInter
The type of the Intermediate value that allows communication between map1 and map2.
TOutput
The 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
map1
IReverseMap<TInput, TInter>Base map where you apply this call.
map2
IReverseMap<TInter, TOutput>Map used for the composition.
Returns
- IReverseMap<TInput, TOutput>
Type Parameters
TInput
The type of the Input.
TInter
The type of the Intermediate value that allows communication between map1 and map2.
TOutput
The type of the Output.