type graph = string * (int -> int)
let sorts = 2
-let sort = H.create sorts
-let index = ref 0
+let sort = H.create sorts
(* Internal functions *******************************************************)
(* Interface functions ******************************************************)
-let set_new_sorts f ss =
- let f i = index := i; f i in
- C.list_fold_left f set_sort !index ss
+let set_sorts f ss i =
+ C.list_fold_left f set_sort i ss
let get_sort err f h =
try f (H.find sort h) with Not_found -> err ()