mqtt_protocol_core/mqtt/connection/
sendable_role.rs1use crate::mqtt::connection::role::*;
25use crate::mqtt::packet::*;
26
27pub trait SendableRole<Role> {}
29
30impl SendableRole<Client> for v5_0::Connect {}
33impl SendableRole<Client> for v3_1_1::Connect {}
34
35impl SendableRole<Server> for v5_0::Connack {}
36impl SendableRole<Server> for v3_1_1::Connack {}
37
38impl SendableRole<Any> for v5_0::Connect {}
39impl SendableRole<Any> for v5_0::Connack {}
40impl SendableRole<Any> for v3_1_1::Connect {}
41impl SendableRole<Any> for v3_1_1::Connack {}
42
43impl SendableRole<Client> for v3_1_1::Pingreq {}
45impl SendableRole<Client> for v3_1_1::Disconnect {}
46
47impl SendableRole<Client> for v5_0::Pingreq {}
48impl SendableRole<Client> for v5_0::Disconnect {}
49impl SendableRole<Client> for v5_0::Auth {}
50
51impl SendableRole<Server> for v3_1_1::Pingresp {}
53
54impl SendableRole<Server> for v5_0::Pingresp {}
55impl SendableRole<Server> for v5_0::Disconnect {}
56impl SendableRole<Server> for v5_0::Auth {}
57
58impl SendableRole<Any> for v3_1_1::Pingreq {}
60impl SendableRole<Any> for v3_1_1::Pingresp {}
61impl SendableRole<Any> for v3_1_1::Disconnect {}
62
63impl SendableRole<Any> for v5_0::Pingreq {}
64impl SendableRole<Any> for v5_0::Pingresp {}
65impl SendableRole<Any> for v5_0::Disconnect {}
66impl SendableRole<Any> for v5_0::Auth {}
67
68impl<PacketIdType> SendableRole<Client> for v3_1_1::GenericPublish<PacketIdType> where
71 PacketIdType: crate::mqtt::packet::IsPacketId
72{
73}
74impl<PacketIdType> SendableRole<Client> for v3_1_1::GenericPuback<PacketIdType> where
75 PacketIdType: crate::mqtt::packet::IsPacketId
76{
77}
78impl<PacketIdType> SendableRole<Client> for v3_1_1::GenericPubrec<PacketIdType> where
79 PacketIdType: crate::mqtt::packet::IsPacketId
80{
81}
82impl<PacketIdType> SendableRole<Client> for v3_1_1::GenericPubrel<PacketIdType> where
83 PacketIdType: crate::mqtt::packet::IsPacketId
84{
85}
86impl<PacketIdType> SendableRole<Client> for v3_1_1::GenericPubcomp<PacketIdType> where
87 PacketIdType: crate::mqtt::packet::IsPacketId
88{
89}
90impl<PacketIdType> SendableRole<Client> for v3_1_1::GenericSubscribe<PacketIdType> where
91 PacketIdType: crate::mqtt::packet::IsPacketId
92{
93}
94impl<PacketIdType> SendableRole<Client> for v3_1_1::GenericUnsubscribe<PacketIdType> where
95 PacketIdType: crate::mqtt::packet::IsPacketId
96{
97}
98
99impl<PacketIdType> SendableRole<Client> for v5_0::GenericPublish<PacketIdType> where
100 PacketIdType: crate::mqtt::packet::IsPacketId
101{
102}
103impl<PacketIdType> SendableRole<Client> for v5_0::GenericPuback<PacketIdType> where
104 PacketIdType: crate::mqtt::packet::IsPacketId
105{
106}
107impl<PacketIdType> SendableRole<Client> for v5_0::GenericPubrec<PacketIdType> where
108 PacketIdType: crate::mqtt::packet::IsPacketId
109{
110}
111impl<PacketIdType> SendableRole<Client> for v5_0::GenericPubrel<PacketIdType> where
112 PacketIdType: crate::mqtt::packet::IsPacketId
113{
114}
115impl<PacketIdType> SendableRole<Client> for v5_0::GenericPubcomp<PacketIdType> where
116 PacketIdType: crate::mqtt::packet::IsPacketId
117{
118}
119impl<PacketIdType> SendableRole<Client> for v5_0::GenericSubscribe<PacketIdType> where
120 PacketIdType: crate::mqtt::packet::IsPacketId
121{
122}
123impl<PacketIdType> SendableRole<Client> for v5_0::GenericUnsubscribe<PacketIdType> where
124 PacketIdType: crate::mqtt::packet::IsPacketId
125{
126}
127
128impl<PacketIdType> SendableRole<Server> for v3_1_1::GenericPublish<PacketIdType> where
130 PacketIdType: crate::mqtt::packet::IsPacketId
131{
132}
133impl<PacketIdType> SendableRole<Server> for v3_1_1::GenericPuback<PacketIdType> where
134 PacketIdType: crate::mqtt::packet::IsPacketId
135{
136}
137impl<PacketIdType> SendableRole<Server> for v3_1_1::GenericPubrec<PacketIdType> where
138 PacketIdType: crate::mqtt::packet::IsPacketId
139{
140}
141impl<PacketIdType> SendableRole<Server> for v3_1_1::GenericPubrel<PacketIdType> where
142 PacketIdType: crate::mqtt::packet::IsPacketId
143{
144}
145impl<PacketIdType> SendableRole<Server> for v3_1_1::GenericPubcomp<PacketIdType> where
146 PacketIdType: crate::mqtt::packet::IsPacketId
147{
148}
149impl<PacketIdType> SendableRole<Server> for v3_1_1::GenericSuback<PacketIdType> where
150 PacketIdType: crate::mqtt::packet::IsPacketId
151{
152}
153impl<PacketIdType> SendableRole<Server> for v3_1_1::GenericUnsuback<PacketIdType> where
154 PacketIdType: crate::mqtt::packet::IsPacketId
155{
156}
157
158impl<PacketIdType> SendableRole<Server> for v5_0::GenericPublish<PacketIdType> where
159 PacketIdType: crate::mqtt::packet::IsPacketId
160{
161}
162impl<PacketIdType> SendableRole<Server> for v5_0::GenericPuback<PacketIdType> where
163 PacketIdType: crate::mqtt::packet::IsPacketId
164{
165}
166impl<PacketIdType> SendableRole<Server> for v5_0::GenericPubrec<PacketIdType> where
167 PacketIdType: crate::mqtt::packet::IsPacketId
168{
169}
170impl<PacketIdType> SendableRole<Server> for v5_0::GenericPubrel<PacketIdType> where
171 PacketIdType: crate::mqtt::packet::IsPacketId
172{
173}
174impl<PacketIdType> SendableRole<Server> for v5_0::GenericPubcomp<PacketIdType> where
175 PacketIdType: crate::mqtt::packet::IsPacketId
176{
177}
178impl<PacketIdType> SendableRole<Server> for v5_0::GenericSuback<PacketIdType> where
179 PacketIdType: crate::mqtt::packet::IsPacketId
180{
181}
182impl<PacketIdType> SendableRole<Server> for v5_0::GenericUnsuback<PacketIdType> where
183 PacketIdType: crate::mqtt::packet::IsPacketId
184{
185}
186
187impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericPublish<PacketIdType> where
189 PacketIdType: crate::mqtt::packet::IsPacketId
190{
191}
192impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericPuback<PacketIdType> where
193 PacketIdType: crate::mqtt::packet::IsPacketId
194{
195}
196impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericPubrec<PacketIdType> where
197 PacketIdType: crate::mqtt::packet::IsPacketId
198{
199}
200impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericPubrel<PacketIdType> where
201 PacketIdType: crate::mqtt::packet::IsPacketId
202{
203}
204impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericPubcomp<PacketIdType> where
205 PacketIdType: crate::mqtt::packet::IsPacketId
206{
207}
208impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericSubscribe<PacketIdType> where
209 PacketIdType: crate::mqtt::packet::IsPacketId
210{
211}
212impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericSuback<PacketIdType> where
213 PacketIdType: crate::mqtt::packet::IsPacketId
214{
215}
216impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericUnsubscribe<PacketIdType> where
217 PacketIdType: crate::mqtt::packet::IsPacketId
218{
219}
220impl<PacketIdType> SendableRole<Any> for v3_1_1::GenericUnsuback<PacketIdType> where
221 PacketIdType: crate::mqtt::packet::IsPacketId
222{
223}
224
225impl<PacketIdType> SendableRole<Any> for v5_0::GenericPublish<PacketIdType> where
226 PacketIdType: crate::mqtt::packet::IsPacketId
227{
228}
229impl<PacketIdType> SendableRole<Any> for v5_0::GenericPuback<PacketIdType> where
230 PacketIdType: crate::mqtt::packet::IsPacketId
231{
232}
233impl<PacketIdType> SendableRole<Any> for v5_0::GenericPubrec<PacketIdType> where
234 PacketIdType: crate::mqtt::packet::IsPacketId
235{
236}
237impl<PacketIdType> SendableRole<Any> for v5_0::GenericPubrel<PacketIdType> where
238 PacketIdType: crate::mqtt::packet::IsPacketId
239{
240}
241impl<PacketIdType> SendableRole<Any> for v5_0::GenericPubcomp<PacketIdType> where
242 PacketIdType: crate::mqtt::packet::IsPacketId
243{
244}
245impl<PacketIdType> SendableRole<Any> for v5_0::GenericSubscribe<PacketIdType> where
246 PacketIdType: crate::mqtt::packet::IsPacketId
247{
248}
249impl<PacketIdType> SendableRole<Any> for v5_0::GenericSuback<PacketIdType> where
250 PacketIdType: crate::mqtt::packet::IsPacketId
251{
252}
253impl<PacketIdType> SendableRole<Any> for v5_0::GenericUnsubscribe<PacketIdType> where
254 PacketIdType: crate::mqtt::packet::IsPacketId
255{
256}
257impl<PacketIdType> SendableRole<Any> for v5_0::GenericUnsuback<PacketIdType> where
258 PacketIdType: crate::mqtt::packet::IsPacketId
259{
260}
261
262impl<T, R> SendableRole<R> for &T where T: SendableRole<R> {}