Retry.plan: def of bend-kit-retry@0.3.0.0 Import: import bend-kit-retry@0.3.0.0/retry.bend as Retry Lines 233-246 of bend-kit-retry@0.3.0.0/retry.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-retry@0.3.0.0/retry.bend&start_line=233&end_line=246 import Base # After an attempt ends at now: stop, or wait ms and then ask admit again. Settled, Failed, Rejected, and Unsafe always stop. # A transient outcome stops when the budget is spent or the wait would reach the deadline. def plan(o: Outcome, p: Policy, b: Budget, +n: Nat, +now: Nat, +r: Nat) -> Plan: match o: case Settled{}: PlanStop{} case Failed{}: PlanStop{} case Rejected{}: PlanStop{} case Unsafe{}: PlanStop{} case Transient{after}: plan.at(wait(after, p, n, r), b, now) Uses (7): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=bend-kit-retry@0.3.0.0/retry.bend&name=Budget https://jend.leeeet.dev/definition.txt?path=bend-kit-retry@0.3.0.0/retry.bend&name=Outcome https://jend.leeeet.dev/definition.txt?path=bend-kit-retry@0.3.0.0/retry.bend&name=Plan https://jend.leeeet.dev/definition.txt?path=bend-kit-retry@0.3.0.0/retry.bend&name=Policy https://jend.leeeet.dev/definition.txt?path=bend-kit-retry@0.3.0.0/retry.bend&name=plan.at https://jend.leeeet.dev/definition.txt?path=bend-kit-retry@0.3.0.0/retry.bend&name=wait