summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandru Scvortov <alexandru@rabbitmq.com>2010-07-05 23:39:33 +0100
committerAlexandru Scvortov <alexandru@rabbitmq.com>2010-07-05 23:39:33 +0100
commitd84e67b9e089c41eab143045f37183e87d46534d (patch)
tree33201ef0a6f89b923c3ee7203e6b0d911684e1f6
parent6a67fc1e887b427feaaa1511be2ccbbae905fbe5 (diff)
downloadrabbitmq-server-d84e67b9e089c41eab143045f37183e87d46534d.tar.gz
moved export_types to inside ifdefs
-rw-r--r--codegen.py50
-rw-r--r--src/rabbit.erl10
-rw-r--r--src/rabbit_access_control.erl3
-rw-r--r--src/rabbit_amqqueue.erl4
-rw-r--r--src/rabbit_channel.erl4
-rw-r--r--src/rabbit_exchange.erl4
-rw-r--r--src/rabbit_guid.erl4
-rw-r--r--src/rabbit_misc.erl4
-rw-r--r--src/rabbit_mnesia.erl4
-rw-r--r--src/rabbit_net.erl3
-rw-r--r--src/rabbit_router.erl3
11 files changed, 50 insertions, 43 deletions
diff --git a/codegen.py b/codegen.py
index ca1d235b..1244aae1 100644
--- a/codegen.py
+++ b/codegen.py
@@ -332,29 +332,14 @@ def genErl(spec):
-export([lookup_amqp_exception/1]).
-export([amqp_exception/1]).
--export_type([amqp_table/0, amqp_property_type/0, amqp_method_record/0,
+"""
+ print "%% Various types"
+ print "-ifdef(use_specs)."
+
+ print """-export_type([amqp_table/0, amqp_property_type/0, amqp_method_record/0,
amqp_method_name/0, amqp_method/0, amqp_class_id/0,
amqp_value/0, amqp_array/0, amqp_exception/0, amqp_property_record/0]).
-bitvalue(true) -> 1;
-bitvalue(false) -> 0;
-bitvalue(undefined) -> 0.
-
-%% Method signatures
--ifdef(use_specs).
--spec(lookup_method_name/1 :: (amqp_method()) -> amqp_method_name()).
--spec(method_id/1 :: (amqp_method_name()) -> amqp_method()).
--spec(method_has_content/1 :: (amqp_method_name()) -> boolean()).
--spec(is_method_synchronous/1 :: (amqp_method_record()) -> boolean()).
--spec(method_record/1 :: (amqp_method_name()) -> amqp_method_record()).
--spec(method_fieldnames/1 :: (amqp_method_name()) -> [amqp_method_field_name()]).
--spec(decode_method_fields/2 :: (amqp_method_name(), binary()) -> amqp_method_record()).
--spec(decode_properties/2 :: (non_neg_integer(), binary()) -> amqp_property_record()).
--spec(encode_method_fields/1 :: (amqp_method_record()) -> binary()).
--spec(encode_properties/1 :: (amqp_method_record()) -> binary()).
--spec(lookup_amqp_exception/1 :: (amqp_exception()) -> {boolean(), amqp_exception_code(), binary()}).
--spec(amqp_exception/1 :: (amqp_exception_code()) -> amqp_exception()).
-
-type(amqp_field_type() ::
'longstr' | 'signedint' | 'decimal' | 'timestamp' |
'table' | 'byte' | 'double' | 'float' | 'long' |
@@ -379,10 +364,8 @@ bitvalue(undefined) -> 0.
'undefined' | % void
non_neg_integer() % timestamp
).
--endif. % use_specs
"""
- print "-ifdef(use_specs)."
- print "%% Various types"
+
print prettyType("amqp_method_name()",
[m.erlangName() for m in methods])
print prettyType("amqp_method()",
@@ -409,6 +392,27 @@ bitvalue(undefined) -> 0.
["%i" % ci for ci in classIds])
print "-endif. % use_specs"
+ print """
+%% Method signatures
+-ifdef(use_specs).
+-spec(lookup_method_name/1 :: (amqp_method()) -> amqp_method_name()).
+-spec(method_id/1 :: (amqp_method_name()) -> amqp_method()).
+-spec(method_has_content/1 :: (amqp_method_name()) -> boolean()).
+-spec(is_method_synchronous/1 :: (amqp_method_record()) -> boolean()).
+-spec(method_record/1 :: (amqp_method_name()) -> amqp_method_record()).
+-spec(method_fieldnames/1 :: (amqp_method_name()) -> [amqp_method_field_name()]).
+-spec(decode_method_fields/2 :: (amqp_method_name(), binary()) -> amqp_method_record()).
+-spec(decode_properties/2 :: (non_neg_integer(), binary()) -> amqp_property_record()).
+-spec(encode_method_fields/1 :: (amqp_method_record()) -> binary()).
+-spec(encode_properties/1 :: (amqp_method_record()) -> binary()).
+-spec(lookup_amqp_exception/1 :: (amqp_exception()) -> {boolean(), amqp_exception_code(), binary()}).
+-spec(amqp_exception/1 :: (amqp_exception_code()) -> amqp_exception()).
+-endif. % use_specs
+
+bitvalue(true) -> 1;
+bitvalue(false) -> 0;
+bitvalue(undefined) -> 0.
+"""
for m in methods: genLookupMethodName(m)
print "lookup_method_name({_ClassId, _MethodId} = Id) -> exit({unknown_method_id, Id})."
diff --git a/src/rabbit.erl b/src/rabbit.erl
index 376e00dc..9f3481d2 100644
--- a/src/rabbit.erl
+++ b/src/rabbit.erl
@@ -39,11 +39,6 @@
-export([log_location/1]).
--export_type([txn/0, maybe/1, info/0, info_key/0, message/0, basic_message/0,
- delivery/0, content/0, decoded_content/0, undecoded_content/0,
- unencoded_content/0, encoded_content/0, vhost/0, ctag/0,
- ip_port/0, hostname/0]).
-
%%---------------------------------------------------------------------------
%% Boot steps.
-export([maybe_insert_default_data/0]).
@@ -189,6 +184,11 @@
-ifdef(use_specs).
+-export_type([txn/0, maybe/1, info/0, info_key/0, message/0, basic_message/0,
+ delivery/0, content/0, decoded_content/0, undecoded_content/0,
+ unencoded_content/0, encoded_content/0, vhost/0, ctag/0,
+ ip_port/0, hostname/0]).
+
-type(maybe(T) :: T | 'none').
-type(vhost() :: binary()).
-type(ctag() :: binary()).
diff --git a/src/rabbit_access_control.erl b/src/rabbit_access_control.erl
index 050277fb..f9fd2c31 100644
--- a/src/rabbit_access_control.erl
+++ b/src/rabbit_access_control.erl
@@ -40,12 +40,13 @@
-export([add_vhost/1, delete_vhost/1, list_vhosts/0]).
-export([set_permissions/5, clear_permissions/2,
list_vhost_permissions/1, list_user_permissions/1]).
--export_type([username/0]).
%%----------------------------------------------------------------------------
-ifdef(use_specs).
+-export_type([username/0]).
+
-type(permission_atom() :: 'configure' | 'read' | 'write').
-type(username() :: binary()).
-type(password() :: binary()).
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl
index ffa46642..e1bb413e 100644
--- a/src/rabbit_amqqueue.erl
+++ b/src/rabbit_amqqueue.erl
@@ -47,8 +47,6 @@
-export([commit_all/3, rollback_all/3, notify_down_all/2, limit_all/3]).
-export([on_node_down/1]).
--export_type([amqqueue/0, name/0, qmsg/0]).
-
-import(mnesia).
-import(gen_server2).
-import(lists).
@@ -61,6 +59,8 @@
-ifdef(use_specs).
+-export_type([amqqueue/0, name/0, qmsg/0]).
+
-type(name() :: rabbit_misc:r('queue')).
-type(amqqueue() ::
#amqqueue{name :: name(),
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl
index 915a41ee..a0f09f4c 100644
--- a/src/rabbit_channel.erl
+++ b/src/rabbit_channel.erl
@@ -44,8 +44,6 @@
-export([init/1, terminate/2, code_change/3,
handle_call/3, handle_cast/2, handle_info/2, handle_pre_hibernate/1]).
--export_type([channel_number/0]).
-
-record(ch, {state, channel, reader_pid, writer_pid, limiter_pid,
transaction_id, tx_participants, next_tag,
uncommitted_ack_q, unacked_message_q,
@@ -73,6 +71,8 @@
-ifdef(use_specs).
+-export_type([channel_number/0]).
+
-type(ref() :: any()).
-type(channel_number() :: non_neg_integer()).
diff --git a/src/rabbit_exchange.erl b/src/rabbit_exchange.erl
index 0e5b9baf..de29ccb3 100644
--- a/src/rabbit_exchange.erl
+++ b/src/rabbit_exchange.erl
@@ -43,8 +43,6 @@
-export([assert_args_equivalence/2]).
-export([check_type/1]).
--export_type([name/0, exchange/0, binding/0]).
-
%% EXTENDED API
-export([list_exchange_bindings/1]).
-export([list_queue_bindings/1]).
@@ -58,6 +56,8 @@
-ifdef(use_specs).
+-export_type([name/0, exchange/0, binding/0]).
+
-type(name() :: rabbit_misc:r('exchange')).
-type(exchange() ::
#exchange{name :: name(),
diff --git a/src/rabbit_guid.erl b/src/rabbit_guid.erl
index a44e0f58..6afbbee9 100644
--- a/src/rabbit_guid.erl
+++ b/src/rabbit_guid.erl
@@ -41,8 +41,6 @@
-export([init/1, handle_call/3, handle_cast/2, handle_info/2,
terminate/2, code_change/3]).
--export_type([guid/0]).
-
-define(SERVER, ?MODULE).
-define(SERIAL_FILENAME, "rabbit_serial").
@@ -52,6 +50,8 @@
-ifdef(use_specs).
+-export_type([guid/0]).
+
-type(guid() :: binary()).
-spec(start_link/0 :: () -> {'ok', pid()} | 'ignore' | {'error', any()}).
diff --git a/src/rabbit_misc.erl b/src/rabbit_misc.erl
index 535af2c8..88a5e505 100644
--- a/src/rabbit_misc.erl
+++ b/src/rabbit_misc.erl
@@ -63,8 +63,6 @@
-export([version_compare/2, version_compare/3]).
-export([recursive_delete/1, dict_cons/3, unlink_and_capture_exit/1]).
--export_type([not_found/0, amqp_error/0, r/1]).
-
-import(mnesia).
-import(lists).
-import(cover).
@@ -74,6 +72,8 @@
-ifdef(use_specs).
+-export_type([not_found/0, amqp_error/0, r/1]).
+
-type(ok_or_error() :: 'ok' | {'error', any()}).
-type(amqp_error() ::
#amqp_error{name :: rabbit_framing:amqp_exception(),
diff --git a/src/rabbit_mnesia.erl b/src/rabbit_mnesia.erl
index d1d90dbf..c8e58df4 100644
--- a/src/rabbit_mnesia.erl
+++ b/src/rabbit_mnesia.erl
@@ -42,14 +42,14 @@
%% other mnesia-using Erlang applications, such as ejabberd
-export([create_tables/0]).
--export_type([node_type/0]).
-
-include("rabbit.hrl").
%%----------------------------------------------------------------------------
-ifdef(use_specs).
+-export_type([node_type/0]).
+
-type(node_type() :: disc_only | disc | ram | unknown).
-spec(status/0 :: () -> [{'nodes', [{node_type(), [node()]}]} |
{'running_nodes', [node()]}]).
diff --git a/src/rabbit_net.erl b/src/rabbit_net.erl
index 1232b457..1892e498 100644
--- a/src/rabbit_net.erl
+++ b/src/rabbit_net.erl
@@ -35,12 +35,13 @@
-export([async_recv/3, close/1, controlling_process/2,
getstat/2, peername/1, port_command/2,
send/2, sockname/1]).
--export_type([socket/0]).
%%---------------------------------------------------------------------------
-ifdef(use_specs).
+-export_type([socket/0]).
+
-type(stat_option() ::
'recv_cnt' | 'recv_max' | 'recv_avg' | 'recv_oct' | 'recv_dvi' |
'send_cnt' | 'send_max' | 'send_avg' | 'send_oct' | 'send_pend').
diff --git a/src/rabbit_router.erl b/src/rabbit_router.erl
index 86ce4128..eb5beb2a 100644
--- a/src/rabbit_router.erl
+++ b/src/rabbit_router.erl
@@ -36,12 +36,13 @@
-export([deliver/2,
match_bindings/2,
match_routing_key/2]).
--export_type([routing_key/0, routing_result/0]).
%%----------------------------------------------------------------------------
-ifdef(use_specs).
+-export_type([routing_key/0, routing_result/0]).
+
-type(routing_key() :: binary()).
-type(routing_result() :: 'routed' | 'unroutable' | 'not_delivered').