pub trait IpAddressId<A: IpAddress>:
Clone
+ Eq
+ Debug
+ Hash {
type Weak: WeakIpAddressId<A>;
// Required methods
fn downgrade(&self) -> Self::Weak;
fn addr(&self) -> IpDeviceAddr<A>;
fn addr_sub(
&self,
) -> AddrSubnet<A, <A::Version as AssignedAddrIpExt>::AssignedWitness>
where A::Version: AssignedAddrIpExt;
}
Expand description
An IP address ID.
Required Associated Types§
Sourcetype Weak: WeakIpAddressId<A>
type Weak: WeakIpAddressId<A>
The weak version of this ID.
Required Methods§
Sourcefn addr(&self) -> IpDeviceAddr<A>
fn addr(&self) -> IpDeviceAddr<A>
Returns the address this ID represents.
Sourcefn addr_sub(
&self,
) -> AddrSubnet<A, <A::Version as AssignedAddrIpExt>::AssignedWitness>where
A::Version: AssignedAddrIpExt,
fn addr_sub(
&self,
) -> AddrSubnet<A, <A::Version as AssignedAddrIpExt>::AssignedWitness>where
A::Version: AssignedAddrIpExt,
Returns the address subnet this ID represents.
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.