#[repr(transparent)]
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
pub struct ArpHardwareType(u16);
impl ArpHardwareType {
pub const ETHERNET: Self = Self(1);
#[inline]
pub const fn new(raw: u16) -> Self {
Self(raw)
}
#[inline]
pub const fn raw(self) -> u16 {
self.0
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
pub struct ArpProtocolType(u16);
impl ArpProtocolType {
pub const IPV4: Self = Self(0x0800);
#[inline]
pub const fn new(raw: u16) -> Self {
Self(raw)
}
#[inline]
pub const fn raw(self) -> u16 {
self.0
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
pub struct ArpOperation(u16);
impl ArpOperation {
pub const REQUEST: Self = Self(1);
pub const REPLY: Self = Self(2);
#[inline]
pub const fn new(raw: u16) -> Self {
Self(raw)
}
#[inline]
pub const fn raw(self) -> u16 {
self.0
}
}