Module gotham::pipeline

source ·
Expand description

Defines types for a middleware pipeline


  • When using middleware, one or more Middleware are combined to form a Pipeline. Middleware are invoked strictly in the order they’re added to the Pipeline.
  • Allows a pipeline to be defined by adding NewMiddleware values, and building a Pipeline.


  • A heterogeneous list of Handle<P, _> values, where P is a pipeline type. The pipelines are borrowed and invoked in order to serve a request.


  • Wraps the current set of Pipeline instances into a thread-safe reference counting pointer for use with the Router.
  • Begins defining a new pipeline.
  • Create an empty set of Pipeline instances.
  • Constructs a pipeline from a single middleware.
  • Creates a single pipeline for use in applications with straightforward use cases for middleware.

Type Aliases

  • A set of Pipeline instances that is currently being defined, and can have more Pipeline instances added.
  • Represents the set of all Pipeline instances that are available for use when building a Router. A PipelineSet is “frozen”.
  • A pipeline chain which contains only the single pipeline in a SinglePipelineSet.
  • A Handle for borrowing the only pipeline from a SinglePipelineSet.
  • A PipelineSet which contains only a single pipeline.