Module rama::service::layer

source ·
Expand description

Layer type and utilities.

Layers are the abstraction of middleware in Rama.

Direct copy of tower-layer.



  • Middleware that clones a value into the incoming Context.
  • Request-agnostic layers that act in function of the HTTP Application Layer, regardless of the layer the service itself operates on.
  • A middleware that limits the number of in-flight requests.
  • Middleware that applies a timeout to requests.



  • A layer that produces a Layered service (middleware(inner service)).
  • Utility error trait to allow Rama layers to return a default error as well as a user-defined one, being it a Clone-able type or a Fn returning an error type.