Module type Contravariant.API

The complete interface of a Contravariant Functor.

type 'a t

Type

The type held by the Contravariant Functor.

Functions

val contramap : ('a -> 'b) -> 'b t -> 'a t

Mapping over from 'a to 'b over 'b t to 'a t.

val replace : 'b -> 'b t -> 'a t

Replace all locations in the output with the same value.

Infix operators

module Infix : INFIX with type 'a t := 'a t
val (>$) : 'b -> 'b t -> 'a t

Infix version of OPERATION.replace.

val (^$) : 'b -> 'b t -> 'a t

Right-associative version of >$.

val ($<) : 'b t -> 'b -> 'a t

Infix flipped version of OPERATION.replace.

val (&$) : 'b t -> 'b -> 'a t

Right-associative version of $<.

val (>$<) : ('a -> 'b) -> 'b t -> 'a t

Infix version of CORE.map.

val (^$^) : ('a -> 'b) -> 'b t -> 'a t

Right-associative version of >$<.

val (>&<) : 'b t -> ('a -> 'b) -> 'a t

Infix flipped version of CORE.map.

val (^&^) : 'b t -> ('a -> 'b) -> 'a t

Right-associative version of >&<.