package lwt-watcher

All checked builds pass
  1. Overview
  2. Docs
One-to-many broadcast in Lwt

Install

dune-project
 Dependency

Authors

Maintainers

Sources

lwt-watcher-v0.2.tar.gz
md5=2922ce8459eeacbd3d8819b2915d7128
sha512=11b16761ff025c39adbd177de511b1a4c8cc3e307d96111e04ed3058ae5d7577f940e2fe7fc9cbdc54ef0923aab62820f87f457c95ba18ebd2050ff7b9f075f9

Description

Added to opam-repository:

README

Lwt-watcher

Lwt-watcher implements a one-to-many publish/subscribe pattern.

Use

Lwt-watcher revolves around the notion of an 'a input: a publishing/subscription point that carries values of type 'a: create_input: unit -> 'a input.

Any number of readers can subscribe to the input, each receiving its own 'a Lwt_stream.t: create_stream: 'a input -> 'a Lwt_stream.t * stopper. The second returned component is used to unsubscribed from the input: shutdown: stopper -> unit.

Any number of writers can publish a value on the input: notify: 'a input -> 'a -> unit. However, note that if multiple writers publish values on an input, the library user has to handle any required synchronization. An input can be closed: shutdown_input: 'a input -> unit which in turns closes all associated streams.

Installation

opam install lwt-watcher

Dependencies (3)

  1. lwt
  2. dune >= "1.11"
  3. ocaml

Dev Dependencies

None

Optional Dependencies

None

Used by

None

Conflicts

None

Build status

Results of building lwt-watcher with each compiler on check.ci.ocaml.org, run of against opam-repository 8a77e58. All results for this package.

Each result links to its build log. To keep crawlers from overloading the site, build logs require a GitHub sign-in (see ocurrent/opam-health-check). On your first log, GitHub asks you to “Authorize opam-health-check”, the OCurrent app that runs these checks; it sees only your public profile, not your repositories. The sign-in lasts 30 days.

Version OCaml 4.11 OCaml 4.14 OCaml 5.2 OCaml 5.4 OCaml 5.5
0.2 (this version) good good good good good
  • good Package successfully built
  • partial One of the dependencies failed to build
  • bad Package failed to build
  • n/a Package is not available in this environment
  • internal Internal failure