package travesty

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Combines S1_right and Extensions1_right.

include S1_right
include Types_intf.Bi_right
type 'r t

Partially fixed type of containers.

type left

Fixed type of left elements.

include Generic with type ('l, 'r) t := 'r t and type 'l left := left and type 'r right := 'r
include Types_intf.Bi_generic with type ('l, 'r) t := 'r t with type 'l left := left with type 'r right := 'r
val bi_map : 'r1 t -> left:(left -> left) -> right:('r1 -> 'r2) -> 'r2 t

bi_map c ~left ~right maps left over every 'l1 left, and right over every 'r1 right, in c.

include Extensions1_right with type 'r t := 'r t and type left := left
include Types_intf.Bi_right with type 'r t := 'r t with type left := left
include Generic_extensions with type ('l, 'r) t := 'r t and type 'l left := left and type 'r right := 'r
include Types_intf.Bi_generic with type ('l, 'r) t := 'r t with type 'l left := left with type 'r right := 'r
val map_left : 'r t -> f:(left -> left) -> 'r t

map_left c ~f maps f over the left type of c only.

val map_right : 'r1 t -> f:('r1 -> 'r2) -> 'r2 t

map_right c ~f maps f over the right type of c only.

module Fix_right (Right : Base.T) : S0_with_extensions with type t := Right.t t and type right := Right.t

Fixes the right type of this container to Right.t.

Bi-mappable types with a fixed left type are mappable over their right.

include Mappable.S1 with type 'r t := 'r t
include Mappable.Generic with type 'a t := 'a t and type 'a elt := 'a

Generic refers to the container type as 'a t, and the element type as 'a elt; substitute t/elt (arity-0) or 'a t/'a (arity-1) accordingly below.

include Types_intf.Generic with type 'a t := 'a t with type 'a elt := 'a
val map : 'a t -> f:('a -> 'b) -> 'b t

map c ~f maps f over every t in c.

OCaml

Innovation. Community. Security.