package sel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Events one can wait for (read data, pull from queues, ...)

  • name for debug printing
  • priority lower integers correspond to high priorities (as in Unix nice), default is 0
type 'a res = ('a, exn) Stdlib.result
val line : ?priority:int -> ?name:string -> Unix.file_descr -> (string res -> 'a) -> 'a Event.t

a line, terminated by '\n'

val bytes : ?priority:int -> ?name:string -> Unix.file_descr -> int -> (Stdlib.Bytes.t res -> 'a) -> 'a Event.t

bytes

val death_of : ?priority:int -> ?name:string -> pid:int -> (Unix.process_status -> 'a) -> 'a Event.t

termination of a process

val ocaml_value : ?priority:int -> ?name:string -> Unix.file_descr -> ('b res -> 'a) -> 'a Event.t

any value (not type safe, uses Marshall)

val httpcle : ?priority:int -> ?name:string -> Unix.file_descr -> (Stdlib.Bytes.t res -> 'a) -> 'a Event.t

HTTP Content Length encoded data

val queues : ?priority:int -> ?name:string -> 'b Stdlib.Queue.t -> 'c Stdlib.Queue.t -> ('b -> 'c -> 'a) -> 'a Event.t

Synchronization events between two components (e.g. a worker pool and a task queue) and an event (e.g. starting a worker)

val queue : ?priority:int -> ?name:string -> 'b Stdlib.Queue.t -> ('b -> 'a) -> 'a Event.t

Synchronization events between a component and an event