def commit

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

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

1102# Appends op, and applies it once the append is durable. After a failed append the state is as it was,
1103# and the journal refuses every later append until the runner is reopened.
1104def commit(~A: Data, ~penc: A -> Bytes.Bytes, r: Runner<A>, +op: Op<A>) -> IO(Ran(A)):
1105  Runner{j, s, p, c, ib, fs} = r
1106  do IO<Ran(A)>:
1107    x : Log & Out(Unit) <- log.append(j, encode(~A, ~penc, op))
1108    return commit.done(~A, x, s, op, p, c, ib, fs)

Uses (14)

Used by (10)