def destination.checked

mylsm-lsm-store@0.6.0.1 · src/transfer/BackupCursorIo.bend:285

import mylsm-lsm-store@0.6.0.1/src/transfer/BackupCursorIo.bend as BackupCursorIo
import Base
import mylsm-lsm-store@0.6.0.1/src/Fs.bend as Fs
import mylsm-lsm-store@0.6.0.1/src/transfer/BackupCursor.bend as BackupCursor
import mylsm-lsm-store@0.6.0.1/src/transfer/BackupIo.bend as BackupIo

285def destination.checked(
286  +destination: String,
287  +temporary: String,
288  initial: BackupCursor.Step,
289  fuel: Nat,
290  exists: Result<&1, &1, U32 & String, Bool>
291) -> IO(Result<&1, &1, BackupIo.Error, Unit>):
292  match exists:
293    case Fail{(code, message)}:
294      initial.failed(initial, BackupIo.Io{code, message})
295    case Done{True{}}:
296      initial.failed(initial, BackupIo.AlreadyExists{})
297    case Done{False{}}:
298      do IO<Result<&1, &1, BackupIo.Error, Unit>>:
299        created : Result<&1, &1, U32 & String, Unit> <- Fs.make_dir(path.clone(temporary))
300        directory.created(destination, temporary, initial, fuel, created)

Uses (16)

Used by (1)