Module type Closed.WITH_CONTRAMAP_FST_AND_MAP_SND_AND_CLOSED

Minimum interface using contramap_fst and map_snd and closed.

type ('a, 'b) t

The type held by the Closed Profunctor.

val contramap_fst : ('a -> 'b) -> ('b, 'c) t -> ('a, 'c) t

Contramapping over the first argument.

val map_snd : ('b -> 'c) -> ('a, 'b) t -> ('a, 'c) t

Mapping over the second argument.

val closed : ('a, 'b) t -> ('c -> 'a, 'c -> 'b) t

Act on the input type of a function.