pub trait Codec: Debug + Sized {
// Required methods
fn encode(&self, bytes: &mut Vec<u8>);
fn read(_: &mut Reader<'_>) -> Option<Self>;
// Provided methods
fn get_encoding(&self) -> Vec<u8> { ... }
fn read_bytes(bytes: &[u8]) -> Option<Self> { ... }
}
Expand description
Trait for implementing encoding and decoding functionality on something.
Required Methods§
Provided Methods§
sourcefn get_encoding(&self) -> Vec<u8>
fn get_encoding(&self) -> Vec<u8>
Convenience function for encoding the implementation into a vec and returning it
sourcefn read_bytes(bytes: &[u8]) -> Option<Self>
fn read_bytes(bytes: &[u8]) -> Option<Self>
Function for wrapping a call to the read function in a Reader for the slice of bytes provided