ls7366/traits.rs
1use crate::errors::EncoderError;
2
3/// Any field that may be encoded into a u8 byte
4pub trait Encodable {
5 fn encode(&self) -> u8;
6}
7
8/// Any object that may be decoded from a u8 byte.
9/// Unsuccessful decodes result in an ([`EncoderError`])
10///
11/// [`EncoderError`]: ../errors/enum.EncoderError.html
12
13pub trait Decodable: Sized{
14 fn decode(raw:u8) -> Result<Self, EncoderError>;
15}