PduCodec

Trait PduCodec 

Source
pub trait PduCodec {
    type Error: Error + From<AcnError>;

    // Required method
    fn decode(buf: &[u8]) -> Result<Self, Self::Error>
       where Self: Sized;

    // Provided methods
    fn flags(&self) -> Flags { ... }
    fn length(&self) -> Length { ... }
    fn vector(&self) -> Option<Vector> { ... }
    fn vector_length(&self) -> usize { ... }
    fn header_length(&self) -> usize { ... }
    fn encode_header(&self, _buf: &mut [u8]) -> Result<usize, Self::Error> { ... }
    fn data_length(&self) -> usize { ... }
    fn encode_data(&self, _buf: &mut [u8]) -> Result<usize, Self::Error> { ... }
    fn encode(&self, buf: &mut [u8]) -> Result<usize, Self::Error> { ... }
}

Required Associated Types§

Required Methods§

Source

fn decode(buf: &[u8]) -> Result<Self, Self::Error>
where Self: Sized,

Provided Methods§

Source

fn flags(&self) -> Flags

Source

fn length(&self) -> Length

Source

fn vector(&self) -> Option<Vector>

Source

fn vector_length(&self) -> usize

Source

fn header_length(&self) -> usize

Source

fn encode_header(&self, _buf: &mut [u8]) -> Result<usize, Self::Error>

Source

fn data_length(&self) -> usize

Source

fn encode_data(&self, _buf: &mut [u8]) -> Result<usize, Self::Error>

Source

fn encode(&self, buf: &mut [u8]) -> Result<usize, Self::Error>

Implementors§