package jenga

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

Module supporting interface to file-system -- stat, digest, glob. Services: Digest caching & inotify wrapping (as hearts).

module Ocaml_digest : sig ... end
module Digest = Db.Digest
module Kind = Db.Kind
module Glob : sig ... end
module Listing = Db.Listing
type t
module Contents_result : sig ... end
module Digest_result : sig ... end
module Listing_result : sig ... end
val contents_file : t -> file:Path.t -> Contents_result.t Tenacious.t
val digest_file : t -> file:Path.t -> Digest_result.t Tenacious.t
val ensure_directory : t -> mkdir_root:Path.Rel.t option -> dir:Path.Rel.t -> unit Core.Or_error.t Tenacious.t

This function either checks the directory exists if mkdir_root is None, or creates all the directories between mkdir_root and dir (mkdir_root must be a non-strict ancestor of dir).

val lock_targets_and_mask_updates : t -> targets:Path.Rel.t list -> (unit -> 'a Async.Deferred.t) -> 'a Async.Deferred.t

Locks targets for writing and masks the corresponding 'file changed' messages

val clear_watcher_cache : t -> Path.t -> needed_for_correctness:bool -> unit
module Mtime : sig ... end
val mtime_file : t -> file:Path.t -> Mtime.t option Tenacious.t
val mtime_files_right_now : Path.t list -> ((Path.t * Mtime.t) list, string) Core.Result.t Async.Deferred.t