MoreEnumerable.Lead<TSource, TResult>(IEnumerable<TSource>, Int32, Func<TSource, TSource, TResult>) Method

Produces a projection of a sequence by evaluating pairs of elements separated by a positive offset.

Definition

Namespace: MoreLinq
Assembly: MoreLinq (in MoreLinq.dll) Version: 3.4.0+b99a6a8cc504caf2d48372fe54a2f8116c59cd0c
C#
public static IEnumerable<TResult> Lead<TSource, TResult>(
	this IEnumerable<TSource> source,
	int offset,
	Func<TSource, TSource, TResult> resultSelector
)

Parameters

source  IEnumerable<TSource>
The sequence over which to evaluate lead.
offset  Int32
The offset (expressed as a positive number) by which to lead each element of the sequence.
resultSelector  Func<TSource, TSource, TResult>
A projection function which accepts the current and subsequent (lead) element (in that order) and produces a result.

Type Parameters

TSource
The type of the elements in the source sequence.
TResult
The type of the elements in the result sequence.

Return Value

IEnumerable<TResult>
A sequence produced by projecting each element of the sequence with its lead pairing.

Usage Note

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).

Remarks

This operator evaluates in a deferred and streaming manner.

For elements of the sequence that are less than offset items from the end, default(T) is used as the lead value.

See Also