def go_res
cswap-bend-cli@0.1.0.0 · daemon/apply.bend:108
import cswap-bend-cli@0.1.0.0/daemon/apply.bend as Apply
import Base
import cswap-bend-cli@0.1.0.0/act.bend as Act
import cswap-bend-cli@0.1.0.0/store/base.bend as SBase
import cswap-bend-cli@0.1.0.0/daemon/dec.bend as Dc
import cswap-bend-cli@0.1.0.0/daemon/state.bend as St
108def go_res(+c: Dc.Ctx, go: Dc.Dec) -> Act.of(Dc.TickRes):
109 match go:
110 case Dc.DGo{+to, +email, +trigger, lh, lr}:
111 Act.cond(Dc.TickRes, Dc.ctx_dry(c), Act.pure(Dc.TickRes, dry_res(c, trigger, to, email)),
112 St.with_state_lock(Dc.TickRes, SBase.root_of(Dc.ctx_store(c)), locked_switch(c, SBase.root_of(Dc.ctx_store(c)), go, to, trigger)))
113 case _:
114 Act.pure(Dc.TickRes, Dc.error_res(c, "internal: not a switch"))