package profunctor

  1. Overview
  2. Docs

Embed a Conv_based profunctor-ish into a full profunctor, allowing the use of Record_builder directly.

type 'a conv_based
type ('b, 'a) t
include S with type ('b, 'a) t := ('b, 'a) t
val map : ('a, 'u) t -> f:('a -> 'b) -> ('b, 'u) t
val contra_map : ('u, 'b) t -> f:('a -> 'b) -> ('u, 'a) t
val both : ('a, 'i) t -> ('b, 'i) t -> ('a * 'b, 'i) t
val inj : 'a conv_based -> ('a, 'a) t
val prj : ('a, 'a) t -> 'a conv_based
module Of_record : Record_builder with type 'a profunctor_term = 'a conv_based and type ('b, 'a) profunctor = ('b, 'a) t