Cli.osa.rows: def of shake@0.8.0.0 Import: import shake@0.8.0.0/src/cli.bend as Cli Lines 2308-2322 of shake@0.8.0.0/src/cli.bend: https://jend.leeeet.dev/read.txt?path=shake@0.8.0.0/src/cli.bend&start_line=2308&end_line=2322 import Base # the rows for the chars of `as`, the last row `pp` and the one before `qq`, # down to the distance in the last row's last cell def osa.rows( as: List<&2, Char>, +bs: List<&2, Char>, pa: Maybe<&2, Char>, +ii: Nat, +pp: List<&2, Nat>, qq: List<&2, Nat> ) -> Nat: match as: case Nil{}: osa.last(pp, 0n) case Con{+ca, at}: osa.rows(at, bs, Some{ca}, 1n+ii, (1n+ii) <> osa.row(bs, ca, pa, None{}, 1n+ii, pp, 0n <> qq), pp) Uses (6): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Char https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=shake@0.8.0.0/src/cli.bend&name=osa.last https://jend.leeeet.dev/definition.txt?path=shake@0.8.0.0/src/cli.bend&name=osa.row