pub trait AfiClass:
Copy
+ Debug
+ Hash
+ Ord {
type Address: Address;
type Netmask: Netmask;
type Hostmask: Hostmask;
type Bitmask: Bitmask;
type PrefixLength: PrefixLength + Into<Self::Netmask> + Into<Self::Hostmask>;
type Prefix: Prefix<Address = Self::Address, Length = Self::PrefixLength, Netmask = Self::Netmask> + Into<Self::PrefixRange>;
type Interface: Interface<Address = Self::Address, Prefix = Self::Prefix, PrefixLength = Self::PrefixLength>;
type PrefixRange: PrefixRange<Prefix = Self::Prefix, Length = Self::PrefixLength>;
type PrefixSet: for<'a> PrefixSet<'a, Prefix = Self::Prefix, Range = Self::PrefixRange>;
// Required method
fn as_afi_class() -> AfiClass;
}Expand description
Provides an interface for describing a class of IP address families.
Required Associated Types§
Sourcetype PrefixLength: PrefixLength + Into<Self::Netmask> + Into<Self::Hostmask>
type PrefixLength: PrefixLength + Into<Self::Netmask> + Into<Self::Hostmask>
The type representing IP prefix-length values of this address family class.
Sourcetype Prefix: Prefix<Address = Self::Address, Length = Self::PrefixLength, Netmask = Self::Netmask> + Into<Self::PrefixRange>
type Prefix: Prefix<Address = Self::Address, Length = Self::PrefixLength, Netmask = Self::Netmask> + Into<Self::PrefixRange>
The type representing IP prefix values of this address family class.
Sourcetype Interface: Interface<Address = Self::Address, Prefix = Self::Prefix, PrefixLength = Self::PrefixLength>
type Interface: Interface<Address = Self::Address, Prefix = Self::Prefix, PrefixLength = Self::PrefixLength>
The type representing IP interface values of this address family class.
Sourcetype PrefixRange: PrefixRange<Prefix = Self::Prefix, Length = Self::PrefixLength>
type PrefixRange: PrefixRange<Prefix = Self::Prefix, Length = Self::PrefixLength>
The type representing IP prefix range values of this address family class.
Sourcetype PrefixSet: for<'a> PrefixSet<'a, Prefix = Self::Prefix, Range = Self::PrefixRange>
Available on crate feature std only.
type PrefixSet: for<'a> PrefixSet<'a, Prefix = Self::Prefix, Range = Self::PrefixRange>
std only.The type representing IP prefix-sets of this address family class.
Required Methods§
Sourcefn as_afi_class() -> AfiClass
fn as_afi_class() -> AfiClass
Get the any::AfiClass variant associated with Self.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.