(***********************************************************************) (* *) (* TAToo *) (* *) (* Kim Nguyen, LRI UMR8623 *) (* Université Paris-Sud & CNRS *) (* *) (* Copyright 2010-2013 Université Paris-Sud and Centre National de la *) (* Recherche Scientifique. All rights reserved. This file is *) (* distributed under the terms of the GNU Lesser General Public *) (* License, with the special exception on linking described in file *) (* ../LICENSE. *) (* *) (***********************************************************************) module type S = sig type node type t type iterator val create : unit -> t val add : node -> t -> unit val push_front : node -> t -> unit val push_back : node -> t -> unit val iter : (node -> unit) -> t -> unit val length : t -> int val is_empty : t -> bool val head : t -> iterator val last : t -> iterator val next : iterator -> iterator val value : iterator -> node val finished : iterator -> bool val copy : t -> t end