# Module BatResult.Monad

    module Monad: sig .. end

    val bind : ('a, 'b) BatResult.t -> ('a -> ('c, 'b) BatResult.t) -> ('c, 'b) BatResult.t

Monadic composition.

`bind r f` proceeds as `f x` if `r` is `Ok x`, or returns `r` if `r` is an error.
Since 2.0

    val (>>=) : ('a, 'b) BatResult.t -> ('a -> ('c, 'b) BatResult.t) -> ('c, 'b) BatResult.t

as `bind`

    val return : 'a -> ('a, 'b) BatResult.t

Monadic return, just encapsulates the given value with Ok