Function jppe::decode_borrow

source ·
pub fn decode_borrow<'a, T: BorrowByteDecode<'a>>(
    input: &'a [u8]
) -> JResult<&'a [u8], T>
Expand description

Decode byte stream

§Examples:

 
use jppe_derive::{BorrowByteDecode};
 
#[derive(Debug, PartialEq, Eq, BorrowByteDecode)]
pub struct SimpleExample<'a> {
    pub length: u8,
    #[jppe(length="length")]
    pub data: &'a [u8],
}
let (input, value) = jppe::decode_borrow::<SimpleExample>(b"\x02\x03\x01").unwrap();
assert_eq!(value, SimpleExample { length: 2, data: b"\x03\x01" });
assert_eq!(input.is_empty(), true);