Skip to main content

UntSection

Struct UntSection 

Source
pub struct UntSection<'a> {
    pub action_type: UntActionType,
    pub oui_hash: u8,
    pub version_number: u8,
    pub current_next_indicator: bool,
    pub section_number: u8,
    pub last_section_number: u8,
    pub oui: u32,
    pub processing_order: u8,
    pub common_descriptors: DescriptorLoop<'a>,
    pub platforms: Vec<UntPlatform<'a>>,
}
Expand description

Update Notification Table (UNT), ETSI TS 102 006 v1.4.1 §9.4, Table 11.

The platform loop is unfolded into typed UntPlatform entries. The compatibilityDescriptor() within each entry is typed as CompatibilityDescriptor (ISO/IEC 13818-6 groupInfo form — not a standard SI tag/length descriptor).

Fields§

§action_type: UntActionType

Action type (Table 12): 0x01 = System Software Update, 0x80–0xFF user defined.

§oui_hash: u8

OUI hash: XOR of the three OUI bytes.

§version_number: u8

5-bit version_number of this sub-table.

§current_next_indicator: bool

current_next_indicator: true means currently applicable.

§section_number: u8

Index of this section within the sub-table.

§last_section_number: u8

Index of the last section in the sub-table.

§oui: u32

24-bit IEEE OUI (low 24 bits of u32).

§processing_order: u8

Processing order (Table 13).

§common_descriptors: DescriptorLoop<'a>

Body of common_descriptor_loop() — the bytes AFTER the 12-bit length field.

§platforms: Vec<UntPlatform<'a>>

Platform entries — unfolded per §9.4.2.2–9.4.2.4.

Trait Implementations§

Source§

impl<'a> Clone for UntSection<'a>

Source§

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

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl<'a> Debug for UntSection<'a>

Source§

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

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

impl<'a> Eq for UntSection<'a>

Source§

impl<'a> From<UntSection<'a>> for AnyTableSection<'a>

Source§

fn from(t: UntSection<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> Parse<'a> for UntSection<'a>

Source§

type Error = Error

The error type this implementer returns. Typically the enclosing crate’s Error enum.
Source§

fn parse(bytes: &'a [u8]) -> Result<Self>

Parse bytes as Self. Returns Err(Self::Error) on any protocol violation or buffer underrun.
Source§

impl<'a> PartialEq for UntSection<'a>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'a> Serialize for UntSection<'a>

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Serialize for UntSection<'_>

Source§

type Error = Error

The error type this implementer returns (usually the same as the corresponding Parse impl, but need not be).
Source§

fn serialized_len(&self) -> usize

Number of bytes serialize_into will write.
Source§

fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>

Write the serialised form into buf. Returns the number of bytes written (always equal to serialized_len()).
Source§

fn to_bytes(&self) -> Vec<u8>
where Self::Error: Debug,

Convenience: allocate a Vec and serialise into it. Read more
Source§

impl<'a> StructuralPartialEq for UntSection<'a>

Source§

impl<'a> TableDef<'a> for UntSection<'a>

Source§

const TABLE_ID_RANGES: &'static [(u8, u8)]

Inclusive (lo, hi) table_id ranges this type parses. Read more
Source§

const NAME: &'static str = "UPDATE_NOTIFICATION"

Spec name for diagnostics. SCREAMING_SNAKE, suffix-free: PROGRAM_ASSOCIATION, EVENT_INFORMATION, SERVICE_DESCRIPTION. Read more
Source§

impl<'a> Yokeable<'a> for UntSection<'static>

Source§

type Output = UntSection<'a>

This type MUST be Self with the 'static replaced with 'a, i.e. Self<'a>
Source§

fn transform(&'a self) -> &'a Self::Output

This method must cast self between &'a Self<'static> and &'a Self<'a>. Read more
Source§

fn transform_owned(self) -> Self::Output

This method must cast self between Self<'static> and Self<'a>. Read more
Source§

unsafe fn make(this: Self::Output) -> Self

This method can be used to cast away Self<'a>’s lifetime. Read more
Source§

fn transform_mut<F>(&'a mut self, f: F)
where F: 'static + for<'b> FnOnce(&'b mut Self::Output),

This method must cast self between &'a mut Self<'static> and &'a mut Self<'a>, and pass it to f. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for UntSection<'a>

§

impl<'a> RefUnwindSafe for UntSection<'a>

§

impl<'a> Send for UntSection<'a>

§

impl<'a> Sync for UntSection<'a>

§

impl<'a> Unpin for UntSection<'a>

§

impl<'a> UnsafeUnpin for UntSection<'a>

§

impl<'a> UnwindSafe for UntSection<'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§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

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

impl<T> DescriptorObject for T
where T: Debug + Any + Send + Sync + Serialize,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Borrow as &dyn Any so the caller can downcast to the concrete type.
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> ExtensionObject for T
where T: Debug + Any + Send + Sync + Serialize,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Borrow as &dyn Any so the caller can downcast to the concrete type.
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> Serialize for T
where T: Serialize + ?Sized,

Source§

fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>

Source§

fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>

Source§

impl<T> TableObject for T
where T: Debug + Any + Send + Sync + Serialize,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Borrow as &dyn Any so the caller can downcast to the concrete type.
Source§

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

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.