2
type 'a t = { inlist : 'a list; outlist : 'a list; length : int; }
4
val push : 'a -> 'a t -> 'a t
5
val enq : 'a -> 'a t -> 'a t
7
val pop : 'a t -> 'a * 'a t
8
val discard : 'a t -> 'a t
9
val deq : 'a t -> 'a * 'a t
10
val to_list : 'a t -> 'a list
11
val length : 'a t -> int
12
val is_empty : 'a t -> bool