pub enum BlackholeDevice {}Expand description
Blackhole device domain.
Trait Implementations§
Source§impl Clone for BlackholeDevice
impl Clone for BlackholeDevice
Source§fn clone(&self) -> BlackholeDevice
fn clone(&self) -> BlackholeDevice
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a, BT, L> DeviceCollectionContext<BlackholeDevice, BT> for CoreCtx<'a, BT, L>where
BT: BindingsTypes,
L: LockBefore<DeviceLayerState>,
impl<'a, BT, L> DeviceCollectionContext<BlackholeDevice, BT> for CoreCtx<'a, BT, L>where
BT: BindingsTypes,
L: LockBefore<DeviceLayerState>,
Source§fn insert(&mut self, device: BlackholePrimaryDeviceId<BT>)
fn insert(&mut self, device: BlackholePrimaryDeviceId<BT>)
Adds
device to the device collection.Source§fn remove(
&mut self,
device: &BlackholeDeviceId<BT>,
) -> Option<BlackholePrimaryDeviceId<BT>>
fn remove( &mut self, device: &BlackholeDeviceId<BT>, ) -> Option<BlackholePrimaryDeviceId<BT>>
Removes
device from the collection, if it exists.Source§impl<'a, BT, L> DeviceConfigurationContext<BlackholeDevice> for CoreCtx<'a, BT, L>where
BT: BindingsTypes,
impl<'a, BT, L> DeviceConfigurationContext<BlackholeDevice> for CoreCtx<'a, BT, L>where
BT: BindingsTypes,
Source§fn with_nud_config<I: Ip, O, F: FnOnce(Option<&NudUserConfig>) -> O>(
&mut self,
_device_id: &Self::DeviceId,
f: F,
) -> O
fn with_nud_config<I: Ip, O, F: FnOnce(Option<&NudUserConfig>) -> O>( &mut self, _device_id: &Self::DeviceId, f: F, ) -> O
Calls the callback with a mutable reference to the NUD user
configuration for IP version
I. Read moreSource§fn with_nud_config_mut<I: Ip, O, F: FnOnce(Option<&mut NudUserConfig>) -> O>(
&mut self,
_device_id: &Self::DeviceId,
f: F,
) -> O
fn with_nud_config_mut<I: Ip, O, F: FnOnce(Option<&mut NudUserConfig>) -> O>( &mut self, _device_id: &Self::DeviceId, f: F, ) -> O
Calls the callback with a mutable reference to the NUD user
configuration for IP version
I. Read moreSource§impl<BT: BindingsTypes, L> DeviceIdContext<BlackholeDevice> for CoreCtx<'_, BT, L>
impl<BT: BindingsTypes, L> DeviceIdContext<BlackholeDevice> for CoreCtx<'_, BT, L>
Source§type DeviceId = BaseDeviceId<BlackholeDevice, BT>
type DeviceId = BaseDeviceId<BlackholeDevice, BT>
The type of device IDs.
Source§type WeakDeviceId = BaseWeakDeviceId<BlackholeDevice, BT>
type WeakDeviceId = BaseWeakDeviceId<BlackholeDevice, BT>
The type of weakly referenced device IDs.
Source§impl DeviceStateSpec for BlackholeDevice
impl DeviceStateSpec for BlackholeDevice
Source§const IS_LOOPBACK: bool = false
const IS_LOOPBACK: bool = false
Marker for loopback devices.
Source§const DEBUG_TYPE: &'static str = "Blackhole"
const DEBUG_TYPE: &'static str = "Blackhole"
Marker used to print debug information for device identifiers.
Source§type State<BT: DeviceLayerTypes> = BlackholeDeviceState
type State<BT: DeviceLayerTypes> = BlackholeDeviceState
The device state.
Source§type External<BT: DeviceLayerTypes> = <BT as DeviceLayerStateTypes>::BlackholeDeviceState
type External<BT: DeviceLayerTypes> = <BT as DeviceLayerStateTypes>::BlackholeDeviceState
The external (bindings) state.
Source§type CreationProperties = ()
type CreationProperties = ()
Properties given to device creation.
Source§type Counters = BlackholeDeviceCounters
type Counters = BlackholeDeviceCounters
Device-specific counters.
Source§type TimerId<D: WeakDeviceIdentifier> = Infallible
type TimerId<D: WeakDeviceIdentifier> = Infallible
The timer identifier required by this device state.
Source§fn new_device_state<CC, BC>(
_bindings_ctx: &mut BC,
_self_id: <CC as DeviceIdContext<BlackholeDevice>>::WeakDeviceId,
_properties: <BlackholeDevice as DeviceStateSpec>::CreationProperties,
) -> <BlackholeDevice as DeviceStateSpec>::State<BC>where
CC: CoreTimerContext<<BlackholeDevice as DeviceStateSpec>::TimerId<<CC as DeviceIdContext<BlackholeDevice>>::WeakDeviceId>, BC> + DeviceIdContext<BlackholeDevice>,
BC: DeviceLayerTypes + TimerContext,
fn new_device_state<CC, BC>(
_bindings_ctx: &mut BC,
_self_id: <CC as DeviceIdContext<BlackholeDevice>>::WeakDeviceId,
_properties: <BlackholeDevice as DeviceStateSpec>::CreationProperties,
) -> <BlackholeDevice as DeviceStateSpec>::State<BC>where
CC: CoreTimerContext<<BlackholeDevice as DeviceStateSpec>::TimerId<<CC as DeviceIdContext<BlackholeDevice>>::WeakDeviceId>, BC> + DeviceIdContext<BlackholeDevice>,
BC: DeviceLayerTypes + TimerContext,
Creates a new device state from the given properties.
impl Copy for BlackholeDevice
impl Device for BlackholeDevice
Auto Trait Implementations§
impl Freeze for BlackholeDevice
impl RefUnwindSafe for BlackholeDevice
impl Send for BlackholeDevice
impl Sync for BlackholeDevice
impl Unpin for BlackholeDevice
impl UnwindSafe for BlackholeDevice
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<CC, BC, Meta> RecvFrameContext<Meta, BC> for CCwhere
Meta: ReceivableFrameMeta<CC, BC>,
impl<CC, BC, Meta> RecvFrameContext<Meta, BC> for CCwhere
Meta: ReceivableFrameMeta<CC, BC>,
Source§impl<CC, BC, Meta> SendFrameContext<BC, Meta> for CCwhere
Meta: SendableFrameMeta<CC, BC>,
impl<CC, BC, Meta> SendFrameContext<BC, Meta> for CCwhere
Meta: SendableFrameMeta<CC, BC>,
Source§fn send_frame<S>(
&mut self,
bindings_ctx: &mut BC,
metadata: Meta,
frame: S,
) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, S>>
fn send_frame<S>( &mut self, bindings_ctx: &mut BC, metadata: Meta, frame: S, ) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, S>>
Send a frame. Read more
Source§impl<BC, S, Meta, DeviceId> SendableFrameMeta<FakeCoreCtx<S, Meta, DeviceId>, BC> for Meta
impl<BC, S, Meta, DeviceId> SendableFrameMeta<FakeCoreCtx<S, Meta, DeviceId>, BC> for Meta
Source§fn send_meta<SS>(
self,
core_ctx: &mut FakeCoreCtx<S, Meta, DeviceId>,
bindings_ctx: &mut BC,
frame: SS,
) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, SS>>
fn send_meta<SS>( self, core_ctx: &mut FakeCoreCtx<S, Meta, DeviceId>, bindings_ctx: &mut BC, frame: SS, ) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, SS>>
Sends this frame metadata to the provided contexts.
Source§impl<Meta, BC> SendableFrameMeta<FakeFrameCtx<Meta>, BC> for Meta
impl<Meta, BC> SendableFrameMeta<FakeFrameCtx<Meta>, BC> for Meta
Source§fn send_meta<S>(
self,
core_ctx: &mut FakeFrameCtx<Meta>,
_bindings_ctx: &mut BC,
frame: S,
) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, S>>
fn send_meta<S>( self, core_ctx: &mut FakeFrameCtx<Meta>, _bindings_ctx: &mut BC, frame: S, ) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, S>>
Sends this frame metadata to the provided contexts.
Source§impl<Id, CC, BC> TimerHandler<BC, Id> for CCwhere
BC: TimerBindingsTypes,
Id: HandleableTimer<CC, BC>,
impl<Id, CC, BC> TimerHandler<BC, Id> for CCwhere
BC: TimerBindingsTypes,
Id: HandleableTimer<CC, BC>,
Source§fn handle_timer(
&mut self,
bindings_ctx: &mut BC,
dispatch: Id,
timer: <BC as TimerBindingsTypes>::UniqueTimerId,
)
fn handle_timer( &mut self, bindings_ctx: &mut BC, dispatch: Id, timer: <BC as TimerBindingsTypes>::UniqueTimerId, )
Handle a timer firing. Read more
Source§impl<L, T> UnlockedAccess<L> for Twhere
L: UnlockedAccessMarkerFor<T>,
impl<L, T> UnlockedAccess<L> for Twhere
L: UnlockedAccessMarkerFor<T>,
Source§type Data = <L as UnlockedAccessMarkerFor<T>>::Data
type Data = <L as UnlockedAccessMarkerFor<T>>::Data
The type of state being accessed.
Source§type Guard<'l> = &'l <L as UnlockedAccessMarkerFor<T>>::Data
where
T: 'l
type Guard<'l> = &'l <L as UnlockedAccessMarkerFor<T>>::Data where T: 'l
A guard providing read access to the data.
Source§fn access(&self) -> <T as UnlockedAccess<L>>::Guard<'_>
fn access(&self) -> <T as UnlockedAccess<L>>::Guard<'_>
How to access the state.