pub trait IpDeviceAddAddressContext<I: IpDeviceIpExt, BT: IpDeviceStateBindingsTypes>: IpDeviceAddressContext<I, BT> {
// Required method
fn add_ip_address(
&mut self,
device_id: &Self::DeviceId,
addr: AddrSubnet<I::Addr, I::AssignedWitness>,
config: I::AddressConfig<BT::Instant>,
) -> Result<Self::AddressId, ExistsError>;
}Expand description
A trait abstracting the ability to add an IP address to a device instance.
This trait is only accessible to callers in this crate via
WithIpDeviceConfigurationMutInner, which guarantees that adding an
address can only happen under exclusive device configuration access.
Required Methods§
Sourcefn add_ip_address(
&mut self,
device_id: &Self::DeviceId,
addr: AddrSubnet<I::Addr, I::AssignedWitness>,
config: I::AddressConfig<BT::Instant>,
) -> Result<Self::AddressId, ExistsError>
fn add_ip_address( &mut self, device_id: &Self::DeviceId, addr: AddrSubnet<I::Addr, I::AssignedWitness>, config: I::AddressConfig<BT::Instant>, ) -> Result<Self::AddressId, ExistsError>
Adds an IP address for the device.
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.