Irmin, a distributed database that follows the same design principles as Git
Module Irmin . Backend . Watch
module type S = sig ... end

The signature for watch helpers.

val workers : unit -> int

workers () is the number of background worker threads managing event notification currently active.

type hook = int -> string -> ( string -> unit Lwt.t ) -> ( unit -> unit Lwt.t ) Lwt.t

The type for watch hooks.

val none : hook

none is the hooks which asserts false.

val set_listen_dir_hook : hook -> unit

Register a function which looks for file changes in a directory and return a function to stop watching. It is probably best to use Irmin_watcher.hook there. By default, it uses none.

module Make (K : Type.S) (V : Type.S) : S with type key = K.t and type value = V.t

Make builds an implementation of watch helpers.