sig   type ('a, 'b) t = ('a, 'b) BatPervasives.result = Ok of '| Bad of 'b   val catch : ('-> 'b) -> '-> ('b, exn) BatResult.t   val catch2 : ('-> '-> 'c) -> '-> '-> ('c, exn) BatResult.t   val catch3 :     ('-> '-> '-> 'd) -> '-> '-> '-> ('d, exn) BatResult.t   val get : ('a, exn) BatResult.t -> 'a   val default : '-> ('a, 'b) BatResult.t -> 'a   val map_default : '-> ('-> 'b) -> ('a, 'c) BatResult.t -> 'b   val is_ok : ('a, 'b) BatResult.t -> bool   val is_bad : ('a, 'b) BatResult.t -> bool   val is_exn : exn -> ('a, exn) BatResult.t -> bool   val of_option : 'a option -> ('a, unit) BatResult.t   val to_option : ('a, 'b) BatResult.t -> 'a option   module Monad :     sig       val bind :         ('a, 'b) BatResult.t ->         ('-> ('c, 'b) BatResult.t) -> ('c, 'b) BatResult.t       val ( >>= ) :         ('a, 'b) BatResult.t ->         ('-> ('c, 'b) BatResult.t) -> ('c, 'b) BatResult.t       val return : '-> ('a, 'b) BatResult.t     end   module Infix :     sig       val ( >>= ) :         ('a, 'b) BatResult.t ->         ('-> ('c, 'b) BatResult.t) -> ('c, 'b) BatResult.t     end   val print :     ('BatInnerIO.output -> '-> unit) ->     'BatInnerIO.output -> ('a, exn) BatResult.t -> unit end