ScanByExtension.ScanBy<TSource, TKey, TState>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TKey, TState>, Func<TState, TKey, TSource, TState>, IEqualityComparer<TKey>) Method
Applies an accumulator function over sequence element keys,
returning the keys along with intermediate accumulator states. An
additional parameter specifies the comparer to use to compare keys.
Namespace: MoreLinq.ExtensionsAssembly: 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,
IEqualityComparer<TKey>? comparer
)
<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),
comparer As IEqualityComparer(Of TKey)
) 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,
IEqualityComparer<TKey>^ comparer
)
[<ExtensionAttribute>]
static member ScanBy :
source : IEnumerable<'TSource> *
keySelector : Func<'TSource, 'TKey> *
seedSelector : Func<'TKey, 'TState> *
accumulator : Func<'TState, 'TKey, 'TSource, 'TState> *
comparer : IEqualityComparer<'TKey> -> IEnumerable<KeyValuePair<'TKey, 'TState>>
- source IEnumerable<TSource>
- The source sequence.
- keySelector Func<TSource, TKey>
-
A function that returns the key given an element.
- seedSelector Func<TKey, TState>
-
A function to determine the initial value for the accumulator that is
invoked once per key encountered.
- accumulator Func<TState, TKey, TSource, TState>
-
An accumulator function invoked for each element.
- comparer IEqualityComparer<TKey>
- The equality comparer to use to determine
whether or not keys are equal. If null, the default equality
comparer for TSource is used.
- TSource
- Type of the elements of the source sequence.
- TKey
- The type of the key.
- TState
- Type of the state.
IEnumerable<KeyValuePair<TKey,
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
IEnumerable<TSource>. 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).