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)