Redis.decode: def of bend-kit-redis@0.3.1.0 Import: import bend-kit-redis@0.3.1.0/redis.bend as Redis Lines 629-633 of bend-kit-redis@0.3.1.0/redis.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-redis@0.3.1.0/redis.bend&start_line=629&end_line=633 import Base import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes # One reply starting at byte i of b. Every item takes at least 3 bytes and each step # reads an item or closes one, so 2 * (len - i) + 2 steps are enough. def decode(b: Bytes.Bytes, +i: U32) -> Bytes.Bytes & Step: Bytes.Bytes{+len, buf} = b run(Nat.add(Nat.mul(U32.to_nat((len - i : U32)), 2n), 2n), (Bytes.Bytes{len, buf}, SHead{i, Nil{}})) Uses (12): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.add https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.mul 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=Base/base.bend&name=U32.to_nat https://jend.leeeet.dev/definition.txt?path=bend-kit-bytes@0.3.3.0/bytes.bend&name=Bytes https://jend.leeeet.dev/definition.txt?path=bend-kit-redis@0.3.1.0/redis.bend&name=St https://jend.leeeet.dev/definition.txt?path=bend-kit-redis@0.3.1.0/redis.bend&name=Step https://jend.leeeet.dev/definition.txt?path=bend-kit-redis@0.3.1.0/redis.bend&name=run