Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | (* imp-queue.sig |
2 | * 2004 Matthew Fluet (mfluet@acm.org) | |
3 | * Ported to MLton threads. | |
4 | *) | |
5 | ||
6 | signature IMP_QUEUE = | |
7 | sig | |
8 | type 'a t | |
9 | ||
10 | val clean: 'a t * ('a -> bool) -> unit | |
11 | val cleanAndDeque: 'a t * ('a -> bool) -> 'a option | |
12 | val cleanPrefix: 'a t * ('a -> bool) -> unit | |
13 | val deque: 'a t -> 'a option | |
14 | val empty: 'a t -> bool | |
15 | val enque: 'a t * 'a -> unit | |
16 | val enqueAndClean: 'a t * 'a * ('a -> bool) -> unit | |
17 | val new: unit -> 'a t | |
18 | val peek: 'a t -> 'a option | |
19 | val reset: 'a t -> unit | |
20 | end |