Runtime metadata for a Patterns.Middleware invocation.
args stores the original argument list passed to the wrapped function or to
run/4. Middleware can pass a different value to yield/2; doing so changes
the value passed to the rest of the stack, but it does not change args.
Annotated functions build resolutions automatically. Direct run/4 callers
create one explicitly with module, function, arity, and args.
Fields
moduleis the module that owns the wrapped function or direct middleware invocation.functionis the wrapped function name, or the operation name supplied by a directrun/4caller.arityis the wrapped function arity, or the operation arity supplied by a directrun/4caller.argsis the original argument list.middlewareis the remaining middleware stack for the current yield. Treat this as runtime state; middleware should normally callyield/2instead of updating it directly.superis the arity-2 function called after the last middleware yields.run/4installs this automatically.privatestores middleware metadata. UsePatterns.Middlewareprivate helpers instead of updating it directly.