MoreEnumerablePipeT Method |
Executes the given action on each element in the source sequence
and yields it.
Namespace: MoreLinqAssembly: MoreLinq (in MoreLinq.dll) Version: 2.0.0
Syntax public static IEnumerable<T> Pipe<T>(
this IEnumerable<T> source,
Action<T> action
)
<ExtensionAttribute>
Public Shared Function Pipe(Of T) (
source As IEnumerable(Of T),
action As Action(Of T)
) As IEnumerable(Of T)
public:
[ExtensionAttribute]
generic<typename T>
static IEnumerable<T>^ Pipe(
IEnumerable<T>^ source,
Action<T>^ action
)
[<ExtensionAttribute>]
static member Pipe :
source : IEnumerable<'T> *
action : Action<'T> -> IEnumerable<'T>
Parameters
- source
- Type: System.Collections.GenericIEnumerableT
The sequence of elements - action
- Type: SystemActionT
The action to execute on each element
Type Parameters
- T
- The type of the elements in the sequence
Return Value
Type:
IEnumerableTA sequence with source elements in their original order.
Usage Note
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).
Remarks
The returned sequence is essentially a duplicate of
the original, but with the extra action being executed while the
sequence is evaluated. The action is always taken before the element
is yielded, so any changes made by the action will be visible in the
returned sequence. This operator uses deferred execution and streams it results.
See Also