Archive.eocd.go: def of bend-kit-archive@0.5.1.0 Import: import bend-kit-archive@0.5.1.0/archive.bend as Archive Lines 95-107 of bend-kit-archive@0.5.1.0/archive.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-archive@0.5.1.0/archive.bend&start_line=95&end_line=107 import Base # f counts the positions left below p; a comment is at most 65535 bytes. def eocd.go(f: Nat, r: Array & Bool, +len: U32, +p: U32) -> Array & Maybe<&2, U32>: match f: case 0n: (a, hit) = r (a, Bool.pick(Maybe<&2, U32>, hit, Some{p}, None{})) case 1n+q: (a, hit) = r match hit: case True{}: (a, Some{p}) case False{}: eocd.go(q, eocd.win(a, len, (p - 1 : U32)), len, (p - 1 : U32)) Uses (10): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Array https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool.pick 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=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Sigma https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.sub https://jend.leeeet.dev/definition.txt?path=bend-kit-archive@0.5.1.0/archive.bend&name=eocd.win