pub trait InternetProtocolNetworkAddress: Sized + Debug + Display + PartialOrd + Ord + PartialEq + Eq + Hash + Serialize + Clone
{
type HostAddress: InternetProtocolHostAddress;
type MaskBits: InternetProtocolMaskBits;
#[inline(always)]
fn network(&self) -> &Self::HostAddress;
#[inline(always)]
fn mask_bits(&self) -> Self::MaskBits;
#[inline(always)]
fn mask_bits_as_depth_u32(&self) -> u32
{
self.mask_bits_as_depth() as u32
}
#[inline(always)]
fn mask_bits_as_depth(&self) -> u8
{
self.mask_bits().as_depth()
}
#[inline(always)]
fn contains(&self, internet_protocol_host_address: Self::HostAddress) -> bool;
#[inline(always)]
fn new(network: Self::HostAddress, mask_bits: <<Self as InternetProtocolNetworkAddress>::HostAddress as InternetProtocolHostAddress>::MaskBits) -> Self;
}