pub struct DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: SectionSyntaxPayloadParser,{ /* private fields */ }
Expand description
A wrapper around some other implementation of SectionSyntaxPayloadParser
that passes-through
section data, unless the TableSyntaxHeader
indicates a version_number which is the same as
the last data that was passed though.
This avoids the underlying code needing to re-parse duplicate copies of the section, which are usually inserted periodically in the Transport Stream.
Implementations
sourceimpl<SSPP> DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: SectionSyntaxPayloadParser,
impl<SSPP> DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: SectionSyntaxPayloadParser,
pub fn new(inner: SSPP) -> DedupSectionSyntaxPayloadParser<SSPP>
Trait Implementations
sourceimpl<SSPP> SectionSyntaxPayloadParser for DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: SectionSyntaxPayloadParser,
impl<SSPP> SectionSyntaxPayloadParser for DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: SectionSyntaxPayloadParser,
type Context = <SSPP as SectionSyntaxPayloadParser>::Context
sourcefn start_syntax_section<'a>(
&mut self,
ctx: &mut Self::Context,
header: &SectionCommonHeader,
table_syntax_header: &TableSyntaxHeader<'_>,
data: &'a [u8]
)
fn start_syntax_section<'a>(
&mut self,
ctx: &mut Self::Context,
header: &SectionCommonHeader,
table_syntax_header: &TableSyntaxHeader<'_>,
data: &'a [u8]
)
NB the
data
buffer passed to will include the bytes which are represented by header
and table_syntax_header
(in order that the called code can check any CRC that covers the
whole section). Read morefn continue_syntax_section<'a>(&mut self, ctx: &mut Self::Context, data: &'a [u8])
fn reset(&mut self)
Auto Trait Implementations
impl<SSPP> RefUnwindSafe for DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: RefUnwindSafe,
impl<SSPP> Send for DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: Send,
impl<SSPP> Sync for DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: Sync,
impl<SSPP> Unpin for DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: Unpin,
impl<SSPP> UnwindSafe for DedupSectionSyntaxPayloadParser<SSPP>where
SSPP: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more