package lwt-watcher

  1. Overview
  2. Docs
One-to-many broadcast in Lwt

Install

Dune Dependency

Authors

Maintainers

Sources

lwt-watcher-v0.1.tar.gz
md5=85fa938c25895aad8f47872ed5225a4e
sha512=7a93368ab6133e17fdf8512c28380fdba5bd0eb397deac9c7018278138b4fa4e4d65b5f32af624a0c725087640ae105be890d93d9019ca90352c36fb43183b14

doc/lwt-watcher/Lwt_watcher/index.html

Module Lwt_watcherSource

This module implements a one-to-many publish/suscribe pattern.

Clients can register/unregister to an input. Events notified to the input (through notify) are dispatched asynchronously to all registered clients through an Lwt_stream. A client receives only events sent after registration and before unregistration.

Sourcetype 'a input
Sourceval create_input : unit -> 'a input
Sourceval notify : 'a input -> 'a -> unit

notify t v publishes value v to the input t

Sourcetype stopper
Sourceval create_stream : 'a input -> 'a Lwt_stream.t * stopper

create_stream t registers a new client which can read published values via a stream. A stopper is used to shutdown the client.

Sourceval create_fake_stream : unit -> 'a Lwt_stream.t * stopper

A fake stream never receives any value.

Sourceval shutdown : stopper -> unit

shutdown s unregisters the client associated to s. None is pushed to the stream.

Sourceval shutdown_input : 'a input -> unit

Shutdowns all the clients of this input

OCaml

Innovation. Community. Security.