pub trait SlaacContext<BC: SlaacBindingsContext<Self::DeviceId>>: DeviceIdContext<AnyDevice> {
type SlaacAddrs<'a>: SlaacAddresses<BC> + CounterContext<SlaacCounters> + 'a;
// Required method
fn with_slaac_addrs_mut_and_configs<O, F: FnOnce(SlaacAddrsMutAndConfig<'_, BC, Self::SlaacAddrs<'_>>, &mut SlaacState<BC>) -> O>(
&mut self,
device_id: &Self::DeviceId,
cb: F,
) -> O;
// Provided method
fn with_slaac_addrs_mut<O, F: FnOnce(&mut Self::SlaacAddrs<'_>, &mut SlaacState<BC>) -> O>(
&mut self,
device_id: &Self::DeviceId,
cb: F,
) -> O { ... }
}
Expand description
The execution context for SLAAC.
Required Associated Types§
Sourcetype SlaacAddrs<'a>: SlaacAddresses<BC> + CounterContext<SlaacCounters> + 'a
type SlaacAddrs<'a>: SlaacAddresses<BC> + CounterContext<SlaacCounters> + 'a
The inner SlaacAddresses
impl.
Required Methods§
Sourcefn with_slaac_addrs_mut_and_configs<O, F: FnOnce(SlaacAddrsMutAndConfig<'_, BC, Self::SlaacAddrs<'_>>, &mut SlaacState<BC>) -> O>(
&mut self,
device_id: &Self::DeviceId,
cb: F,
) -> O
fn with_slaac_addrs_mut_and_configs<O, F: FnOnce(SlaacAddrsMutAndConfig<'_, BC, Self::SlaacAddrs<'_>>, &mut SlaacState<BC>) -> O>( &mut self, device_id: &Self::DeviceId, cb: F, ) -> O
Calls cb
with access to the SLAAC addresses and configuration for
device_id
.
Provided Methods§
Sourcefn with_slaac_addrs_mut<O, F: FnOnce(&mut Self::SlaacAddrs<'_>, &mut SlaacState<BC>) -> O>(
&mut self,
device_id: &Self::DeviceId,
cb: F,
) -> O
fn with_slaac_addrs_mut<O, F: FnOnce(&mut Self::SlaacAddrs<'_>, &mut SlaacState<BC>) -> O>( &mut self, device_id: &Self::DeviceId, cb: F, ) -> O
Calls cb
with access to the SLAAC addresses for device_id
.
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.