sig
type 'a t
type 'a elt
type 'a cursor
type 'a collection
type direction
type 'a traversal =
Traverse_All
| Traverse_If of ('a -> bool)
| Traverse_While of ('a -> bool)
val create :
Reins.Iterator.S.direction ->
'a Reins.Iterator.S.elt Reins.Iterator.S.traversal ->
'a Reins.Iterator.S.collection -> 'a Reins.Iterator.S.t
val from_cursor :
Reins.Iterator.S.direction ->
'a Reins.Iterator.S.elt Reins.Iterator.S.traversal ->
'a Reins.Iterator.S.cursor -> 'a Reins.Iterator.S.t
val value : 'a Reins.Iterator.S.t -> 'a Reins.Iterator.S.elt option
val get_value : 'a Reins.Iterator.S.t -> 'a Reins.Iterator.S.elt
val at_end : 'a Reins.Iterator.S.t -> bool
val at_beg : 'a Reins.Iterator.S.t -> bool
val has_next : 'a Reins.Iterator.S.t -> bool
val next : 'a Reins.Iterator.S.t -> 'a Reins.Iterator.S.t
val has_prev : 'a Reins.Iterator.S.t -> bool
val prev : 'a Reins.Iterator.S.t -> 'a Reins.Iterator.S.t
val goto_beg : 'a Reins.Iterator.S.t -> 'a Reins.Iterator.S.t
val goto_end : 'a Reins.Iterator.S.t -> 'a Reins.Iterator.S.t
val flip : 'a Reins.Iterator.S.t -> 'a Reins.Iterator.S.t
val iter :
('a Reins.Iterator.S.elt -> unit) -> 'a Reins.Iterator.S.t -> unit
val fold :
('a -> 'b Reins.Iterator.S.elt -> 'a) ->
'a -> 'b Reins.Iterator.S.t -> 'a
end