pub trait DadContext<I: IpDeviceIpExt, BC: DadBindingsTypes>:
IpDeviceAddressIdContext<I>
+ DeviceIdContext<AnyDevice>
+ CoreTimerContext<DadTimerId<I, Self::WeakDeviceId, Self::WeakAddressId>, BC> {
type DadAddressCtx<'a>: DadAddressContext<I, BC, DeviceId = Self::DeviceId, AddressId = Self::AddressId>;
// Required methods
fn with_dad_state<O, F: FnOnce(DadStateRef<'_, I, Self::DadAddressCtx<'_>, BC>) -> O>(
&mut self,
device_id: &Self::DeviceId,
addr: &Self::AddressId,
cb: F,
) -> O;
fn send_dad_probe(
&mut self,
bindings_ctx: &mut BC,
device_id: &Self::DeviceId,
data: I::SendData,
);
}
Expand description
The execution context for DAD.
Required Associated Types§
Sourcetype DadAddressCtx<'a>: DadAddressContext<I, BC, DeviceId = Self::DeviceId, AddressId = Self::AddressId>
type DadAddressCtx<'a>: DadAddressContext<I, BC, DeviceId = Self::DeviceId, AddressId = Self::AddressId>
The inner address context.
Required Methods§
Sourcefn with_dad_state<O, F: FnOnce(DadStateRef<'_, I, Self::DadAddressCtx<'_>, BC>) -> O>(
&mut self,
device_id: &Self::DeviceId,
addr: &Self::AddressId,
cb: F,
) -> O
fn with_dad_state<O, F: FnOnce(DadStateRef<'_, I, Self::DadAddressCtx<'_>, BC>) -> O>( &mut self, device_id: &Self::DeviceId, addr: &Self::AddressId, cb: F, ) -> O
Calls the function with the DAD state associated with the address.
Sourcefn send_dad_probe(
&mut self,
bindings_ctx: &mut BC,
device_id: &Self::DeviceId,
data: I::SendData,
)
fn send_dad_probe( &mut self, bindings_ctx: &mut BC, device_id: &Self::DeviceId, data: I::SendData, )
Sends a DAD probe.
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.