def destination.checked
mylsm-lsm-store@0.6.0.1 · src/transfer/BackupIo.bend:236
import mylsm-lsm-store@0.6.0.1/src/transfer/BackupIo.bend as BackupIo
import Base
import mylsm-lsm-store@0.6.0.1/src/transfer/Backup.bend as Backup
import mylsm-lsm-store@0.6.0.1/src/Fs.bend as Fs
236def destination.checked(
237 +destination: String,
238 +temporary: String,
239 exists: Result<&1, &1, U32 & String, Bool>,
240 stream: Backup.Stream,
241 fuel: Nat
242) -> IO(Result<&1, &1, Error, Unit>):
243 match exists:
244 case Fail{(code, message)}:
245 IO.pure(Result<&1, &1, Error, Unit>, Fail{Io{code, message}})
246 case Done{True{}}: IO.pure(Result<&1, &1, Error, Unit>, Fail{AlreadyExists{}})
247 case Done{False{}}:
248 do IO<Result<&1, &1, Error, Unit>>:
249 created : Result<&1, &1, U32 & String, Unit> <- Fs.make_dir(path.clone(temporary))
250 directory.created(destination, temporary, created, stream, fuel)