def seek.block.decoded.offsets
mylsm-lsm-store@0.6.0.1 · src/scan/ByteBlockReader.bend:515
import mylsm-lsm-store@0.6.0.1/src/scan/ByteBlockReader.bend as ByteBlockReader
import Base
import mylsm-lsm-store@0.6.0.1/src/scan/BlockIndexPolicy.bend as BlockIndexPolicy
515def seek.block.decoded.offsets(
516 state: State,
517 index: U32,
518 file: File,
519 index_offset: Nat,
520 offsets: Maybe<&2, U32> & Maybe<&2, U32>
521) -> IO(Result<&1, &1, U32 & String, Reader>):
522 match offsets:
523 case (Some{+offset}, Some{length}):
524 seek.block.ready(file, state, index, offset,
525 BlockIndexPolicy.entry_valid(U32.to_nat(offset),
526 U32.to_nat(length), index_offset))
527 case _:
528 seek.block.invalid(file)