def open.sized.valid

mylsm-lsm-store@0.6.0.1 · src/scan/ByteBlockReader.bend:446

import mylsm-lsm-store@0.6.0.1/src/scan/ByteBlockReader.bend as ByteBlockReader
import Base

446def open.sized.valid(
447  +path: String,
448  +size: Nat,
449  valid: Bool
450) -> IO(Result<&1, &1, U32 & String, Reader>):
451  match valid:
452    case False{}:
453      IO.pure(Result<&1, &1, U32 & String, Reader>,
454        Fail{corruption("byte SST is truncated")})
455    case True{}:
456      do IO<Result<&1, &1, U32 & String, Reader>>:
457        opened : Result<&1, &1, U32 & String, File> <- File.open(path, "r")
458        open.file(size, opened)

Uses (14)

Used by (1)