Table of Contents

Class Pipeline

Namespace
Executables
Assembly
executables.dll

Entry point for building middleware pipelines.

public static class Pipeline
Inheritance
Pipeline
Inherited Members

Methods

Use(Action<Action>)

Starts a parameterless pipeline from a step that receives next action.

public static PipelineBuilder<Unit, Unit, Unit, Unit> Use(Action<Action> middleware)

Parameters

middleware Action<Action>

Middleware action that calls downstream action.

Returns

PipelineBuilder<Unit, Unit, Unit, Unit>

Builder whose all generic types are Unit.

Exceptions

ArgumentNullException

middleware is null.

Use<T>(Action<Action<T>>)

Starts a parameterless void pipeline from a step that receives downstream typed action.

public static PipelineBuilder<Unit, T, Unit, Unit> Use<T>(Action<Action<T>> middleware)

Parameters

middleware Action<Action<T>>

Middleware action that can invoke downstream action.

Returns

PipelineBuilder<Unit, T, Unit, Unit>

Builder with downstream output fixed to Unit.

Type Parameters

T

Input type accepted by the downstream action.

Exceptions

ArgumentNullException

middleware is null.

Use<T>(Action<Func<T>>)

Starts a parameterless void pipeline from a step that receives downstream parameterless function.

public static PipelineBuilder<Unit, Unit, T, Unit> Use<T>(Action<Func<T>> middleware)

Parameters

middleware Action<Func<T>>

Middleware action that can invoke downstream parameterless function.

Returns

PipelineBuilder<Unit, Unit, T, Unit>

Builder with downstream input fixed to Unit.

Type Parameters

T

Output type returned by the downstream parameterless function.

Exceptions

ArgumentNullException

middleware is null.

Use<T>(Action<T, Action>)

Starts a void pipeline from a step that forwards via parameterless action.

public static PipelineBuilder<T, Unit, Unit, Unit> Use<T>(Action<T, Action> middleware)

Parameters

middleware Action<T, Action>

Middleware action that calls downstream action.

Returns

PipelineBuilder<T, Unit, Unit, Unit>

Builder whose downstream input and output types are Unit.

Type Parameters

T

Input type accepted by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T>(Func<Action, T>)

Starts a parameterless pipeline that returns value and can invoke downstream parameterless action.

public static PipelineBuilder<Unit, Unit, Unit, T> Use<T>(Func<Action, T> middleware)

Parameters

middleware Func<Action, T>

Middleware function that can invoke downstream parameterless action.

Returns

PipelineBuilder<Unit, Unit, Unit, T>

Builder with downstream input/output fixed to Unit.

Type Parameters

T

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2>(Action<Func<T1, T2>>)

Starts a parameterless void pipeline from a step that receives downstream typed function.

public static PipelineBuilder<Unit, T1, T2, Unit> Use<T1, T2>(Action<Func<T1, T2>> middleware)

Parameters

middleware Action<Func<T1, T2>>

Middleware action that can invoke downstream function.

Returns

PipelineBuilder<Unit, T1, T2, Unit>

Builder for appending next middleware steps and terminal executable.

Type Parameters

T1

Input type expected by the downstream function.

T2

Output type returned by the downstream function.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2>(Action<T1, Action<T2>>)

Starts a void pipeline from a step that forwards via typed action.

public static PipelineBuilder<T1, T2, Unit, Unit> Use<T1, T2>(Action<T1, Action<T2>> middleware)

Parameters

middleware Action<T1, Action<T2>>

Middleware action that calls downstream action.

Returns

PipelineBuilder<T1, T2, Unit, Unit>

Builder whose downstream output type is Unit.

Type Parameters

T1

Input type accepted by the middleware.

T2

Input type accepted by the downstream action.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2>(Action<T1, Func<T2>>)

Starts a void pipeline from a step that receives downstream parameterless function.

public static PipelineBuilder<T1, Unit, T2, Unit> Use<T1, T2>(Action<T1, Func<T2>> middleware)

Parameters

middleware Action<T1, Func<T2>>

Middleware action that can invoke downstream parameterless function.

Returns

PipelineBuilder<T1, Unit, T2, Unit>

Builder with downstream input fixed to Unit.

Type Parameters

T1

Input type accepted by the middleware.

T2

Output type returned by the downstream parameterless function.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2>(Func<Action<T1>, T2>)

Starts a parameterless pipeline that returns value and can invoke downstream typed action.

public static PipelineBuilder<Unit, T1, Unit, T2> Use<T1, T2>(Func<Action<T1>, T2> middleware)

