Lwt - API Reference

Core library

The core library (lwt package) contains the Lwt module, which defines cooperative threads with all the primitives to manipulate them. It also provides several general purpose modules, which do not depend on any external package.


Lwt
Module Lwt: cooperative light-weight threads.
Lwt_condition
Conditions
Lwt_list
List helpers
Lwt_mutex
Cooperative locks for mutual exclusion
Lwt_mvar
Mailbox variables
Lwt_pool
Creating pools (for example pools of connections to a database).
Lwt_sequence
Mutable sequence of elements
Lwt_pqueue
Lwt_stream
Data streams
Lwt_switch
Lwt switches

Logger

The lwt.log package provides a logger engine.


Lwt_log_core
Logging facility

This package depends on the core library

Unix bindings

The lwt.unix package provides:


Lwt_daemon
Daemon helpers
Lwt_gc
Interaction with the garbage collector
Lwt_io
Buffered byte channels
Lwt_log
Logging facility
Lwt_main
Main loop and event queue
Lwt_engine
Lwt unix main loop engine
Lwt_process
Process management
Lwt_throttle
Rate limiters
Lwt_timeout
Timeouts
Lwt_unix
Cooperative system calls
Lwt_bytes
Byte arrays
Lwt_sys
System informations.

This package depends on the core library, the unix package and the lwt.log package.

Reactive programming helpers

The lwt.react package provides helpers for functionnal reactive programming with Lwt. It is based on the react package. The Lwt_react module is a replacement for the React module. It contains:


Lwt_react
React utilities

This package depends on the core library and the react package.

caml4 syntax extensions

Lwt is shipped with two syntax extensions. The first one, contained in the lwt.syntax package, aims to make coding with Lwt easier, and to make code more readable. The second, contained in the package lwt.syntax.log, is a camlp4 filter which decreases the performance penalty when using logging by inlining level tests.


Pa_lwt
Syntactic sugars for lwt
Pa_lwt_log
Logging facility

ppx syntax extension

This new ppx extension provided by the package lwt.ppx replaces Pa_lwt and Pa_lwt_log using the new ppx mechanism.


Ppx_lwt
Ppx syntax extension for Lwt

Miscellaneous

The following modules are wrapper for integration of non-Lwt functions/packages into Lwt.


Lwt_glib
Glib integration
Lwt_preemptive
This module allows to mix preemptive threads with Lwt cooperative threads.
Lwt_ssl
OCaml-SSL integration

Index