pub struct Encoder<'a, R: BufRead> { /* private fields */ }
Expand description
An encoder that compress input data from another Read
.
Implementations
sourceimpl<R: BufRead> Encoder<'static, R>
impl<R: BufRead> Encoder<'static, R>
sourcepub fn with_buffer(reader: R, level: i32) -> Result<Self>
pub fn with_buffer(reader: R, level: i32) -> Result<Self>
Creates a new encoder around a BufRead
.
sourceimpl<'a, R: BufRead> Encoder<'a, R>
impl<'a, R: BufRead> Encoder<'a, R>
sourcepub fn with_prepared_dictionary<'b>(
reader: R,
dictionary: &EncoderDictionary<'b>
) -> Result<Self> where
'b: 'a,
pub fn with_prepared_dictionary<'b>(
reader: R,
dictionary: &EncoderDictionary<'b>
) -> Result<Self> where
'b: 'a,
Creates a new encoder, using an existing EncoderDictionary
.
The dictionary must be the same as the one used during compression.
sourcepub fn recommended_output_size() -> usize
pub fn recommended_output_size() -> usize
Recommendation for the size of the output buffer.
sourcepub fn get_mut(&mut self) -> &mut R
pub fn get_mut(&mut self) -> &mut R
Acquire a mutable reference to the underlying reader.
Note that mutation of the reader may result in surprising results if this encoder is continued to be used.
sourcepub fn finish(self) -> R
pub fn finish(self) -> R
Return the inner Read
.
Calling finish()
is not required after reading a stream -
just use it if you need to get the Read
back.
sourcepub fn set_parameter(&mut self, parameter: CParameter) -> Result<()>
pub fn set_parameter(&mut self, parameter: CParameter) -> Result<()>
Sets the given zstd compression parameter.
sourcepub fn set_pledged_src_size(&mut self, size: Option<u64>) -> Result<()>
pub fn set_pledged_src_size(&mut self, size: Option<u64>) -> Result<()>
Sets the expected size of the input.
This affects the compression effectiveness.
It is an error to give an incorrect size (an error will be returned when closing the stream if the size does not match what was pledged).
Giving a None
size means the size is unknown (this is the default).
sourcepub fn include_checksum(&mut self, include_checksum: bool) -> Result<()>
pub fn include_checksum(&mut self, include_checksum: bool) -> Result<()>
Controls whether zstd should include a content checksum at the end of each frame.
sourcepub fn include_dictid(&mut self, include_dictid: bool) -> Result<()>
pub fn include_dictid(&mut self, include_dictid: bool) -> Result<()>
Enables or disables storing of the dict id.
Defaults to true. If false, the behaviour of decoding with a wrong dictionary is undefined.
sourcepub fn include_contentsize(&mut self, include_contentsize: bool) -> Result<()>
pub fn include_contentsize(&mut self, include_contentsize: bool) -> Result<()>
Enables or disabled storing of the contentsize.
Note that this only has an effect if the size is given with set_pledged_src_size
.
sourcepub fn long_distance_matching(
&mut self,
long_distance_matching: bool
) -> Result<()>
pub fn long_distance_matching(
&mut self,
long_distance_matching: bool
) -> Result<()>
Enables or disables long-distance matching
sourcepub fn window_log(&mut self, log_distance: u32) -> Result<()>
pub fn window_log(&mut self, log_distance: u32) -> Result<()>
Sets the maximum back-reference distance.
The actual maximum distance is going to be 2^log_distance
.
Note that decompression will need to use at least the same setting.
Trait Implementations
sourceimpl<R: BufRead> Read for Encoder<'_, R>
impl<R: BufRead> Read for Encoder<'_, R>
sourcefn read(&mut self, buf: &mut [u8]) -> Result<usize>
fn read(&mut self, buf: &mut [u8]) -> Result<usize>
Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
1.36.0 · sourcefn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
Like read
, except that it reads into a slice of buffers. Read more
sourcefn is_read_vectored(&self) -> bool
fn is_read_vectored(&self) -> bool
can_vector
)Determines if this Read
er has an efficient read_vectored
implementation. Read more
1.0.0 · sourcefn read_to_end(&mut self, buf: &mut Vec<u8, Global>) -> Result<usize, Error>
fn read_to_end(&mut self, buf: &mut Vec<u8, Global>) -> Result<usize, Error>
Read all bytes until EOF in this source, placing them into buf
. Read more
1.0.0 · sourcefn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
Read all bytes until EOF in this source, appending them to buf
. Read more
1.6.0 · sourcefn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
Read the exact number of bytes required to fill buf
. Read more
sourcefn read_buf(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
fn read_buf(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
read_buf
)Pull some bytes from this source into the specified buffer. Read more
sourcefn read_buf_exact(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
fn read_buf_exact(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
read_buf
)Read the exact number of bytes required to fill buf
. Read more
1.0.0 · sourcefn by_ref(&mut self) -> &mut Self
fn by_ref(&mut self) -> &mut Self
Creates a “by reference” adaptor for this instance of Read
. Read more
Auto Trait Implementations
impl<'a, R> RefUnwindSafe for Encoder<'a, R> where
R: RefUnwindSafe,
impl<'a, R> Send for Encoder<'a, R> where
R: Send,
impl<'a, R> !Sync for Encoder<'a, R>
impl<'a, R> Unpin for Encoder<'a, R> where
R: Unpin,
impl<'a, R> UnwindSafe for Encoder<'a, R> where
R: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
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