def qfind
bend-collections-laws-crypto@1.0.0.0 · src/containers/hash_table.bend:216
import bend-collections-laws-crypto@1.0.0.0/src/containers/hash_table.bend as HashTable
import Base
216def qfind(fuel: Nat, s: QStep, +mask: U32, +w: U32, +i: U32) -> QFound:
217 match fuel s:
218 case 0n QEnd{tab}:
219 QF{tab, i, 0}
220 case 0n QHit{tab, +l}:
221 QF{tab, i, l}
222 case 0n QNext{tab}:
223 QF{tab, i, 0}
224 case 1n+p QEnd{tab}:
225 QF{tab, i, 0}
226 case 1n+p QHit{tab, +l}:
227 QF{tab, i, l}
228 case 1n+p QNext{tab}:
229 +j = bnext(i, mask)
230 qfind(p, qstep(tab, j, w), mask, w, j)