use super::prelude::*; #[derive(Debug)] pub struct M<'a> { pub addr: &'a [u8], pub len: usize, pub val: &'a [u8], } impl<'a> ParseCommand<'a> for M<'a> { #[inline(always)] fn from_packet(buf: PacketBuf<'a>) -> Option { let body = buf.into_body(); let mut body = body.split_mut(|&b| b == b',' || b == b':'); let addr = decode_hex_buf(body.next()?).ok()?; let len = decode_hex(body.next()?).ok()?; let val = decode_hex_buf(body.next()?).ok()?; Some(M { addr, len, val }) } }