#![rustfmt::skip] /// @generated rust packets from foo.pdl. use bytes::{Buf, BufMut, Bytes, BytesMut}; use std::convert::{TryFrom, TryInto}; use std::cell::Cell; use std::fmt; use std::result::Result; use pdl_runtime::{DecodeError, EncodeError, Packet}; /// Private prevents users from creating arbitrary scalar values /// in situations where the value needs to be validated. /// Users can freely deref the value, but only the backend /// may create it. #[derive(Clone, Copy, Hash, PartialEq, Eq, PartialOrd, Ord)] pub struct Private(T); impl std::ops::Deref for Private { type Target = T; fn deref(&self) -> &Self::Target { &self.0 } } impl std::fmt::Debug for Private { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { T::fmt(&self.0, f) } }