pub struct BufferCompactSyntaxParser<P>{ /* private fields */ }
Expand description

Implements CompactSyntaxPayloadParser so that any sections that cross TS-packet boundaries are collected into a single byte-buffer for easier parsing. In the common case that the section fits entirely in a single TS packet, the implementation is zero-copy.

Implementations§

source§

impl<P> BufferCompactSyntaxParser<P>

source

pub fn new(parser: P) -> BufferCompactSyntaxParser<P>

wraps the given WholeSectionSyntaxPayloadParser instance in a new BufferSectionSyntaxParser.

Trait Implementations§

source§

impl<P> CompactSyntaxPayloadParser for BufferCompactSyntaxParser<P>

§

type Context = <P as WholeCompactSyntaxPayloadParser>::Context

The type of the context object passed to all methods
source§

fn start_compact_section( &mut self, ctx: &mut Self::Context, header: &SectionCommonHeader, data: &[u8] )

NB the data buffer passed to will include the bytes which are represented by header (in order that the called code can check any CRC that covers the whole section).
source§

fn continue_compact_section(&mut self, ctx: &mut Self::Context, data: &[u8])

may be called to pass the implementation additional slices of section data, if the complete section was not already passed.
source§

fn reset(&mut self)

called if there is a problem in the transport stream that means any in-progress section data should be discarded.

Auto Trait Implementations§

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

§

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.