ByteMemTable.lookup.advance.state: def of mylsm-lsm-store@0.6.0.1 Import: import mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend as ByteMemTable Lines 229-242 of mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend: https://jend.leeeet.dev/read.txt?path=mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend&start_line=229&end_line=242 import Base import mylsm-lsm-store@0.6.0.1/src/Keys.bend as Keys import bend-kit-bytes@0.3.2.0/bytes.bend as Bytes # Advances the affine scan while retaining the prior entry in its prefix. def lookup.advance.state( query: Bytes.Bytes, key: Bytes.Bytes, value: Maybe<&1, Bytes.Bytes>, tail: List<&1, Entry>, prefix: List<&1, Entry> ) -> Search: match tail: case Nil{}: Search{query, Nil{}, Con{Entry{key, value}, prefix}, EQ{}} case Con{Entry{next_key, next_value}, rest}: lookup.state(Con{Entry{key, value}, prefix}, next_value, rest, Keys.Bytes.cmp.with_inputs(next_key, query)) Uses (8): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Cmp https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe 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=mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend&name=Entry https://jend.leeeet.dev/definition.txt?path=mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend&name=Search https://jend.leeeet.dev/definition.txt?path=mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend&name=lookup.state https://jend.leeeet.dev/definition.txt?path=mylsm-lsm-store@0.6.0.1/src/Keys.bend&name=Bytes.cmp.with_inputs