AggregateExtensionAggregateT, TAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult(IEnumerableT, TAccumulate1, FuncTAccumulate1, T, TAccumulate1, TAccumulate2, FuncTAccumulate2, T, TAccumulate2, TAccumulate3, FuncTAccumulate3, T, TAccumulate3, TAccumulate4, FuncTAccumulate4, T, TAccumulate4, FuncTAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult) Method
Applies four accumulators sequentially in a single pass over a
sequence.
Namespace: MoreLinq.ExtensionsAssembly: MoreLinq (in MoreLinq.dll) Version: 3.4.0+b99a6a8cc504caf2d48372fe54a2f8116c59cd0c
public static TResult Aggregate<T, TAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult>(
this IEnumerable<T> source,
TAccumulate1 seed1,
Func<TAccumulate1, T, TAccumulate1> accumulator1,
TAccumulate2 seed2,
Func<TAccumulate2, T, TAccumulate2> accumulator2,
TAccumulate3 seed3,
Func<TAccumulate3, T, TAccumulate3> accumulator3,
TAccumulate4 seed4,
Func<TAccumulate4, T, TAccumulate4> accumulator4,
Func<TAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult> resultSelector
)
<ExtensionAttribute>
Public Shared Function Aggregate(Of T, TAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult) (
source As IEnumerable(Of T),
seed1 As TAccumulate1,
accumulator1 As Func(Of TAccumulate1, T, TAccumulate1),
seed2 As TAccumulate2,
accumulator2 As Func(Of TAccumulate2, T, TAccumulate2),
seed3 As TAccumulate3,
accumulator3 As Func(Of TAccumulate3, T, TAccumulate3),
seed4 As TAccumulate4,
accumulator4 As Func(Of TAccumulate4, T, TAccumulate4),
resultSelector As Func(Of TAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult)
) As TResult
public:
[ExtensionAttribute]
generic<typename T, typename TAccumulate1, typename TAccumulate2, typename TAccumulate3, typename TAccumulate4, typename TResult>
static TResult Aggregate(
IEnumerable<T>^ source,
TAccumulate1 seed1,
Func<TAccumulate1, T, TAccumulate1>^ accumulator1,
TAccumulate2 seed2,
Func<TAccumulate2, T, TAccumulate2>^ accumulator2,
TAccumulate3 seed3,
Func<TAccumulate3, T, TAccumulate3>^ accumulator3,
TAccumulate4 seed4,
Func<TAccumulate4, T, TAccumulate4>^ accumulator4,
Func<TAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult>^ resultSelector
)
[<ExtensionAttribute>]
static member Aggregate :
source : IEnumerable<'T> *
seed1 : 'TAccumulate1 *
accumulator1 : Func<'TAccumulate1, 'T, 'TAccumulate1> *
seed2 : 'TAccumulate2 *
accumulator2 : Func<'TAccumulate2, 'T, 'TAccumulate2> *
seed3 : 'TAccumulate3 *
accumulator3 : Func<'TAccumulate3, 'T, 'TAccumulate3> *
seed4 : 'TAccumulate4 *
accumulator4 : Func<'TAccumulate4, 'T, 'TAccumulate4> *
resultSelector : Func<'TAccumulate1, 'TAccumulate2, 'TAccumulate3, 'TAccumulate4, 'TResult> -> 'TResult
- source IEnumerableT
- The source sequence
- seed1 TAccumulate1
- The seed value for the first accumulator.
- accumulator1 FuncTAccumulate1, T, TAccumulate1
- The first accumulator.
- seed2 TAccumulate2
- The seed value for the second accumulator.
- accumulator2 FuncTAccumulate2, T, TAccumulate2
- The second accumulator.
- seed3 TAccumulate3
- The seed value for the third accumulator.
- accumulator3 FuncTAccumulate3, T, TAccumulate3
- The third accumulator.
- seed4 TAccumulate4
- The seed value for the fourth accumulator.
- accumulator4 FuncTAccumulate4, T, TAccumulate4
- The fourth accumulator.
- resultSelector FuncTAccumulate1, TAccumulate2, TAccumulate3, TAccumulate4, TResult
-
A function that projects a single result given the result of each
accumulator.
- T
- The type of elements in source.
- TAccumulate1
- The type of first accumulator value.
- TAccumulate2
- The type of second accumulator value.
- TAccumulate3
- The type of third accumulator value.
- TAccumulate4
- The type of fourth accumulator value.
- TResult
- The type of the accumulated result.
TResultThe value returned by
resultSelector.In Visual Basic and C#, you can call this method as an instance method on any object of type
IEnumerableT. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
This operator executes immediately.