def verify.exhausted

mylsm-lsm-store@0.6.0.1 · src/scan/SstCursor.bend:247

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

247def verify.exhausted(state: VerifyState) -> IO(Result<&1, &1, U32 & String, Cursor>):
248  match state:
249    case VerifyNeed{reader, _}:
250      do IO<Result<&1, &1, U32 & String, Cursor>>:
251        _closed : Result<&1, &1, U32 & String, Unit> <- ByteBlockReader.close(reader)
252        return Fail{(7, "SST validation exceeded its transition budget")}
253    case VerifyRead{result, _}:
254      match result:
255        case Done{ByteBlockReader.Block{reader, _}}:
256          do IO<Result<&1, &1, U32 & String, Cursor>>:
257            _closed : Result<&1, &1, U32 & String, Unit> <-
258              ByteBlockReader.close(reader)
259            return Fail{(7, "SST validation exceeded its transition budget")}
260        case _:
261          IO.pure(Result<&1, &1, U32 & String, Cursor>,
262            Fail{(7, "SST validation exceeded its transition budget")})

Uses (13)

Used by (1)