Trait netstack3_device::queue::ReceiveDequeContext
source · pub trait ReceiveDequeContext<D: Device, BC>: ReceiveQueueTypes<D, BC> {
type ReceiveQueueCtx<'a>: ReceiveQueueContext<D, BC, Meta = Self::Meta, Buffer = Self::Buffer, DeviceId = Self::DeviceId> + ReceiveDequeFrameContext<D, BC, Meta = Self::Meta, Buffer = Self::Buffer, DeviceId = Self::DeviceId>;
// Required method
fn with_dequed_frames_and_rx_queue_ctx<O, F: FnOnce(&mut DequeueState<Self::Meta, Self::Buffer>, &mut Self::ReceiveQueueCtx<'_>) -> O>(
&mut self,
device_id: &Self::DeviceId,
cb: F,
) -> O;
}
Expand description
The core execution context for dequeuing frames from the receive queue.
Required Associated Types§
sourcetype ReceiveQueueCtx<'a>: ReceiveQueueContext<D, BC, Meta = Self::Meta, Buffer = Self::Buffer, DeviceId = Self::DeviceId> + ReceiveDequeFrameContext<D, BC, Meta = Self::Meta, Buffer = Self::Buffer, DeviceId = Self::DeviceId>
type ReceiveQueueCtx<'a>: ReceiveQueueContext<D, BC, Meta = Self::Meta, Buffer = Self::Buffer, DeviceId = Self::DeviceId> + ReceiveDequeFrameContext<D, BC, Meta = Self::Meta, Buffer = Self::Buffer, DeviceId = Self::DeviceId>
The inner dequeueing context.
Required Methods§
sourcefn with_dequed_frames_and_rx_queue_ctx<O, F: FnOnce(&mut DequeueState<Self::Meta, Self::Buffer>, &mut Self::ReceiveQueueCtx<'_>) -> O>(
&mut self,
device_id: &Self::DeviceId,
cb: F,
) -> O
fn with_dequed_frames_and_rx_queue_ctx<O, F: FnOnce(&mut DequeueState<Self::Meta, Self::Buffer>, &mut Self::ReceiveQueueCtx<'_>) -> O>( &mut self, device_id: &Self::DeviceId, cb: F, ) -> O
Calls the function with the RX deque state and the RX queue context.
Object Safety§
This trait is not object safe.