Module Monad.Notation

Parameters

module M : S

Signature

type 'a m = 'a M.m
val let* : 'a m -> ('a -> 'b m) -> 'b m
val and* : 'a m -> 'b m -> ('a * 'b) m
val let+ : 'a m -> ('a -> 'b) -> 'b m
val and+ : 'a m -> 'b m -> ('a * 'b) m
val (<@>) : ('a -> 'b) -> 'a m -> 'b m
val (|>>) : 'a m -> ('a -> 'b m) -> 'b m
val (@<<) : ('a -> 'b m) -> 'a m -> 'b m
val (<&>) : 'a m -> 'b m -> ('a * 'b) m