Table of Contents

Namespace Executables

Classes

AsyncBranch

Factory methods for creating asynchronous conditional executor branches.

AsyncCommand<T>

Default asynchronous command implementation backed by a registered handler.

AsyncCompositeExecutableExtensions

Extension methods for composing asynchronous executables.

AsyncConditionalExecutorExtensions

Extension methods for building conditional asynchronous executors.

AsyncExecutable

Factory methods for creating asynchronous executables.

AsyncExecutableExtensions

Extension methods for composing and adapting asynchronous executables.

AsyncExecutorExtensions

Extension methods for composing and adapting asynchronous executors.

AsyncPipeline

Entry point for building asynchronous middleware pipelines.

AsyncQuery<T1, T2>

Default asynchronous query implementation backed by a registered handler.

Branch

Factory methods for creating conditional executors.

Command<T>

Default command implementation backed by a registered handler.

CompositeExecutableExtensions

Extension methods for composing executables.

ConditionalExecutorExtensions

Extension methods for building conditional executors.

Event<T>

Default event implementation backed by a publishing handler and a subscriber collection.

Executable

Factory methods for creating executables.

ExecutableExtensions

Extension methods for composing and adapting executables.

ExecutorExtensions

Extension methods for composing and adapting executors.

Iso

Factory methods for creating reversible transformations.

IsoExtensions

Extension methods for composing and adapting isomorphisms.

Pipeline

Entry point for building middleware pipelines.

Query<T1, T2>

Default query implementation backed by a registered handler.

RaceExecutableExtensions

Extension methods for building race-style executable compositions.

Structs

AsyncCommand<T>.Executor
AsyncQuery<T1, T2>.Executor
Command<T>.Executor
Event<T>.Executor
Optional<T>

Represents an optional value that may be present or absent.

Query<T1, T2>.Executor
Result<T>

Represents either a successful value or a failure exception.

Unit

Represents the absence of a meaningful value.

Interfaces

IAsyncCommand<T>

Represents an asynchronous command that may succeed or fail.

IAsyncExecutable<TIn, TOut>

Represents an asynchronous executable operation.

IAsyncExecutor<TIn, TOut>

Represents an asynchronous executor that processes input and returns a result.

IAsyncQuery<T1, T2>

Represents an asynchronous query that returns a result.

ICommand<T>

Represents a command that may succeed or fail.

IEvent<T>

Represents an event that can be published to subscribers.

IExecutable<TIn, TOut>

Represents an executable operation.

IExecutor<TIn, TOut>

Represents an executor that processes input and returns a result.

IIso<T1, T2>

Represents a reversible transformation between two types.

IOptional

Represents a value container that may or may not currently contain a value.

IQuery<T1, T2>

Represents a query that returns a result.

Delegates

AsyncAction

Represents an asynchronous action with no input arguments.

AsyncAction<T>

Represents an asynchronous action with one input argument.

AsyncAction<T1, T2>

Represents an asynchronous action with two input arguments.

AsyncAction<T1, T2, T3>

Represents an asynchronous action with three input arguments.

AsyncAction<T1, T2, T3, T4>

Represents an asynchronous action with four input arguments.

AsyncFunc<TResult>

Represents an asynchronous function with no input arguments and a result.

AsyncFunc<T1, TResult>

Represents an asynchronous function with one input argument and a result.

AsyncFunc<T1, T2, TResult>

Represents an asynchronous function with two input arguments and a result.

AsyncFunc<T1, T2, T3, TResult>

Represents an asynchronous function with three input arguments and a result.

AsyncFunc<T1, T2, T3, T4, TResult>

Represents an asynchronous function with four input arguments and a result.