Travesty_base_exts.ResultSourceResult monad extensions.
This module contains bi-traversability for Base's Result monad.
Defined to let this module be used directly in chaining operations etc.
Result is a bi-traversable type, with the left type being the result type, and the right type the error type. This is backwards from Haskell conventions, but matches the positions of the type parameters.
include Travesty.Bi_traversable_types.S2
with type ('ok, 'err) t := ('ok, 'err) tinclude Travesty.Bi_traversable_types.Generic
with type ('l, 'r) t := ('l, 'r) t
and type 'l left := 'l
and type 'r right := 'rinclude Travesty.Generic_types.Bi_generic
with type ('l, 'r) t := ('l, 'r) t
with type 'l left := 'l
with type 'r right := 'rWe can do non-monadic bi-mapping operations.
include Travesty.Bi_mappable_types.Generic
with type ('l, 'r) t := ('l, 'r) t
and type 'l left := 'l
and type 'r right := 'rinclude Travesty.Bi_mappable_types.Basic_generic
with type ('l, 'r) t := ('l, 'r) t
with type 'l left := 'l
with type 'r right := 'rinclude Travesty.Generic_types.Bi_generic
with type ('l, 'r) t := ('l, 'r) t
with type 'l left := 'l
with type 'r right := 'rmap_left c ~f maps f over the left type of c only.
module On_monad
(M : Base.Monad.S) :
Travesty.Bi_traversable_types.Generic_on_monad
with type ('l, 'r) t := ('l, 'r) t
and type 'l left := 'l
and type 'r right := 'r
and module M := MOn_monad implements monadic bi-traversal operators for a given monad M.
module With_errors :
Travesty.Bi_traversable_types.Generic_on_monad
with type ('l, 'r) t := ('l, 'r) t
and type 'l left := 'l
and type 'r right := 'r
and module M := Base.Or_errorWith_errors specialises On_monad to the error_monad.