def item.measured

mylsm-lsm-store@0.6.0.1 · src/coordinator/CursorCodec.bend:47

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

47# Encodes retained key/value buffers after measuring each exact byte length.
48def item.measured(
49  key_size: Bytes.Bytes & U32,
50  value_size: Bytes.Bytes & U32
51) -> Bytes.Bytes:
52  match key_size:
53    case (key, key_length):
54      match value_size:
55        case (value, value_length):
56          Bytes.concat([item.tag(), u32.bytes(key_length), key,
57            u32.bytes(value_length), value])

Uses (8)

Used by (1)