package preface

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

The Free selective API without the Preface_specs.Selective API.

type 'a f

The type held by the Preface_specs.Functor.

The type held by the Free selective.

type _ t =
  1. | Pure : 'a -> 'a t
  2. | Select : ('a, 'b) Either.t t * ('a -> 'b) f -> 'b t
val promote : 'a f -> 'a t

Promote a value from the Preface_specs.Functor into the Free selective.

module To_selective (Selective : Selective.CORE) : TO_SELECTIVE with type 'a t := 'a t and type 'a f := 'a f and type 'a selective := 'a Selective.t

The natural transformation from a Free selective to an other Preface_specs.Selective.

module To_monoid (Monoid : Monoid.CORE) : TO_MONOID with type 'a t := 'a t and type 'a f := 'a f and type monoid := Monoid.t

The natural transformation from a Free selective to a Preface_specs.Monoid.