package colombe

  1. Overview
  2. Docs

Parameters

module Context : C
module Value : S with type encoder = Context.encoder and type decoder = Context.decoder

Signature

type error = Value.error
val bind : ('a, 'err) t -> f:('a -> ('b, 'err) t) -> ('b, 'err) t
val let* : ('a, 'err) t -> ('a -> ('b, 'err) t) -> ('b, 'err) t
val let+ : ('a, 'err) t -> (('a, 'err) Stdlib.result -> ('b, 'err) t) -> ('b, 'err) t
val (>>=) : ('a, 'err) t -> ('a -> ('b, 'err) t) -> ('b, 'err) t
val encode : Context.t -> 'a Value.send -> 'a -> (Context.t -> ('b, [> `Protocol of error ] as 'err) t) -> ('b, 'err) t
val decode : Context.t -> 'a Value.recv -> (Context.t -> 'a -> ('b, [> `Protocol of error ] as 'err) t) -> ('b, 'err) t
val send : Context.t -> 'a Value.send -> 'a -> (unit, [> `Protocol of error ]) t
val recv : Context.t -> 'a Value.recv -> ('a, [> `Protocol of error ]) t
val return : 'v -> ('v, 'err) t
val fail : 'err -> ('v, 'err) t
val reword_error : ('err0 -> 'err1) -> ('v, 'err0) t -> ('v, 'err1) t
val error_msgf : ('a, Stdlib.Format.formatter, unit, ('b, [> `Msg of string ]) t) Stdlib.format4 -> 'a