Skip to main content

UserDataBlock

Enum UserDataBlock 

Source
#[non_exhaustive]
pub enum UserDataBlock<'a> { ResetAtApplicationLevel { subcode: ApplicationResetSubcode, }, FixedDataStructure { identification_number: IdentificationNumber, access_number: u8, status: StatusField, device_type_and_unit: u16, counter1: Counter, counter2: Counter, }, VariableDataStructureWithLongTplHeader { extended_link_layer: Option<ExtendedLinkLayer>, long_tpl_header: LongTplHeader, variable_data_block: &'a [u8], }, VariableDataStructureWithShortTplHeader { extended_link_layer: Option<ExtendedLinkLayer>, short_tpl_header: ShortTplHeader, variable_data_block: &'a [u8], }, VariableDataStructureWithoutTplHeader { extended_link_layer: Option<ExtendedLinkLayer>, variable_data_block: &'a [u8], }, }

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

ResetAtApplicationLevel

§

FixedDataStructure

Fields

§identification_number: IdentificationNumber
§access_number: u8
§device_type_and_unit: u16
§counter1: Counter
§counter2: Counter
§

VariableDataStructureWithLongTplHeader

Fields

§extended_link_layer: Option<ExtendedLinkLayer>
§long_tpl_header: LongTplHeader
§variable_data_block: &'a [u8]
§

VariableDataStructureWithShortTplHeader

Fields

§extended_link_layer: Option<ExtendedLinkLayer>
§short_tpl_header: ShortTplHeader
§variable_data_block: &'a [u8]
§

VariableDataStructureWithoutTplHeader

Fields

§extended_link_layer: Option<ExtendedLinkLayer>
§variable_data_block: &'a [u8]

Implementations§

Source§

impl<'a> UserDataBlock<'a>

Source

pub fn data_records(&self) -> Option<DataRecords<'_>>

Returns an iterator over the variable data records in this block.

Fixed data structures, control messages, and encrypted payloads do not expose records. Decrypt an encrypted payload before parsing its records.

Source

pub fn is_encrypted(&self) -> Option<bool>

Source

pub fn variable_data_len(&self) -> usize

Returns the length of the variable data block (encrypted payload size)

Trait Implementations§

Source§

impl<'a> Debug for UserDataBlock<'a>

Source§

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

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

impl<'a> PartialEq for UserDataBlock<'a>

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl<'a> StructuralPartialEq for UserDataBlock<'a>

Source§

impl<'a> TryFrom<&'a [u8]> for UserDataBlock<'a>

Source§

type Error = ApplicationLayerError

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

fn try_from(data: &'a [u8]) -> Result<Self, ApplicationLayerError>

Performs the conversion.

Auto Trait Implementations§

§

impl<'a> Freeze for UserDataBlock<'a>

§

impl<'a> RefUnwindSafe for UserDataBlock<'a>

§

impl<'a> Send for UserDataBlock<'a>

§

impl<'a> Sync for UserDataBlock<'a>

§

impl<'a> Unpin for UserDataBlock<'a>

§

impl<'a> UnsafeUnpin for UserDataBlock<'a>

§

impl<'a> UnwindSafe for UserDataBlock<'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> 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>,

Source§

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>,

Source§

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.