def lookup.length.hit

mylsm-lsm-store@0.6.0.1 · src/ByteMemTable.bend:346

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

346def lookup.length.hit(
347  prefix: List<&1, Entry>,
348  key: Bytes.Bytes,
349  tail: List<&1, Entry>,
350  val: Maybe<&1, Bytes.Bytes>
351) -> LengthLookup:
352  match val:
353    case None{}:
354      lookup.length.result(prefix, Con{Entry{key, None{}}, tail},
355        LengthDeleted{}, True{})
356    case Some{Bytes.Bytes{+len, buf}}:
357      lookup.length.result(prefix,
358        Con{Entry{key, Some{Bytes.Bytes{len, buf}}}, tail},
359        LengthPresent{len}, True{})

Uses (8)

Used by (1)