Ordered_hash_map_genHash based datastrucure which does not support remove, so that the adding order is strict and continous
module type S = sig ... endval create : int -> ('a, 'b) tval clear : ('a, 'b) t -> unitval reset : ('a, 'b) t -> unitval length : ('a, 'b) t -> intval iter : ('a, 'b) t -> ('c -> 'd -> int -> 'e) -> unitval choose : ('a, 'b) t -> 'cval to_sorted_array : ('a, 'b) t -> 'c arrayval fold : ('a, 'b) t -> 'c -> ('d -> 'e -> int -> 'f -> 'g) -> 'hval elements : ('a, 'b) t -> 'c listval bucket_length : int -> ('a, 'b) bucket -> int