summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2010-08-13 04:26:45 +0100
committerMatthias Radestock <matthias@rabbitmq.com>2010-08-13 04:26:45 +0100
commit47f5b3df329ca7b75e0e090e9bd09338fe716b4d (patch)
tree20bd1e0f4f49a4131b1b9c5c3bc453481eeec562
parent1f982ed96126acf6654bd9db7bed34f21556eaf4 (diff)
downloadrabbitmq-server-bug23120.tar.gz
use consistent return types for start/start_link functionsbug23120
-rw-r--r--src/delegate.erl2
-rw-r--r--src/delegate_sup.erl2
-rw-r--r--src/file_handle_cache.erl4
-rw-r--r--src/gatherer.erl2
-rw-r--r--src/pg_local.erl4
-rw-r--r--src/rabbit_channel.erl2
-rw-r--r--src/rabbit_event.erl2
-rw-r--r--src/rabbit_exchange_type_registry.erl3
-rw-r--r--src/rabbit_guid.erl2
-rw-r--r--src/rabbit_limiter.erl3
-rw-r--r--src/rabbit_log.erl2
-rw-r--r--src/rabbit_memory_monitor.erl2
-rw-r--r--src/rabbit_msg_store.erl3
-rw-r--r--src/rabbit_msg_store_gc.erl2
-rw-r--r--src/rabbit_persister.erl5
-rw-r--r--src/rabbit_queue_collector.erl2
-rw-r--r--src/rabbit_types.erl5
-rw-r--r--src/vm_memory_monitor.erl5
-rw-r--r--src/worker_pool.erl2
-rw-r--r--src/worker_pool_sup.erl5
-rw-r--r--src/worker_pool_worker.erl3
21 files changed, 28 insertions, 34 deletions
diff --git a/src/delegate.erl b/src/delegate.erl
index 3f57953b..c8aa3092 100644
--- a/src/delegate.erl
+++ b/src/delegate.erl
@@ -44,7 +44,7 @@
-ifdef(use_specs).
--spec(start_link/1 :: (non_neg_integer()) -> rabbit_types:ok(pid())).
+-spec(start_link/1 :: (non_neg_integer()) -> {'ok', pid()} | {'error', any()}).
-spec(invoke_no_result/2 ::
(pid() | [pid()], fun ((pid()) -> any())) -> 'ok').
-spec(invoke/2 :: (pid() | [pid()], fun ((pid()) -> A)) -> A).
diff --git a/src/delegate_sup.erl b/src/delegate_sup.erl
index 39ef3f85..ff303ee2 100644
--- a/src/delegate_sup.erl
+++ b/src/delegate_sup.erl
@@ -43,7 +43,7 @@
-ifdef(use_specs).
--spec(start_link/0 :: () -> rabbit_types:ok_or_error2(pid(), any()) | 'ignore').
+-spec(start_link/0 :: () -> {'ok', pid()} | {'error', any()}).
-endif.
diff --git a/src/file_handle_cache.erl b/src/file_handle_cache.erl
index e209ee6b..4eaccf49 100644
--- a/src/file_handle_cache.erl
+++ b/src/file_handle_cache.erl
@@ -182,8 +182,8 @@
-ifdef(use_specs).
-type(ref() :: any()).
--type(ok_or_error() :: rabbit_types:ok_or_error(any())).
--type(val_or_error(T) :: rabbit_types:ok_or_error2(T, any())).
+-type(ok_or_error() :: 'ok' | {'error', any()}).
+-type(val_or_error(T) :: {'ok', T} | {'error', any()}).
-type(position() :: ('bof' | 'eof' | non_neg_integer() |
{('bof' |'eof'), non_neg_integer()} |
{'cur', integer()})).
diff --git a/src/gatherer.erl b/src/gatherer.erl
index 31dda16e..1e03d6c4 100644
--- a/src/gatherer.erl
+++ b/src/gatherer.erl
@@ -42,7 +42,7 @@
-ifdef(use_specs).
--spec(start_link/0 :: () -> {'ok', pid()} | 'ignore' | {'error', any()}).
+-spec(start_link/0 :: () -> {'ok', pid()} | {'error', any()}).
-spec(stop/1 :: (pid()) -> 'ok').
-spec(fork/1 :: (pid()) -> 'ok').
-spec(finish/1 :: (pid()) -> 'ok').
diff --git a/src/pg_local.erl b/src/pg_local.erl
index f5ded123..49fa873a 100644
--- a/src/pg_local.erl
+++ b/src/pg_local.erl
@@ -45,8 +45,8 @@
-type(name() :: term()).
--spec(start_link/0 :: () -> rabbit_types:ok_or_error2(pid(), term())).
--spec(start/0 :: () -> rabbit_types:ok_or_error2(pid(), term())).
+-spec(start_link/0 :: () -> {'ok', pid()} | {'error', any()}).
+-spec(start/0 :: () -> {'ok', pid()} | {'error', any()}).
-spec(join/2 :: (name(), pid()) -> 'ok').
-spec(leave/2 :: (name(), pid()) -> 'ok').
-spec(get_members/1 :: (name()) -> [pid()]).
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl
index 582960e7..138df716 100644
--- a/src/rabbit_channel.erl
+++ b/src/rabbit_channel.erl
@@ -78,7 +78,7 @@
-spec(start_link/6 ::
(channel_number(), pid(), pid(), rabbit_access_control:username(),
- rabbit_types:vhost(), pid()) -> rabbit_types:ok(pid())).
+ rabbit_types:vhost(), pid()) -> rabbit_types:ok_pid_or_error()).
-spec(do/2 :: (pid(), rabbit_framing:amqp_method_record()) -> 'ok').
-spec(do/3 :: (pid(), rabbit_framing:amqp_method_record(),
rabbit_types:maybe(rabbit_types:content())) -> 'ok').
diff --git a/src/rabbit_event.erl b/src/rabbit_event.erl
index 113ffcb4..0f00537a 100644
--- a/src/rabbit_event.erl
+++ b/src/rabbit_event.erl
@@ -69,7 +69,7 @@
-type(timer_fun() :: fun (() -> 'ok')).
--spec(start_link/0 :: () -> rabbit_types:ok_or_error2(pid(), any())).
+-spec(start_link/0 :: () -> rabbit_types:ok_pid_or_error()).
-spec(init_stats_timer/0 :: () -> state()).
-spec(ensure_stats_timer/3 :: (state(), timer_fun(), timer_fun()) -> state()).
-spec(stop_stats_timer/2 :: (state(), timer_fun()) -> state()).
diff --git a/src/rabbit_exchange_type_registry.erl b/src/rabbit_exchange_type_registry.erl
index 7906fbee..f15275b5 100644
--- a/src/rabbit_exchange_type_registry.erl
+++ b/src/rabbit_exchange_type_registry.erl
@@ -45,8 +45,7 @@
-ifdef(use_specs).
--spec(start_link/0 ::
- () -> 'ignore' | rabbit_types:ok_or_error2(pid(), term())).
+-spec(start_link/0 :: () -> rabbit_types:ok_pid_or_error()).
-spec(register/2 :: (binary(), atom()) -> 'ok').
-spec(binary_to_type/1 ::
(binary()) -> atom() | rabbit_types:error('not_found')).
diff --git a/src/rabbit_guid.erl b/src/rabbit_guid.erl
index af1c629f..e7d0c101 100644
--- a/src/rabbit_guid.erl
+++ b/src/rabbit_guid.erl
@@ -52,7 +52,7 @@
-type(guid() :: binary()).
--spec(start_link/0 :: () -> 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+-spec(start_link/0 :: () -> rabbit_types:ok_pid_or_error()).
-spec(guid/0 :: () -> guid()).
-spec(string_guid/1 :: (any()) -> string()).
-spec(binstring_guid/1 :: (any()) -> binary()).
diff --git a/src/rabbit_limiter.erl b/src/rabbit_limiter.erl
index 813ccc75..9894a850 100644
--- a/src/rabbit_limiter.erl
+++ b/src/rabbit_limiter.erl
@@ -45,7 +45,8 @@
-type(maybe_pid() :: pid() | 'undefined').
--spec(start_link/2 :: (pid(), non_neg_integer()) -> rabbit_types:ok(pid())).
+-spec(start_link/2 :: (pid(), non_neg_integer()) ->
+ rabbit_types:ok_pid_or_error()).
-spec(shutdown/1 :: (maybe_pid()) -> 'ok').
-spec(limit/2 :: (maybe_pid(), non_neg_integer()) -> 'ok' | 'stopped').
-spec(can_send/3 :: (maybe_pid(), pid(), boolean()) -> boolean()).
diff --git a/src/rabbit_log.erl b/src/rabbit_log.erl
index 85bcbca0..863f77e7 100644
--- a/src/rabbit_log.erl
+++ b/src/rabbit_log.erl
@@ -50,7 +50,7 @@
-ifdef(use_specs).
--spec(start_link/0 :: () -> 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+-spec(start_link/0 :: () -> rabbit_types:ok_pid_or_error()).
-spec(debug/1 :: (string()) -> 'ok').
-spec(debug/2 :: (string(), [any()]) -> 'ok').
-spec(info/1 :: (string()) -> 'ok').
diff --git a/src/rabbit_memory_monitor.erl b/src/rabbit_memory_monitor.erl
index bdf38075..f87b6271 100644
--- a/src/rabbit_memory_monitor.erl
+++ b/src/rabbit_memory_monitor.erl
@@ -86,7 +86,7 @@
-ifdef(use_specs).
--spec(start_link/0 :: () -> 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+-spec(start_link/0 :: () -> rabbit_types:ok_pid_or_error()).
-spec(update/0 :: () -> 'ok').
-spec(register/2 :: (pid(), {atom(),atom(),[any()]}) -> 'ok').
-spec(deregister/1 :: (pid()) -> 'ok').
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl
index 63100571..c7ebfd97 100644
--- a/src/rabbit_msg_store.erl
+++ b/src/rabbit_msg_store.erl
@@ -123,8 +123,7 @@
-spec(start_link/4 ::
(atom(), file:filename(), [binary()] | 'undefined',
- startup_fun_state()) ->
- 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+ startup_fun_state()) -> rabbit_types:ok_pid_or_error()).
-spec(write/4 :: (server(), rabbit_guid:guid(), msg(), client_msstate()) ->
rabbit_types:ok(client_msstate())).
-spec(read/3 :: (server(), rabbit_guid:guid(), client_msstate()) ->
diff --git a/src/rabbit_msg_store_gc.erl b/src/rabbit_msg_store_gc.erl
index eaa41173..c7948b7e 100644
--- a/src/rabbit_msg_store_gc.erl
+++ b/src/rabbit_msg_store_gc.erl
@@ -56,7 +56,7 @@
-ifdef(use_specs).
-spec(start_link/4 :: (file:filename(), any(), atom(), ets:tid()) ->
- 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+ rabbit_types:ok_pid_or_error()).
-spec(gc/3 :: (pid(), non_neg_integer(), non_neg_integer()) -> 'ok').
-spec(no_readers/2 :: (pid(), non_neg_integer()) -> 'ok').
-spec(stop/1 :: (pid()) -> 'ok').
diff --git a/src/rabbit_persister.erl b/src/rabbit_persister.erl
index a427b135..66e5cf63 100644
--- a/src/rabbit_persister.erl
+++ b/src/rabbit_persister.erl
@@ -73,9 +73,8 @@
{deliver, pmsg()} |
{ack, pmsg()}).
--spec(start_link/1 ::
- ([rabbit_amqqueue:name()])
- -> 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+-spec(start_link/1 :: ([rabbit_amqqueue:name()]) ->
+ rabbit_types:ok_pid_or_error()).
-spec(transaction/1 :: ([work_item()]) -> 'ok').
-spec(extend_transaction/2 ::
({rabbit_types:txn(), rabbit_amqqueue:name()}, [work_item()])
diff --git a/src/rabbit_queue_collector.erl b/src/rabbit_queue_collector.erl
index 9257ec82..b056d60b 100644
--- a/src/rabbit_queue_collector.erl
+++ b/src/rabbit_queue_collector.erl
@@ -46,7 +46,7 @@
-ifdef(use_specs).
--spec(start_link/0 :: () -> rabbit_types:ok(pid())).
+-spec(start_link/0 :: () -> rabbit_types:ok_pid_or_error()).
-spec(register/2 :: (pid(), rabbit_types:amqqueue()) -> 'ok').
-spec(delete_all/1 :: (pid()) -> 'ok').
-spec(shutdown/1 :: (pid()) -> 'ok').
diff --git a/src/rabbit_types.erl b/src/rabbit_types.erl
index a9313503..47e8bb01 100644
--- a/src/rabbit_types.erl
+++ b/src/rabbit_types.erl
@@ -40,8 +40,8 @@
unencoded_content/0, encoded_content/0, vhost/0, ctag/0,
amqp_error/0, r/1, r2/2, r3/3, ssl_socket/0, listener/0,
binding/0, amqqueue/0, exchange/0, connection/0, protocol/0,
- user/0, error/1, ok_or_error/1, ok_or_error2/2, ok/1,
- channel_exit/0, connection_exit/0]).
+ user/0, ok/1, error/1, ok_or_error/1, ok_or_error2/2,
+ ok_pid_or_error/0, channel_exit/0, connection_exit/0]).
-type(channel_exit() :: no_return()).
-type(connection_exit() :: no_return()).
@@ -147,5 +147,6 @@
-type(error(A) :: {'error', A}).
-type(ok_or_error(A) :: 'ok' | error(A)).
-type(ok_or_error2(A, B) :: ok(A) | error(B)).
+-type(ok_pid_or_error() :: ok_or_error2(pid(), any())).
-endif. % use_specs
diff --git a/src/vm_memory_monitor.erl b/src/vm_memory_monitor.erl
index 3cbc80f8..e658f005 100644
--- a/src/vm_memory_monitor.erl
+++ b/src/vm_memory_monitor.erl
@@ -72,10 +72,7 @@
-ifdef(use_specs).
--spec(start_link/1 ::
- (float()) -> 'ignore' |
- rabbit_types:error(any()) |
- rabbit_types:ok(pid())).
+-spec(start_link/1 :: (float()) -> {'ok', pid()} | {'error', any()}).
-spec(update/0 :: () -> 'ok').
-spec(get_total_memory/0 :: () -> (non_neg_integer() | 'unknown')).
-spec(get_vm_limit/0 :: () -> non_neg_integer()).
diff --git a/src/worker_pool.erl b/src/worker_pool.erl
index 01ce3535..595884e0 100644
--- a/src/worker_pool.erl
+++ b/src/worker_pool.erl
@@ -52,7 +52,7 @@
-ifdef(use_specs).
--spec(start_link/0 :: () -> 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+-spec(start_link/0 :: () -> {'ok', pid()} | {'error', any()}).
-spec(submit/1 :: (fun (() -> A) | {atom(), atom(), [any()]}) -> A).
-spec(submit_async/1 ::
(fun (() -> any()) | {atom(), atom(), [any()]}) -> 'ok').
diff --git a/src/worker_pool_sup.erl b/src/worker_pool_sup.erl
index afa21164..177a1453 100644
--- a/src/worker_pool_sup.erl
+++ b/src/worker_pool_sup.erl
@@ -41,9 +41,8 @@
-ifdef(use_specs).
--spec(start_link/0 :: () -> 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
--spec(start_link/1 :: (non_neg_integer()) ->
- 'ignore' | rabbit_types:ok_or_error2(pid(), any())).
+-spec(start_link/0 :: () -> {'ok', pid()} | {'error', any()}).
+-spec(start_link/1 :: (non_neg_integer()) -> {'ok', pid()} | {'error', any()}).
-endif.
diff --git a/src/worker_pool_worker.erl b/src/worker_pool_worker.erl
index a61e4cc3..42049d50 100644
--- a/src/worker_pool_worker.erl
+++ b/src/worker_pool_worker.erl
@@ -44,8 +44,7 @@
-ifdef(use_specs).
--spec(start_link/1 ::
- (any()) -> {'ok', pid()} | 'ignore' | rabbit_types:error(any())).
+-spec(start_link/1 :: (any()) -> {'ok', pid()} | {'error', any()}).
-spec(submit/2 :: (pid(), fun (() -> A) | {atom(), atom(), [any()]}) -> A).
-spec(submit_async/2 ::
(pid(), fun (() -> any()) | {atom(), atom(), [any()]}) -> 'ok').