• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 use super::prelude::*;
2 
3 #[derive(Debug)]
4 pub struct p<'a> {
5     pub reg_id: usize,
6 
7     pub buf: &'a mut [u8],
8 }
9 
10 impl<'a> ParseCommand<'a> for p<'a> {
11     #[inline(always)]
from_packet(buf: PacketBuf<'a>) -> Option<Self>12     fn from_packet(buf: PacketBuf<'a>) -> Option<Self> {
13         let (buf, body_range) = buf.into_raw_buf();
14         let body = buf.get(body_range.start..body_range.end)?;
15 
16         if body.is_empty() {
17             return None;
18         }
19 
20         let reg_id = decode_hex(body).ok()?;
21 
22         Some(p { reg_id, buf })
23     }
24 }
25