Module Hashcons.Make

Create a new hashconsing, given canonicalization functions.

Parameters

Signature

type t = X.t

Type of objects to hashcons.

type u = X.u

Type of hashcons functions for the sub-structures contained in t.

type table

Type of hashconsing tables

val generate : u -> table

This create a hashtable of the hashconsed objects.

val hcons : table -> t -> t

Perform the hashconsing of the given object within the table.

val stats : table -> Hashset.statistics

Recover statistics of the hashconsing table.