MoreEnumerableLagTSource, TResult(IEnumerableTSource, Int32, FuncTSource, TSource, TResult) Method
Produces a projection of a sequence by evaluating pairs of elements separated by a
negative offset.
Namespace: MoreLinqAssembly: MoreLinq (in MoreLinq.dll) Version: 3.4.0+b99a6a8cc504caf2d48372fe54a2f8116c59cd0c
public static IEnumerable<TResult> Lag<TSource, TResult>(
this IEnumerable<TSource> source,
int offset,
Func<TSource, TSource, TResult> resultSelector
)
<ExtensionAttribute>
Public Shared Function Lag(Of TSource, TResult) (
source As IEnumerable(Of TSource),
offset As Integer,
resultSelector As Func(Of TSource, TSource, TResult)
) As IEnumerable(Of TResult)
public:
[ExtensionAttribute]
generic<typename TSource, typename TResult>
static IEnumerable<TResult>^ Lag(
IEnumerable<TSource>^ source,
int offset,
Func<TSource, TSource, TResult>^ resultSelector
)
[<ExtensionAttribute>]
static member Lag :
source : IEnumerable<'TSource> *
offset : int *
resultSelector : Func<'TSource, 'TSource, 'TResult> -> IEnumerable<'TResult>
- source IEnumerableTSource
- The sequence over which to evaluate lag.
- offset Int32
- The offset (expressed as a positive number) by which to lag each
value of the sequence.
- resultSelector FuncTSource, TSource, TResult
- A projection function which accepts the current and lagged
items (in that order) and returns a result.
- TSource
- The type of the elements of the source sequence.
- TResult
- The type of the elements of the result sequence.
IEnumerableTResult
A sequence produced by projecting each element of the sequence with its lagged
pairing.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).
This operator evaluates in a deferred and streaming manner.
For elements prior to the lag offset, default(T) is used as the lagged
value.