pub enum MqttPacket {
V3(Packet),
V5(Packet),
Version(ProtocolVersion),
}
Expand description
Decoded MQTT protocol packets
Represents all possible packet types across supported protocol versions plus version detection results during handshake
Variants§
V3(Packet)
MQTT v3.1.1 protocol packet
V5(Packet)
MQTT v5.0 protocol packet
Version(ProtocolVersion)
Protocol version detection result
Trait Implementations§
Source§impl Debug for MqttPacket
impl Debug for MqttPacket
Source§impl Encoder<MqttPacket> for MqttCodec
impl Encoder<MqttPacket> for MqttCodec
Source§fn encode(
&mut self,
item: MqttPacket,
dst: &mut BytesMut,
) -> Result<(), Self::Error>
fn encode( &mut self, item: MqttPacket, dst: &mut BytesMut, ) -> Result<(), Self::Error>
Encodes MQTT packets according to active protocol version
§Example
use bytes::BytesMut;
use rmqtt_codec::{MqttCodec, MqttPacket, v3};
use tokio_util::codec::Encoder;
let mut codec = MqttCodec::V3(v3::Codec::new(1024*1024));
let mut buffer = BytesMut::new();
let packet = MqttPacket::V3(v3::Packet::PingRequest);
codec.encode(packet, &mut buffer).unwrap();
Source§type Error = EncodeError
type Error = EncodeError
The type of encoding errors. Read more
Auto Trait Implementations§
impl !Freeze for MqttPacket
impl RefUnwindSafe for MqttPacket
impl Send for MqttPacket
impl Sync for MqttPacket
impl Unpin for MqttPacket
impl UnwindSafe for MqttPacket
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more