def claim.tripped

bend-kit-runner@0.13.0.1 · runner.bend:1229

import bend-kit-runner@0.13.0.1/runner.bend as Runner
import Base
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes
import bend-kit-resources@0.1.0.0/resources.bend as Res
import bend-kit-retry@0.3.0.0/retry.bend as Retry

1229def claim.tripped(~A: Data, ~penc: A -> Bytes.Bytes, ~work: A -> IO(Retry.Outcome), +now: Nat, y: Ran(A), gate: Retry.Gate, +br: Retry.Breaker, b: Retry.Budget, +key: String,
1230    +id: Nat, d: Nat, +x: A, g: Res.Grant, next: Runner<A> -> IO(Claimed(A))) -> IO(Claimed(A)):
1231  match y:
1232    case (r, Fail{e}):
1233      IO.pure(Claimed(A), (release(A, r, g), 0n, Fail{e}))
1234    case (r, Done{u}):
1235      claim.go(~A, ~penc, ~work, now, gate, br, b, key, r, id, d, x, g, next)

Uses (17)

Used by (1)