#[non_exhaustive]pub struct ProtectionMessageSection<'a> {
pub table_id_extension: u16,
pub version_number: u8,
pub current_next_indicator: bool,
pub section_number: u8,
pub last_section_number: u8,
pub body: ProtectionMessageBody<'a>,
pub bits: SectionBits,
}Expand description
Protection message section (TS 102 809 §9; Tables 42 / 51).
Typed fields cover the common section header; ProtectionMessageSection::body
carries the typed, discriminated body.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.table_id_extension: u16table_id_extension — authentication_group_id for authentication
messages, trust_message_id (0x0100) for certificate collections.
version_number: u85-bit version_number.
current_next_indicator: boolcurrent_next_indicator bit (spec mandates 1).
section_number: u8section_number.
last_section_number: u8last_section_number.
body: ProtectionMessageBody<'a>Discriminated body, selected by table_id_extension.
bits: SectionBitsHeader bit fields (reserved_future_use, reserved(2) x2; default
SectionBits::dvb).
Implementations§
Trait Implementations§
Source§impl<'a> Clone for ProtectionMessageSection<'a>
impl<'a> Clone for ProtectionMessageSection<'a>
Source§impl<'a> Debug for ProtectionMessageSection<'a>
impl<'a> Debug for ProtectionMessageSection<'a>
impl<'a> Eq for ProtectionMessageSection<'a>
Source§impl<'a> From<ProtectionMessageSection<'a>> for AnyTableSection<'a>
impl<'a> From<ProtectionMessageSection<'a>> for AnyTableSection<'a>
Source§fn from(t: ProtectionMessageSection<'a>) -> Self
fn from(t: ProtectionMessageSection<'a>) -> Self
Converts to this type from the input type.
Source§impl<'a> Parse<'a> for ProtectionMessageSection<'a>
impl<'a> Parse<'a> for ProtectionMessageSection<'a>
Source§impl<'a> PartialEq for ProtectionMessageSection<'a>
impl<'a> PartialEq for ProtectionMessageSection<'a>
Source§impl<'a> Serialize for ProtectionMessageSection<'a>
Available on crate feature serde only.
impl<'a> Serialize for ProtectionMessageSection<'a>
Available on crate feature
serde only.Source§impl Serialize for ProtectionMessageSection<'_>
impl Serialize for ProtectionMessageSection<'_>
Source§type Error = Error
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
fn serialized_len(&self) -> usize
Number of bytes
serialize_into will write.Source§fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>
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 try_to_bytes(&self) -> Result<Vec<u8>, Self::Error>
fn try_to_bytes(&self) -> Result<Vec<u8>, Self::Error>
Allocate a
Vec and serialize into it, returning the serializer’s error instead of
panicking. This is the only
allocate-and-serialize entry point: there is deliberately no panicking
to_bytes (hand-built values, or values assembled from damaged wire data,
can violate a wire constraint, so the error must reach the caller).impl<'a> StructuralPartialEq for ProtectionMessageSection<'a>
Source§impl<'a> TableDef<'a> for ProtectionMessageSection<'a>
impl<'a> TableDef<'a> for ProtectionMessageSection<'a>
Source§impl<'yoke> Yokeable<'yoke> for ProtectionMessageSection<'static>
Available on crate feature yoke only.
impl<'yoke> Yokeable<'yoke> for ProtectionMessageSection<'static>
Available on crate feature
yoke only.Source§type Output = ProtectionMessageSection<'yoke>
type Output = ProtectionMessageSection<'yoke>
This type MUST be
Self with the 'static replaced with 'a, i.e. Self<'a>Source§fn transform_owned(self) -> Self::Output
fn transform_owned(self) -> Self::Output
Auto Trait Implementations§
impl<'a> Forget for ProtectionMessageSection<'a>
impl<'a> Freeze for ProtectionMessageSection<'a>
impl<'a> RefUnwindSafe for ProtectionMessageSection<'a>
impl<'a> Send for ProtectionMessageSection<'a>
impl<'a> Sync for ProtectionMessageSection<'a>
impl<'a> Unpin for ProtectionMessageSection<'a>
impl<'a> UnsafeUnpin for ProtectionMessageSection<'a>
impl<'a> UnwindSafe for ProtectionMessageSection<'a>
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