Module Preface_qcheck

This library provides test suite generators to automate, by means of property-driven testing (via QCheck), the verification of laws attached to abstractions.

Monoid hierarchy

module Semigroup : sig ... end

Functor that generate a suite for a Semigroup.

module Monoid : sig ... end

Functor that generate a suite for a Monoid.

Lattice hierarchy

module Meet_semilattice : sig ... end

Functor that generate a suite for a Meet_semilattice.

module Join_semilattice : sig ... end

Functor that generate a suite for a Join_semilattice.

module Bounded_meet_semilattice : sig ... end

Functor that generate a suite for a Bounded_meet_semilattice.

module Bounded_join_semilattice : sig ... end

Functor that generate a suite for a Bounded_join_semilattice.

module Bounded_lattice : sig ... end

Functor that generate a suite for a Bounded_lattice.

module Lattice : sig ... end

Functor that generate a suite for a Lattice.

Indexed Functor hierarchy

module Indexed_functor : sig ... end

Functor that generate a suite for an Indexed Functor.

module Indexed_alt : sig ... end

Functor that generate a suite for an Indexed Alt.

module Indexed_apply : sig ... end

Functor that generate a suite for an Indexed Apply.

module Indexed_applicative : sig ... end

Functor that generate a suite for an Indexed Applicative.

module Indexed_alternative : sig ... end
module Indexed_selective : sig ... end
module Indexed_bind : sig ... end

Functor that generate a suite for an Indexed_bind.

module Indexed_monad : sig ... end

Functor that generate a suite for an Indexed Monad.

module Indexed_monad_plus : sig ... end

Functors that generate a suite for an Indexed_monad_plus.

module Indexed_comonad : sig ... end

Functor that generate a suite for an Indexed Comonad.

module Indexed_foldable : sig ... end

Functor that generate a suite for an Indexed Foldable.

Functor hierarchy

module Invariant : sig ... end

Functors that generate a suite for an Invariant.

module Functor : sig ... end

Functor that generate a suite for a Functor.

module Alt : sig ... end

Functor that generate a suite for an Alt.

module Apply : sig ... end

Functor that generate a suite for an Apply.

module Applicative : sig ... end

Functor that generate a suite for an Applicative.

module Alternative : sig ... end

Functors that generate a suite for an Alternative.

module Selective : sig ... end

Functors that generate a suite for a Selective.

module Bind : sig ... end

Functor that generate a suite for a Bind.

module Monad : sig ... end

Functor that generate a suite for a Monad.

module Monad_plus : sig ... end

Functors that generate a suite for a Monad_plus.

module Comonad : sig ... end

Functor that generate a suite for a Comonad.

module Foldable : sig ... end

Functor that generate a suite for a Foldable.

module Traversable : sig ... end

Functors that generate a suite for a Traversable.

Contravariant hierarchy

module Contravariant : sig ... end

Functor that generate a suite for a Contravariant Functor.

module Divisible : sig ... end

Functor that generate a suite for a Divisible.

module Decidable : sig ... end

Functor that generate a suite for a Decidable.

Bifunctor hierarchy

module Bifunctor : sig ... end

Functors that generate a suite for a Bifunctor.

Profunctor hierarchy

module Profunctor : sig ... end

Functor that generate a suite for a Profunctor.

module Strong : sig ... end

Functor that generate a suite for a Strong Profunctor.

module Choice : sig ... end

Functor that generate a suite for a Choice Profunctor.

module Closed : sig ... end

Functor that generate a suite for a Closed Profunctor.

Arrow hierarchy

module Semigroupoid : sig ... end

Functor that generate a suite for a Semigroupoid.

module Category : sig ... end

Functor that generate a suite for a Category.

module Arrow : sig ... end

Functor that generate a suite for an Arrow.

module Arrow_zero : sig ... end

Functor that generate a suite for an Arrow Zero.

module Arrow_alt : sig ... end

Functor that generate a suite for an Arrow Alt.

module Arrow_plus : sig ... end

Functor that generate a suite for an Arrow Plus.

module Arrow_choice : sig ... end

Functor that generate a suite for an Arrow Choice.

module Arrow_apply : sig ... end

Functor that generate a suite for an Arrow Apply.

Transformers

Monad Transformers

module Writer : sig ... end

Functors that generate a suite for a Writer.

Model and utils

module Model : sig ... end

Describes all the elements required to build a test suite.

module Util : sig ... end

Some utilities to deal with QCheck.