1 use super::prelude::*; 2 use crate::common::Pid; 3 4 #[derive(Debug)] 5 pub struct vAttach { 6 pub pid: Pid, 7 } 8 9 impl<'a> ParseCommand<'a> for vAttach { 10 #[inline(always)] from_packet(buf: PacketBuf<'a>) -> Option<Self>11 fn from_packet(buf: PacketBuf<'a>) -> Option<Self> { 12 crate::__dead_code_marker!("vAttach", "from_packet"); 13 14 let body = buf.into_body(); 15 let pid = match body { 16 [b';', pid @ ..] => Pid::new(decode_hex(pid).ok()?)?, 17 _ => return None, 18 }; 19 Some(vAttach { pid }) 20 } 21 } 22