Struct capsules_extra::net::ieee802154::Header

source ·
pub struct Header<'a> {
Show 14 fields pub frame_type: FrameType, pub frame_pending: bool, pub ack_requested: bool, pub version: FrameVersion, pub seq: Option<u8>, pub dst_pan: Option<PanID>, pub dst_addr: Option<MacAddress>, pub src_pan: Option<PanID>, pub src_addr: Option<MacAddress>, pub security: Option<Security>, pub header_ies: [HeaderIE<'a>; 5], pub header_ies_len: usize, pub payload_ies: [PayloadIE<'a>; 5], pub payload_ies_len: usize,
}

Fields§

§frame_type: FrameType§frame_pending: bool§ack_requested: bool§version: FrameVersion§seq: Option<u8>§dst_pan: Option<PanID>§dst_addr: Option<MacAddress>§src_pan: Option<PanID>§src_addr: Option<MacAddress>§security: Option<Security>§header_ies: [HeaderIE<'a>; 5]§header_ies_len: usize§payload_ies: [PayloadIE<'a>; 5]§payload_ies_len: usize

Implementations§

source§

impl Header<'_>

source

pub fn encode(&self, buf: &mut [u8], has_payload: bool) -> SResult<usize>

source

pub fn encode_addressing(&self, buf: &mut [u8]) -> SResult<bool>

source

pub fn decode<'b>( buf: &'b [u8], unsecured: bool, ) -> SResult<(Header<'b>, usize)>

Decodes an IEEE 802.15.4 MAC header from a byte slice, where the MAC header may contain slices into the given byte slice to represent undissected information elements (IE). unsecured controls whether or not payload IEs (which are encrypted if the frame has not yet been unsecured) can be parsed.

source

pub fn decode_addressing( buf: &[u8], version: FrameVersion, dst_mode: AddressMode, src_mode: AddressMode, pan_id_compression: bool, ) -> SResult<(Option<PanID>, Option<MacAddress>, Option<PanID>, Option<MacAddress>)>

Trait Implementations§

source§

impl<'a> Clone for Header<'a>

source§

fn clone(&self) -> Header<'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a> Debug for Header<'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a> PartialEq for Header<'a>

source§

fn eq(&self, other: &Header<'a>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<'a> Copy for Header<'a>

source§

impl<'a> Eq for Header<'a>

source§

impl<'a> StructuralPartialEq for Header<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for Header<'a>

§

impl<'a> RefUnwindSafe for Header<'a>

§

impl<'a> Send for Header<'a>

§

impl<'a> Sync for Header<'a>

§

impl<'a> Unpin for Header<'a>

§

impl<'a> UnwindSafe for Header<'a>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> CloneToUninit for T
where T: Copy,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.