Module Luv.FS_event

Filesystem events.

See File change events in the user guide and uv_fs_event_t — FS Event handle in libuv.

type t = [ `FS_event ] Handle.t

Binds uv_fs_event_t.

Note that values of this type can be passed to functions in Luv.Handle, in addition to the functions in this module. In particular, see Luv.Handle.close.

module Event : sig ... end

Binds uv_fs_event.

val init : ?⁠loop:Loop.t -> unit -> (tError.t) Result.result

Allocates and initializes an FS event handle.

Binds uv_fs_event_init.

The handle should be cleaned up with Luv.Handle.close when no longer needed.

val start : ?⁠watch_entry:bool -> ?⁠stat:bool -> ?⁠recursive:bool -> t -> string -> ((string * Event.t listError.t) Result.result -> unit) -> unit

Starts the handle and watches the given path for changes.

Binds uv_fs_event_start.

uv_fs_event_start takes a flags argument of type uv_fs_event_flags. Luv.FS_event.start instead takes several optional arguments, each named after one of the flags.

See uv_fs_event_cb for a description of the values passed to the callback.

val stop : t -> (unit, Error.t) Result.result

Stops the handle.

Binds uv_fs_event_stop.