package travesty
Monadically traversable containers
Install
Dune Dependency
Authors
Maintainers
Sources
travesty-v0.6.1.tbz
sha256=9c7b3803620c54496a35983285242ec8e06a5efb1baa3523384d7184b7e9fab7
sha512=991646fe5bb899971d3f8c00432d4df6c45dbd81cbff885b28d30d9c228e5df61f1e8d61aadc164ec35c448093abb34fd7a7d571e1cdf4d3af25579bf400f167
doc/travesty.base_exts/Travesty_base_exts/Tuple2/index.html
Module Travesty_base_exts.Tuple2
Bi-traversability for pairs (2-tuples).
Pairs are trivially bi-traversable; for a pair 'l * 'r
, the left type is 'l
, and the right type is 'r
.
For example, we can bi-map as follows:
bi_map ("foo", 27) ~left:String.capitalize ~right:Int.neg
(* returns: ("Foo", -27) *)
include Travesty.Bi_traversable_types.S2 with type ('l, 'r) t := ('l, 'r) t
include Travesty.Bi_traversable_types.Generic
with type ('l, 'r) t := ('l, 'r) t
and type 'l left := 'l
and type 'r right := 'r
include Travesty.Generic_types.Bi_generic
with type ('l, 'r) t := ('l, 'r) t
with type 'l left := 'l
with type 'r right := 'r
We 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 := 'r
include Travesty.Bi_mappable_types.Basic_generic
with type ('l, 'r) t := ('l, 'r) t
with type 'l left := 'l
with type 'r right := 'r
include Travesty.Generic_types.Bi_generic
with type ('l, 'r) t := ('l, 'r) t
with type 'l left := 'l
with type 'r right := 'r
map_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 := M
On_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_error
With_errors
specialises On_monad
to the error_monad.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>