def bsearch.array.advance
import bend-osdev-algo@0.1.0.0/bsearch.bend as Bsearchimport Base
101def bsearch.array.advance(st: BsearchState, +key: U32) -> BsearchState:
102 match st:
103 case BsearchState{a, +lo, +hi}:
104 +mid = U32.add(lo, U32.shr(U32.sub(hi, lo)))
105 bsearch.array.step(U32.is_lt(lo, hi), Array.get(U32, a, mid), key, lo, hi, mid)