def loop_none.pick

minebender-game@1.0.0.0 · proof_solver.bend:2306

import minebender-game@1.0.0.0/proof_solver.bend as ProofSolver
import Base
import minebender-game@1.0.0.0/types.bend as T
import minebender-game@1.0.0.0/board.bend as B
import minebender-game@1.0.0.0/solver.bend as S

2306def loop_none.pick(+ctx: S.Ctx, +c0: T.Pos, +t: List<&2, T.Pos>, +c: T.Pos, +l: T.Grid(Bool),
2307  vl: {S.check(ctx, l) == True{} : Bool}, ml: {B.mine(l, c0) == True{} : Bool},
2308  mr: Or({B.same(c0, c) == True{} : Bool}, {B.contains(t, c) == True{} : Bool}),
2309  k: {B.contains(t, c) == True{} : Bool} -> Witness(ctx, c)) -> Witness(ctx, c):
2310  match mr:
2311    case Inl{cq}:
2312      witness_move(ctx, c0, c, cq, (l, (vl, ml)))
2313    case Inr{mt}:
2314      k(mt)

Uses (14)

Used by (1)