Module Async_inotify

type t
type file_info = string * Async.Unix.Stats.t
module Event : sig ... end
type modify_event_selector = [
| `Any_change
| `Closed_writable_fd
]
val create : ?⁠modify_event_selector:modify_event_selector ‑> ?⁠recursive:bool ‑> ?⁠watch_new_dirs:bool ‑> string ‑> (t * file_info list) Async.Deferred.t

create path creates an inotify watching path. Returns the inotify type t itself and the list of files currently being watched. By default, recursively watches all subdirectories of the given path.

val create_empty : modify_event_selector:modify_event_selector ‑> t Async.Deferred.t

create_empty modify_event_selector creates an inotify that watches nothing until add or add_all is called.

val stop : t ‑> unit Async.Deferred.t

stop t stop watching t

val add : t ‑> string ‑> unit Async.Deferred.t

add t path add the path to t to be watched

val add_all : ?⁠skip_dir:((string * Async.Unix.Stats.t) ‑> bool Async.Deferred.t) ‑> t ‑> string ‑> file_info list Async.Deferred.t

add_all t path adds the path to t recursively

val remove : t ‑> string ‑> unit Async.Deferred.t

remove t path remove the path from t

val stream : t ‑> Event.t Async.Stream.t

stream t returns a stream of filesystem events

val pipe : t ‑> Event.t Async.Pipe.Reader.t

pipe t returns a pipe of filesystem events