38
-export_type([txn/0, maybe/1, info/0, info_key/0, message/0, basic_message/0,
38
-export_type([txn/0, maybe/1, info/0, infos/0, info_key/0, info_keys/0,
39
message/0, basic_message/0,
39
40
delivery/0, content/0, decoded_content/0, undecoded_content/0,
40
unencoded_content/0, encoded_content/0, vhost/0, ctag/0,
41
amqp_error/0, r/1, r2/2, r3/3, listener/0,
41
unencoded_content/0, encoded_content/0, message_properties/0,
42
vhost/0, ctag/0, amqp_error/0, r/1, r2/2, r3/3, listener/0,
42
43
binding/0, binding_source/0, binding_destination/0,
43
44
amqqueue/0, exchange/0,
44
45
connection/0, protocol/0, user/0, ok/1, error/1, ok_or_error/1,
88
89
txn :: maybe(txn()),
90
91
message :: message()}).
92
-type(message_properties() ::
93
#message_properties{expiry :: pos_integer() | 'undefined'}).
92
95
%% this is really an abstract type, but dialyzer does not support them
93
96
-type(txn() :: rabbit_guid:guid()).
95
98
-type(info_key() :: atom()).
99
-type(info_keys() :: [info_key()]).
96
101
-type(info() :: {info_key(), any()}).
102
-type(infos() :: [info()]).
98
104
-type(amqp_error() ::
99
105
#amqp_error{name :: rabbit_framing:amqp_exception(),
142
148
-type(connection() :: pid()).
144
-type(protocol() :: 'rabbit_framing_amqp_0_8' | 'rabbit_framing_amqp_0_9_1').
150
-type(protocol() :: rabbit_framing:protocol()).
147
#user{username :: rabbit_access_control:username(),
148
password :: rabbit_access_control:password(),
149
is_admin :: boolean()}).
153
#user{username :: rabbit_access_control:username(),
154
password_hash :: rabbit_access_control:password_hash(),
155
is_admin :: boolean()}).
151
157
-type(ok(A) :: {'ok', A}).
152
158
-type(error(A) :: {'error', A}).