def temporary.decoded
mylsm-lsm-store@0.6.0.1 · src/transfer/RestoreIo.bend:384
import mylsm-lsm-store@0.6.0.1/src/transfer/RestoreIo.bend as RestoreIo
import Base
import mylsm-lsm-store@0.6.0.1/src/ByteDurableDb.bend as Db
import mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend as ByteMemTable
import mylsm-lsm-store@0.6.0.1/src/transfer/Restore.bend as Restore
384def temporary.decoded(
385 +destination: String,
386 +temporary: String,
387 decoded: Result<&1, &1, Restore.Error, Restore.Decoded>
388) -> IO(Result<&1, &1, Error, Unit>):
389 match decoded:
390 case Fail{error}:
391 IO.pure(Result<&1, &1, Error, Unit>, Fail{decode.error(error)})
392 case Done{Restore.Decoded{entries}}:
393 do IO<Result<&1, &1, Error, Unit>>:
394 created : Result<&1, &1, Db.Error, Db.Handle> <- Db.create(path.clone(temporary))
395 result : Result<&1, &1, Error, Unit> <- temporary.create(destination,
396 temporary, created, ByteMemTable.count.keep(entries))
397 return result