def publish.synced
mylsm-lsm-store@0.6.0.1 · src/transfer/BackupIo.bend:134
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/Fs.bend as Fs
134def publish.synced(
135 +destination: String,
136 +temporary: String,
137 result: Result<&1, &1, U32 & String, Unit>
138) -> IO(Result<&1, &1, Error, Unit>):
139 match result:
140 case Fail{(code, message)}:
141 do IO<Result<&1, &1, Error, Unit>>:
142 cleanup(temporary)
143 return Fail{Io{code, message}}
144 case Done{Unit{}}:
145 do IO<Result<&1, &1, Error, Unit>>:
146 synced : Result<&1, &1, U32 & String, Unit> <- Fs.fsync(path.clone(temporary))
147 publish.directory.synced(destination, temporary, synced)