Module Reducer

module Reducer: sig .. end
This module provides functions reducing values, in order to produce smaller counterexamples.


Reducer definition

type 'a t = 'a -> 'a list 
The type of reducer, a function returning a list of some smaller elements.

Predefined reducers

val unit : unit t
Reducer for unit values.
val bool : bool t
Reducer for bool values.
val int : int t
Reducer for int values.
val int32 : int32 t
Reducer for int32 values.
val int64 : int64 t
Reducer for int64 values.
val nativeint : nativeint t
Reducer for nativeint values.
val char : char t
Reducer for char values.
val string : string t
Reducer for string values.
val float : float t
Reducer for float values.
val complex : Complex.t t
Reducer for Complex.t values.

Reducers for containers

val array : 'a array t
Reducer for array values.
val list : 'a list t
Reducer for list values.
val option : 'a option t
Reducer for option values.
module Map: 
functor (M : Map.S) -> sig .. end
Functor used to build reducers for Map.S.t values.
module Set: 
functor (S : Set.S) -> sig .. end
Functor used to build reducers for Set.S.t values.
val hashtbl : ('a, 'b) Hashtbl.t t
Reducer for Hashtbl.t values.
val queue : 'a Queue.t t
Reducer for Queue.t values.
val stack : 'a Stack.t t
Reducer for Stack.t values.
val weak : 'a Weak.t t
Reducer for Weak.t values.