pub struct MoqTraceReader<R: Read> {
inner: R,
header: TraceHeader,
}Expand description
Streaming reader for .moqtrace files.
Validates the preamble and parses the header on construction. Events
are then read one at a time via read_event or
by iterating with into_iter.
Fields§
§inner: R§header: TraceHeaderImplementations§
Source§impl<R: Read> MoqTraceReader<R>
impl<R: Read> MoqTraceReader<R>
Sourcepub fn new(reader: R) -> Result<Self, MoqTraceError>
pub fn new(reader: R) -> Result<Self, MoqTraceError>
Open a reader, validating the preamble and parsing the header.
Sourcepub fn header(&self) -> &TraceHeader
pub fn header(&self) -> &TraceHeader
Return a reference to the parsed header.
Sourcepub fn read_event(&mut self) -> Result<Option<TraceEvent>, MoqTraceError>
pub fn read_event(&mut self) -> Result<Option<TraceEvent>, MoqTraceError>
Read the next event from the stream.
Returns Ok(None) at EOF.
Trait Implementations§
Source§impl<R: Read> IntoIterator for MoqTraceReader<R>
impl<R: Read> IntoIterator for MoqTraceReader<R>
Source§type Item = Result<TraceEvent, MoqTraceError>
type Item = Result<TraceEvent, MoqTraceError>
The type of the elements being iterated over.
Source§type IntoIter = MoqTraceIterator<R>
type IntoIter = MoqTraceIterator<R>
Which kind of iterator are we turning this into?
Auto Trait Implementations§
impl<R> Freeze for MoqTraceReader<R>where
R: Freeze,
impl<R> RefUnwindSafe for MoqTraceReader<R>where
R: RefUnwindSafe,
impl<R> Send for MoqTraceReader<R>where
R: Send,
impl<R> Sync for MoqTraceReader<R>where
R: Sync,
impl<R> Unpin for MoqTraceReader<R>where
R: Unpin,
impl<R> UnsafeUnpin for MoqTraceReader<R>where
R: UnsafeUnpin,
impl<R> UnwindSafe for MoqTraceReader<R>where
R: UnwindSafe,
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