/* * Copyright 2026 Flix Authors * * Use of this source code is governed by the Apache 2.0 license * that can be found in the LICENSE.md file. */////// Effect for writing a string to a file, and its functions.///pubmod Fs.WriteFile {use Fs.FileWrite////// Effect for writing a string to a file.////// Use the `WriteFile.runWithFileWrite` handler.///pubeffWriteFile {////// Writes `str` to the given file `f`.////// Creates file `f` if it does not exist. Overwrites it if it exists.///defwrite(data: {str = String}, f: String): Result[IoError, Unit] }////// Handles the `WriteFile` effect of the given function `f` using the `FileWrite` effect.///pubdefrunWithFileWrite(f: Unit -> a \ ef): a \ (ef - WriteFile) + FileWrite =run { f() } withhandlerWriteFile {defwrite(data, file, k) = k(Fs.FileWrite.write(data, file)) }}