def bit_length

stelliferous@0.0.2.0 · storage_buffer.bend:31

import stelliferous@0.0.2.0/storage_buffer.bend as StorageBuffer
import Base

31# At most 32 word steps, independent of the allocation length.
32def bit_length(remaining_bits: Nat,+value: U32) -> Nat:
33  match remaining_bits:
34    case 0n: 0n
35    case 1n+rest:
36      Bool.pick(Nat,U32.is_zero(value),0n,1n+bit_length(rest,U32.shr(value)))

Uses (5)

Used by (1)