sig
type 'a t
val empty : 'a Reins.CatenableList.t
val is_empty : 'a Reins.CatenableList.t -> bool
val length : 'a Reins.CatenableList.t -> int
val rev : 'a Reins.CatenableList.t -> 'a Reins.CatenableList.t
val hd : 'a Reins.CatenableList.t -> 'a
val tl : 'a Reins.CatenableList.t -> 'a Reins.CatenableList.t
val pop : 'a Reins.CatenableList.t -> 'a * 'a Reins.CatenableList.t
val cons : 'a -> 'a Reins.CatenableList.t -> 'a Reins.CatenableList.t
val snoc : 'a -> 'a Reins.CatenableList.t -> 'a Reins.CatenableList.t
val last : 'a Reins.CatenableList.t -> 'a
val append :
'a Reins.CatenableList.t ->
'a Reins.CatenableList.t -> 'a Reins.CatenableList.t
val flatten :
'a Reins.CatenableList.t Reins.CatenableList.t ->
'a Reins.CatenableList.t
val from_list : 'a list -> 'a Reins.CatenableList.t
val to_list : 'a Reins.CatenableList.t -> 'a list
val iter : ('a -> unit) -> 'a Reins.CatenableList.t -> unit
val fold : ('a -> 'b -> 'a) -> 'a -> 'b Reins.CatenableList.t -> 'a
val rev_map :
('a -> 'b) -> 'a Reins.CatenableList.t -> 'b Reins.CatenableList.t
val map :
('a -> 'b) -> 'a Reins.CatenableList.t -> 'b Reins.CatenableList.t
val to_string : ('a -> string) -> 'a Reins.CatenableList.t -> string
val compare :
('a -> 'a -> int) ->
'a Reins.CatenableList.t -> 'a Reins.CatenableList.t -> int
val gen :
(?size:int -> Random.State.t -> 'a) ->
?size:int -> Random.State.t -> 'a Reins.CatenableList.t
end