Table of Contents

Namespace PatternKit.Structural.Decorator

Classes

ActionDecorator<TIn>

Fluent, allocation-light action decorator that wraps a component and applies layered enhancements for side effects (void-returning operations). Build once, then call Execute(in TIn) to run the component through the decorator pipeline.

ActionDecorator<TIn>.Builder

Fluent builder for ActionDecorator<TIn>.

AsyncActionDecorator<TIn>

Fluent, allocation-light async action decorator that wraps a component and applies layered enhancements for async side effects (void-returning async operations). Build once, then call ExecuteAsync(TIn, CancellationToken) to run the component through the decorator pipeline.

AsyncActionDecorator<TIn>.Builder

Fluent builder for AsyncActionDecorator<TIn>.

AsyncDecorator<TIn, TOut>

Fluent, allocation-light async decorator that wraps a component and applies layered enhancements. Build once, then call ExecuteAsync(TIn, CancellationToken) to run the component through the decorator pipeline.

AsyncDecorator<TIn, TOut>.Builder

Fluent builder for AsyncDecorator<TIn, TOut>.

Decorator<TIn, TOut>

Fluent, allocation-light decorator that wraps a component and applies layered enhancements via ordered decorators. Build once, then call Execute(in TIn) to run the component through the decorator pipeline.

Decorator<TIn, TOut>.Builder

Fluent builder for Decorator<TIn, TOut>.

Delegates

ActionDecorator<TIn>.AfterAction

Delegate for executing logic after the next layer completes.

ActionDecorator<TIn>.AroundTransform

Delegate for wrapping the entire execution with custom logic.

ActionDecorator<TIn>.BeforeTransform

Delegate for transforming the input before it reaches the next layer.

ActionDecorator<TIn>.Component

Delegate representing the base component action.

AsyncActionDecorator<TIn>.AfterAction

Async delegate for executing logic after the next layer completes.

AsyncActionDecorator<TIn>.AroundTransform

Async delegate for wrapping the entire execution with custom logic.

AsyncActionDecorator<TIn>.BeforeTransform

Async delegate for transforming input before it reaches the next layer.

AsyncActionDecorator<TIn>.Component

Async component action delegate.

AsyncDecorator<TIn, TOut>.AfterTransform

Async delegate for transforming output after it returns from the next layer.

AsyncDecorator<TIn, TOut>.AroundTransform

Async delegate for wrapping the entire execution with custom logic.

AsyncDecorator<TIn, TOut>.BeforeTransform

Async delegate for transforming input before it reaches the next layer.

AsyncDecorator<TIn, TOut>.Component

Async component delegate.

Decorator<TIn, TOut>.AfterTransform

Delegate for transforming the output after it returns from the next layer.

Decorator<TIn, TOut>.AroundTransform

Delegate for wrapping the entire execution with custom logic (e.g., logging, error handling).

Decorator<TIn, TOut>.BeforeTransform

Delegate for transforming the input before it reaches the next layer.

Decorator<TIn, TOut>.Component

Delegate representing the base component operation that transforms input to output.