pub enum FrameDestination {
Individual {
local: bool,
},
Multicast,
Broadcast,
}
Expand description
The type of address used as the destination address in a device-layer frame.
FrameDestination
is used to implement RFC 1122 section 3.2.2 and RFC 4443
section 2.4.e, which govern when to avoid sending an ICMP error message for
ICMP and ICMPv6 respectively.
Variants§
Individual
A unicast address - one which is neither multicast nor broadcast.
Multicast
A multicast address; if the addressing scheme supports overlap between
multicast and broadcast, then broadcast addresses should use the
Broadcast
variant.
Broadcast
A broadcast address; if the addressing scheme supports overlap between
multicast and broadcast, then broadcast addresses should use the
Broadcast
variant.
Implementations§
Source§impl FrameDestination
impl FrameDestination
Sourcepub fn is_broadcast(self) -> bool
pub fn is_broadcast(self) -> bool
Is this FrameDestination::Broadcast
?
Sourcepub fn from_dest(destination: Mac, local_mac: Mac) -> FrameDestination
pub fn from_dest(destination: Mac, local_mac: Mac) -> FrameDestination
Creates a FrameDestination
from a mac
and local_mac
destination.
Trait Implementations§
Source§impl Clone for FrameDestination
impl Clone for FrameDestination
Source§fn clone(&self) -> FrameDestination
fn clone(&self) -> FrameDestination
Returns a copy 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 Debug for FrameDestination
impl Debug for FrameDestination
Source§impl From<BroadcastAddr<Mac>> for FrameDestination
impl From<BroadcastAddr<Mac>> for FrameDestination
Source§fn from(_value: BroadcastAddr<Mac>) -> FrameDestination
fn from(_value: BroadcastAddr<Mac>) -> FrameDestination
Converts to this type from the input type.
Source§impl From<MulticastAddr<Mac>> for FrameDestination
impl From<MulticastAddr<Mac>> for FrameDestination
Source§fn from(_value: MulticastAddr<Mac>) -> FrameDestination
fn from(_value: MulticastAddr<Mac>) -> FrameDestination
Converts to this type from the input type.
Source§impl PartialEq for FrameDestination
impl PartialEq for FrameDestination
impl Copy for FrameDestination
impl Eq for FrameDestination
impl StructuralPartialEq for FrameDestination
Auto Trait Implementations§
impl Freeze for FrameDestination
impl RefUnwindSafe for FrameDestination
impl Send for FrameDestination
impl Sync for FrameDestination
impl Unpin for FrameDestination
impl UnwindSafe for FrameDestination
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,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)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>>where
S: Serializer,
<S as Serializer>::Buffer: BufferMut,
fn send_frame<S>(
&mut self,
bindings_ctx: &mut BC,
metadata: Meta,
frame: S,
) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, S>>where
S: Serializer,
<S as Serializer>::Buffer: BufferMut,
Send a frame. Read more
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.