BatHashcons.TableHashcons tables
val create : int -> tcreate n creates a table with at least n cells.
val clear : t -> unitclear tab removes all entries from the table tab.
hashcons tab k returns either k, adding it to the table tab as a side effect, or if k is already in the table then it returns the hashed object corresponding to that entry.
iter f tab applies f to every live hashed object in the table tab.
fold f tab x0 folds f across every live hashed object in the table tab, starting with value x0
val count : t -> intcount tab returns a count of how many live objects are in tab. This can decrease whenever the GC runs, even during execution, so consider the returned value as an upper-bound.