def record.key.finished

mylsm-lsm-store@0.6.0.1 · src/ByteWal.bend:295

import mylsm-lsm-store@0.6.0.1/src/ByteWal.bend as ByteWal
import Base
import bend-kit-bytes@0.3.2.0/bytes.bend as Bytes

295# Finishes a raw delete record or reads the following put value length.
296def record.key.finished(
297  frame: Bytes.Bytes,
298  tag: U32,
299  key: Bytes.Bytes,
300  +value_length_offset: U32
301) -> DecodedRecord:
302  match tag:
303    case 1:
304      RecordDone{frame, (value_length_offset : U32), Delete{key}}
305    case 0:
306      record.put.value.length.read(
307        Bytes.get.u32be(frame, value_length_offset), key, value_length_offset)
308    case _:
309      record.malformed(frame)

Uses (10)

Used by (1)