Struct weezl::decode::IntoStream [−][src]
pub struct IntoStream<'d, W> { /* fields omitted */ }
A decoding stream sink.
See Decoder::into_stream
on how to create this type.
Implementations
impl<'d, W: Write> IntoStream<'d, W>
[src]
impl<'d, W: Write> IntoStream<'d, W>
[src]pub fn decode(&mut self, read: impl BufRead) -> StreamResult
[src]
Decode data from a reader.
This will read data until the stream is empty or an end marker is reached.
pub fn decode_all(self, read: impl BufRead) -> StreamResult
[src]
Decode data from a reader, requiring an end marker.
pub fn set_buffer_size(&mut self, size: usize)
[src]
Set the size of the intermediate decode buffer.
A buffer of this size is allocated to hold one part of the decoded stream when no buffer is
available and any decoding method is called. No buffer is allocated if set_buffer
has
been called. The buffer is reused.
Panics
This method panics if size
is 0
.
pub fn set_buffer(&mut self, buffer: &'d mut [u8])
[src]
Use a particular buffer as an intermediate decode buffer.
Calling this sets or replaces the buffer. When a buffer has been set then it is used
instead of dynamically allocating a buffer. Note that the size of the buffer is critical
for efficient decoding. Some optimization techniques require the buffer to hold one or more
previous decoded words. There is also additional overhead from write
calls each time the
buffer has been filled.
Panics
This method panics if the buffer
is empty.
Auto Trait Implementations
impl<'d, W> !RefUnwindSafe for IntoStream<'d, W>
impl<'d, W> Send for IntoStream<'d, W> where
W: Send,
W: Send,
impl<'d, W> !Sync for IntoStream<'d, W>
impl<'d, W> Unpin for IntoStream<'d, W> where
W: Unpin,
W: Unpin,