def Serve.usable

bend-trace-context@0.2.0.0 · trace_context.bend:3554

import bend-trace-context@0.2.0.0/trace_context.bend as TraceContext
import Base

3554# Continue the kept context with a child, with its parent and state, or
3555# replace it with a new trace, as `reception` says.
3556def Serve.usable(+base: BaseContext, received: Maybe<&2, IncomingContext>, reception: Reception,
3557  sampling: Sampling) -> ServicePlan:
3558  match reception:
3559    case Continue{}:
3560      ContinuePlan{Generation.child(BaseContext.parent(base), sampling), BaseContext.state(base), received}
3561    case Restart{}:
3562      StartPlan{Generation.restart(Serve.replaced(base), Serve.new_trace_sampled(sampling)), Restarted{}}

Uses (13)

Used by (1)