Trait ip::traits::AfiClass

source ·
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§

source

type Address: Address

The type representing IP address values of this address family class.

source

type Netmask: Netmask

The type representing IP netmask values of this address family class.

source

type Hostmask: Hostmask

The type representing IP hostmask values of this address family class.

source

type Bitmask: Bitmask

The type representing bitmask values of this address family class.

source

type PrefixLength: PrefixLength + Into<Self::Netmask> + Into<Self::Hostmask>

The type representing IP prefix-length values of this address family class.

source

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.

source

type Interface: Interface<Address = Self::Address, Prefix = Self::Prefix, PrefixLength = Self::PrefixLength>

The type representing IP interface values of this address family class.

source

type PrefixRange: PrefixRange<Prefix = Self::Prefix, Length = Self::PrefixLength>

The type representing IP prefix range values of this address family class.

source

type PrefixSet: for<'a> PrefixSet<'a, Prefix = Self::Prefix, Range = Self::PrefixRange>

Available on crate feature std only.

The type representing IP prefix-sets of this address family class.

Required Methods§

source

fn as_afi_class() -> AfiClass

Get the any::AfiClass variant associated with Self.

Implementors§