3 type 'a node = Nil | Cons of elt * 'a
7 val equal : t -> t -> bool
10 val cons : elt -> t -> t
13 val fold : (elt -> 'a -> 'a) -> t -> 'a -> 'a
14 val map : (elt -> elt) -> t -> t
15 val iter : (elt -> 'a) -> t -> unit
17 val rev_map : (elt -> elt) -> t -> t
21 module Make (H : Hcons.S) : S with type elt = H.t