This module provides a high-level interface for temporary files. It ensures that all temporary files created by the application are systematically cleaned up on exit.
Create a temporary file or directory inside an existing directory.
val clear_dir : Path.t -> unit
Delete the contents of a temporary directory without deleting the directory itself.
temp_file ~dir ~prefix ~suffix creates a temporary file in
dir. The base name of the file is
num is a random integer number. Note that the file must be created to reserve the name in
dir and prevent other processes from taking it concurrently. If you need a temporary file that does not exist on disk, you can create a temporary directory and safely use any file name there.
val with_temp_file : dir:Path.t -> prefix:string -> suffix:string -> f:( Path.t Or_exn.t -> 'a ) -> 'a
temp_file, but passes the temporary file to the callback
f, and makes sure the temporary file is deleted when
f completes. If
f raises an exception, the exception is re-raised (and the file is still deleted).
val with_temp_dir : parent_dir:Path.t -> prefix:string -> suffix:string -> f:( Path.t Or_exn.t -> 'a ) -> 'a
with_temp_file, but creates a temporary directory.