MoreEnumerableScanByTSource, TKey, TState(IEnumerableTSource, FuncTSource, TKey, FuncTKey, TState, FuncTState, TKey, TSource, TState) Method
Applies an accumulator function over sequence element keys,
returning the keys along with intermediate accumulator states.
Namespace: MoreLinqAssembly: MoreLinq (in MoreLinq.dll) Version: 3.4.0+b99a6a8cc504caf2d48372fe54a2f8116c59cd0c
public static IEnumerable<KeyValuePair<TKey, TState>> ScanBy<TSource, TKey, TState>(
this IEnumerable<TSource> source,
Func<TSource, TKey> keySelector,
Func<TKey, TState> seedSelector,
Func<TState, TKey, TSource, TState> accumulator
)
<ExtensionAttribute>
Public Shared Function ScanBy(Of TSource, TKey, TState) (
source As IEnumerable(Of TSource),
keySelector As Func(Of TSource, TKey),
seedSelector As Func(Of TKey, TState),
accumulator As Func(Of TState, TKey, TSource, TState)
) As IEnumerable(Of KeyValuePair(Of TKey, TState))
public:
[ExtensionAttribute]
generic<typename TSource, typename TKey, typename TState>
static IEnumerable<KeyValuePair<TKey, TState>>^ ScanBy(
IEnumerable<TSource>^ source,
Func<TSource, TKey>^ keySelector,
Func<TKey, TState>^ seedSelector,
Func<TState, TKey, TSource, TState>^ accumulator
)
[<ExtensionAttribute>]
static member ScanBy :
source : IEnumerable<'TSource> *
keySelector : Func<'TSource, 'TKey> *
seedSelector : Func<'TKey, 'TState> *
accumulator : Func<'TState, 'TKey, 'TSource, 'TState> -> IEnumerable<KeyValuePair<'TKey, 'TState>>
- source IEnumerableTSource
- The source sequence.
- keySelector FuncTSource, TKey
-
A function that returns the key given an element.
- seedSelector FuncTKey, TState
-
A function to determine the initial value for the accumulator that is
invoked once per key encountered.
- accumulator FuncTState, TKey, TSource, TState
-
An accumulator function invoked for each element.
- TSource
- Type of the elements of the source sequence.
- TKey
- The type of the key.
- TState
- Type of the state.
IEnumerableKeyValuePairTKey,
TState
A sequence of keys paired with intermediate accumulator states.
In Visual Basic and C#, you can call this method as an instance method on any object of type
IEnumerableTSource. 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).