module File: sig
.. end
type
t = string
A file should be represented by its absolute path, but currently
this is not enforced.
val to_string : t -> string
val make : string -> t
Build a file representation from a path (absolute or relative)
val exists : t -> bool
val is_directory : t -> bool
val remove_exn : t -> unit
remove_exn path
tries to remove the file at path
from the
file system.
Since 0.8
Raises Sys_error
if there is no file at path
or access rights are wrong.
val remove : t -> unit CCIO.or_error
Like remove_exn
but with an error monad.
Since 0.8
val remove_noerr : t -> unit
Like remove_exn
but do not raise any exception on failure.
Since 0.8
val read_dir : ?recurse:bool -> t -> t CCIO.gen
read_dir d
returns a sequence of files and directory contained
in the directory d
(or an empty stream if d
is not a directory)
Raises Sys_error
in case of error (e.g. permission denied)
recurse
: if true (default false
), sub-directories are also
explored
val read_exn : t -> string
Read the content of the given file, or raises some exception
Since 0.16
Raises Sys_error
in case of error
val read : t -> string CCIO.or_error
Read the content of the given file
Since 0.16
val append_exn : t -> string -> unit
Append the given string into the given file, possibly raising
Since 0.16
Raises Sys_error
in case of error
val append : t -> string -> unit CCIO.or_error
Append the given string into the given file
Since 0.16
val write_exn : t -> string -> unit
Write the given string into the given file, possibly raising
Since 0.16
Raises Sys_error
in case of error
val write : t -> string -> unit CCIO.or_error
Write the given string into the given file
Since 0.16
type
walk_item = [ `Dir | `File ] * t
val walk : t -> walk_item CCIO.gen
Similar to
CCIO.File.read_dir
(with
recurse=true
), this function walks
a directory recursively and yields either files or directories.
Is a file anything that doesn't satisfy
CCIO.File.is_directory
(including
symlinks, etc.)
Raises Sys_error
in case of error (e.g. permission denied) during iteration
val walk_l : t -> walk_item list
Same as
CCIO.File.walk
but returns a list (therefore it's eager and might
take some time on large directories)
Since 1.1
val show_walk_item : walk_item -> string
val with_temp : ?temp_dir:string -> prefix:string -> suffix:string -> (string -> 'a) -> 'a
with_temp ~prefix ~suffix f
will call
f
with the name of a new
temporary file (located in
temp_dir
).
After
f
returns, the file is deleted. Best to be used in
combination with
CCIO.with_out
.
See
Filename.temp_file
Since 0.17