use std::ops::Deref;
use crate::serialized::Context;
#[derive(Debug)]
pub struct Size {
size: usize,
context: Context,
#[cfg(unix)]
num_fds: u32,
}
impl Size {
pub fn new(size: usize, context: Context) -> Self {
Self {
size,
context,
#[cfg(unix)]
num_fds: 0,
}
}
#[cfg(unix)]
pub fn set_num_fds(mut self, num_fds: u32) -> Self {
self.num_fds = num_fds;
self
}
pub fn size(&self) -> usize {
self.size
}
pub fn context(&self) -> Context {
self.context
}
#[cfg(unix)]
pub fn num_fds(&self) -> u32 {
self.num_fds
}
}
impl Deref for Size {
type Target = usize;
fn deref(&self) -> &Self::Target {
&self.size
}
}