package plebeia

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Fs.OpSource

Sourcetype 'a t = Fs.cursor -> (Fs.cursor * 'a, Error.t) result

Monad for synchronous file system operations

include Monad.S1 with type 'a t := 'a t
Sourceval return : 'a -> 'a t
Sourceval bind : 'a t -> ('a -> 'b t) -> 'b t
Sourceval map : ('a -> 'b) -> 'a t -> 'b t
Sourceval mapM : ('a -> 'b t) -> 'a list -> 'b list t
Sourceval mapM_ : ('a -> unit t) -> 'a list -> unit t
Sourceval iterM : ('a -> unit t) -> 'a list -> unit t

alias of mapM_

Sourceval fold_leftM : ('a -> 'b -> 'a t) -> 'a -> 'b list -> 'a t
Sourceval parseM : ('a -> 'b list -> ('a * 'b list) t) -> 'a -> 'b list -> 'a t
Sourcemodule Infix : sig ... end
Sourcemodule Syntax : sig ... end
Sourceval lift_result : ('a, Error.t) Result.t -> 'a t
Sourceval fail : Fs.error -> 'a t

Fail with the given error

Sourceval raw_cursor : Fs.raw_cursor t

Get the current underlying cursor

Sourceval chdir_parent : unit t

Moves the cursor up 1 directory level. If the cursor is already at the root, it does nothing.

Sourceval chdir_root : unit t

Moves the cursor up to the root directory. If the cursor is already at the root, it does nothing.

Sourceval chdir : ?dig:bool -> Fs_types.Path.t -> unit t

Moves the cursor to a sub-directory specified by the path. If dig=true, subdirectories are created if necessary.

Get the current path of the cursor

File and directory access. It returns the current cursor and its view.

Sourceval set : Fs_types.Path.t -> Fs.cursor -> unit t

set path cursor sets the tree pointed by the cursor at the specified path.

The path must not be empty.

copy src dst sets the tree at src to dst. dst must not be empty.

Regular file read access.

Sourceval write : Fs_types.Path.t -> Value.t -> unit t

Create or update a regular file. Directories are created if necessary. The path must not be empty.

Sourceval rm : ?recursive:bool -> ?ignore_error:bool -> Fs_types.Path.t -> bool t

Remove a regular file or a directory, then returns Ok true. The path must not be empty.

recursive=false : fails when the target is a directory recursive=true : removes the target recursively if it is a directory ignore_error=false : fails when the target does not exist ignore_error=true : does not fail even if the target does not exist

Returns true if the target is really removed. Returns false if the target does not exist.

Sourceval rmdir : ?ignore_error:bool -> Fs_types.Path.t -> bool t

Recursive removal of a directory The path must not be empty.

ignore_error=false : fails when the target does not exist ignore_error=true : does not fail even if the target does not exist

Returns true if the target is really removed. Returns false if the target does not exist.

Sourceval compute_hash : Fs.hash t

Compute the Merkle hash of the cursor

Sourceval may_forget : unit t

Clear the memory cache of the tree under the current cursor, if it is already persisted on the disk.

Sourceval run : Fs.cursor -> 'a t -> (Fs.cursor * 'a, Error.t) result

Monad runner

Sourceval do_then : (Fs.cursor -> unit) -> 'a t -> 'a t

For debugging. do_then f op executes f against the current cursor, then performs op.

OCaml

Innovation. Community. Security.