def value_length
import mylsm-lsm-store@0.6.0.1/src/ByteDurableDb.bend as ByteDurableDbimport Base
import mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend as ByteMemTable
import bend-kit-bytes@0.3.2.0/bytes.bend as Bytes
1536# Handles value length.
1537def value_length(
1538 handle: Handle,
1539 key: Bytes.Bytes
1540) -> IO(Handle & Result<&1, &1, Error, Maybe<&1, U32>>):
1541 match handle:
1542 case Handle{path, lock, table, Open{}, base_stats}:
1543 do IO<Handle & Result<&1, &1, Error, Maybe<&1, U32>>>:
1544 measured : Handle & Result<&1, &1, Error, Maybe<&1, U32>> <-
1545 get.length.delta(path, lock, ByteMemTable.bytes.clone(key), table)
1546 return value_length.preserve(base_stats, measured)
1547 case Handle{path, lock, table, Poisoned{}, base_stats}:
1548 IO.pure(Handle & Result<&1, &1, Error, Maybe<&1, U32>>,
1549 (Handle{path, lock, table, Poisoned{}, base_stats},
1550 Fail{CommitUnknown{0, "database handle requires reopen"}}))
Uses (15)
Used by (0)
No other definition uses this definition.