Parameters

middleware Func<Action<T1>, T2>

Middleware function that can invoke downstream action.

Returns

PipelineBuilder<Unit, T1, Unit, T2>

Builder with downstream output fixed to Unit.

Type Parameters

T1

Input type accepted by the downstream action.

T2

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2>(Func<Func<T1>, T2>)

Starts a parameterless pipeline that returns value and can invoke downstream parameterless function.

public static PipelineBuilder<Unit, Unit, T1, T2> Use<T1, T2>(Func<Func<T1>, T2> middleware)

Parameters

middleware Func<Func<T1>, T2>

Middleware function that can invoke downstream parameterless function.

Returns

PipelineBuilder<Unit, Unit, T1, T2>

Builder with downstream input fixed to Unit.

Type Parameters

T1

Output type returned by the downstream parameterless function.

T2

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2>(Func<T1, Action, T2>)

Starts a pipeline from a step that forwards to downstream via parameterless Action.

public static PipelineBuilder<T1, Unit, Unit, T2> Use<T1, T2>(Func<T1, Action, T2> middleware)

Parameters

middleware Func<T1, Action, T2>

Middleware function that calls downstream action.

Returns

PipelineBuilder<T1, Unit, Unit, T2>

Builder whose downstream input and output types are Unit.

Type Parameters

T1

Input type accepted by the middleware.

T2

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2, T3>(Action<T1, Func<T2, T3>>)

Starts a void pipeline from a step that receives downstream function.

public static PipelineBuilder<T1, T2, T3, Unit> Use<T1, T2, T3>(Action<T1, Func<T2, T3>> middleware)

Parameters

middleware Action<T1, Func<T2, T3>>

Middleware action that can invoke downstream function.

Returns

PipelineBuilder<T1, T2, T3, Unit>

Builder for appending next middleware steps and terminal executable.

Type Parameters

T1

Input type accepted by the middleware.

T2

Input type expected by the downstream function.

T3

Output type returned by the downstream function.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2, T3>(Func<Func<T1, T2>, T3>)

Starts a parameterless pipeline that returns value and can invoke downstream typed function.

public static PipelineBuilder<Unit, T1, T2, T3> Use<T1, T2, T3>(Func<Func<T1, T2>, T3> middleware)

Parameters

middleware Func<Func<T1, T2>, T3>

Middleware function that can invoke downstream function.

Returns

PipelineBuilder<Unit, T1, T2, T3>

Builder for appending next middleware steps and terminal executable.

Type Parameters

T1

Input type expected by the downstream function.

T2

Output type returned by the downstream function.

T3

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2, T3>(Func<T1, Action<T2>, T3>)

Starts a pipeline from a step that forwards to downstream via typed Action<T>.

public static PipelineBuilder<T1, T2, Unit, T3> Use<T1, T2, T3>(Func<T1, Action<T2>, T3> middleware)

Parameters

middleware Func<T1, Action<T2>, T3>

Middleware function that calls downstream action.

Returns

PipelineBuilder<T1, T2, Unit, T3>

Builder whose downstream output type is Unit.

Type Parameters

T1

Input type accepted by the middleware.

T2

Input type accepted by the downstream action.

T3

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2, T3>(Func<T1, Func<T2>, T3>)

Starts a pipeline from a step that receives downstream parameterless function.

public static PipelineBuilder<T1, Unit, T2, T3> Use<T1, T2, T3>(Func<T1, Func<T2>, T3> middleware)

Parameters

middleware Func<T1, Func<T2>, T3>

Middleware function that can invoke downstream parameterless function.

Returns

PipelineBuilder<T1, Unit, T2, T3>

Builder with downstream input fixed to Unit.

Type Parameters

T1

Input type accepted by the middleware.

T2

Output type returned by the downstream function.

T3

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.

Use<T1, T2, T3, T4>(Func<T1, Func<T2, T3>, T4>)

Starts a pipeline from a step that receives downstream call as Func<T, TResult>.

public static PipelineBuilder<T1, T2, T3, T4> Use<T1, T2, T3, T4>(Func<T1, Func<T2, T3>, T4> middleware)

Parameters

middleware Func<T1, Func<T2, T3>, T4>

Middleware function that can invoke downstream function.

Returns

PipelineBuilder<T1, T2, T3, T4>

Builder for appending next middleware steps and terminal executable.

Type Parameters

T1

Input type accepted by the middleware.

T2

Input type expected by the downstream function.

T3

Output type returned by the downstream function.

T4

Output type returned by the middleware.

Exceptions

ArgumentNullException

middleware is null.