summaryrefslogtreecommitdiff
path: root/src/priority_queue.erl
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@lshift.net>2009-03-31 14:40:53 +0100
committerMatthias Radestock <matthias@lshift.net>2009-03-31 14:40:53 +0100
commit2444efd7f19c80066c2197edf76d4ce7b7ac298e (patch)
tree5243d74984facdf9fd2a84f8a8b35c11a4d8ba8c /src/priority_queue.erl
parent88d1946897efa813a92d20002846c1f5d58352ff (diff)
downloadrabbitmq-server-2444efd7f19c80066c2197edf76d4ce7b7ac298e.tar.gz
add some signatures
Diffstat (limited to 'src/priority_queue.erl')
-rw-r--r--src/priority_queue.erl21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/priority_queue.erl b/src/priority_queue.erl
index 226c6bd8..b872c8d5 100644
--- a/src/priority_queue.erl
+++ b/src/priority_queue.erl
@@ -57,6 +57,27 @@
-export([new/0, is_queue/1, is_empty/1, len/1, to_list/1, in/2, in/3, out/1]).
+%%----------------------------------------------------------------------------
+
+-ifdef(use_specs).
+
+-type(priority() :: integer()).
+-type(squeue() :: {queue, [any()], [any()]}).
+-type(pqueue() :: squeue() | {pqueue, [{priority(), squeue()}]}).
+
+-spec(new/0 :: () -> pqueue()).
+-spec(is_queue/1 :: (any()) -> bool()).
+-spec(is_empty/1 :: (pqueue()) -> bool()).
+-spec(len/1 :: (pqueue()) -> non_neg_integer()).
+-spec(to_list/1 :: (pqueue()) -> [{priority(), any()}]).
+-spec(in/2 :: (any(), pqueue()) -> pqueue()).
+-spec(in/3 :: (any(), priority(), pqueue()) -> pqueue()).
+-spec(out/1 :: (pqueue()) -> {empty | {value, any()}, pqueue()}).
+
+-endif.
+
+%%----------------------------------------------------------------------------
+
new() ->
{queue, [], []}.