Interface IPipeline<TInput, TOutput>
Interface for executable pipeline
public interface IPipeline<TInput, TOutput> where TInput : notnull where TOutput : notnull
Type Parameters
TInputTOutput
Methods
ProcessAsync(TInput, CancellationToken)
Processes a single item through the pipeline
Task<TOutput> ProcessAsync(TInput input, CancellationToken ct = default)
Parameters
inputTInputctCancellationToken
Returns
- Task<TOutput>
ProcessChannelAsync(ChannelReader<TInput>, ChannelWriter<TOutput>, CancellationToken)
Processes items from a channel
Task ProcessChannelAsync(ChannelReader<TInput> input, ChannelWriter<TOutput> output, CancellationToken ct = default)
Parameters
inputChannelReader<TInput>outputChannelWriter<TOutput>ctCancellationToken
Returns
ProcessManyAsync(IAsyncEnumerable<TInput>, CancellationToken)
Processes multiple items through the pipeline
IAsyncEnumerable<TOutput> ProcessManyAsync(IAsyncEnumerable<TInput> inputs, CancellationToken ct = default)
Parameters
inputsIAsyncEnumerable<TInput>ctCancellationToken
Returns
- IAsyncEnumerable<TOutput>