functor (L : Lists.ListSig) ->
sig
type 'a list_ = 'a L.t
type 'a cursor
val to_cursor : 'a list_ -> 'a cursor
val from_cursor : 'a cursor -> 'a list_
val at_front : 'a cursor -> bool
val at_back : 'a cursor -> bool
val move_next : 'a cursor -> 'a cursor
val move_prev : 'a cursor -> 'a cursor
val goto_front : 'a cursor -> 'a cursor
val goto_back : 'a cursor -> 'a cursor
val value : 'a cursor -> 'a option
val list : 'a cursor -> 'a list_
val replace_list : 'a list_ -> 'a cursor -> 'a cursor
end