package preface

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

Parameters

Signature

include Preface_specs.Decidable.WITH_LOSE_AND_CHOOSE with type 'a t = 'a Req.t
type 'a t = 'a Req.t

The type held by the Decidable.

val lose : ('a -> Preface_core.Void.t) -> 'a t

Since Void.t is identity for Either.t, lose act as an identity for Decidable.

val choose : ('a -> ('b, 'c) Preface_core.Shims.Either.t) -> 'b t -> 'c t -> 'a t

choose f x y says that if f can handle either x or y it can handle the result of the function.

include Preface_specs.Divisible.WITH_CONTRAMAP_AND_DIVIDE_AND_CONQUER with type 'a t := 'a t
include Preface_specs.Divisible.WITH_DIVIDE_AND_CONQUER with type 'a t := 'a t
val divide : ('a -> 'b * 'c) -> 'b t -> 'c t -> 'a t

The contravariant version of apply from Applicative.

val conquer : 'a t

Provide and empty value.

include Preface_specs.Contravariant.WITH_CONTRAMAP with type 'a t := 'a t
val contramap : ('a -> 'b) -> 'b t -> 'a t

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