embedded-mqtt 0.1.0

no_std encoder/decoder for MQTT 3.1.1 protocol packets for embedded devices.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use crate::{
	status::Status,
	error::{DecodeError, EncodeError},
};

pub mod string;
pub mod values;

pub trait Decodable<'a>
	where Self: core::marker::Sized {
	fn decode(bytes: &'a [u8]) -> Result<Status<(usize, Self)>, DecodeError>;
}

pub trait Encodable {
	fn encoded_len(&self) -> usize;
	fn encode(&self, bytes: &mut [u8]) -> Result<usize, EncodeError>;
}