pub struct DecodeReaderBytesBuilder { /* private fields */ }Implementations§
Source§impl DecodeReaderBytesBuilder
impl DecodeReaderBytesBuilder
Sourcepub fn new() -> DecodeReaderBytesBuilder
pub fn new() -> DecodeReaderBytesBuilder
Create a new decoder builder with a default configuration.
By default, no explicit encoding is used, but if a UTF-8 or UTF-16 BOM is detected, then an appropriate encoding is automatically detected and transcoding is performed (where invalid sequences map to the Unicode replacement codepoint).
Sourcepub fn build<R: Read>(&self, rdr: R) -> DecodeReaderBytes<R, Vec<u8>> ⓘ
pub fn build<R: Read>(&self, rdr: R) -> DecodeReaderBytes<R, Vec<u8>> ⓘ
Build a new decoder that wraps the given reader.
Sourcepub fn build_with_buffer<R: Read, B: AsMut<[u8]>>(
&self,
rdr: R,
buffer: B,
) -> Result<DecodeReaderBytes<R, B>>
pub fn build_with_buffer<R: Read, B: AsMut<[u8]>>( &self, rdr: R, buffer: B, ) -> Result<DecodeReaderBytes<R, B>>
Build a new decoder that wraps the given reader and uses the given buffer internally for transcoding.
This is useful for cases where it is advantageuous to amortize allocation. Namely, this method permits reusing a buffer for subsequent decoders.
This returns an error if the buffer is smaller than 4 bytes (which is too small to hold maximum size of a single UTF-8 encoded codepoint).
Sourcepub fn encoding(
&mut self,
encoding: Option<&'static Encoding>,
) -> &mut DecodeReaderBytesBuilder
pub fn encoding( &mut self, encoding: Option<&'static Encoding>, ) -> &mut DecodeReaderBytesBuilder
Set an explicit encoding to be used by this decoder.
When an explicit encoding is set, BOM sniffing is disabled and the encoding provided will be used unconditionally. Errors in the encoded bytes are replaced by the Unicode replacement codepoint.
By default, no explicit encoding is set.
pub fn utf8_passthru(&mut self, yes: bool) -> &mut DecodeReaderBytesBuilder
pub fn strip_bom(&mut self, yes: bool) -> &mut DecodeReaderBytesBuilder
Sourcepub fn bom_override(&mut self, yes: bool) -> &mut DecodeReaderBytesBuilder
pub fn bom_override(&mut self, yes: bool) -> &mut DecodeReaderBytesBuilder
Give the highest precedent to the BOM, if one is found.
When this is enabled, and if a BOM is found, then the encoding
indicated by that BOM is used even if an explicit encoding has been
set via the encoding method.
This does not override utf8_passthru.
This is disabled by default.
Sourcepub fn bom_sniffing(&mut self, yes: bool) -> &mut DecodeReaderBytesBuilder
pub fn bom_sniffing(&mut self, yes: bool) -> &mut DecodeReaderBytesBuilder
Enable BOM sniffing
When this is enabled and an explicit encoding is not set, the decoder will try to detect the encoding with BOM.
When this is disabled and an explicit encoding is not set, the decoder will treat the input as raw bytes. The bytes will be passed through unchanged, including any BOM that may be present.
This is enabled by default.
Trait Implementations§
Source§impl Clone for DecodeReaderBytesBuilder
impl Clone for DecodeReaderBytesBuilder
Source§fn clone(&self) -> DecodeReaderBytesBuilder
fn clone(&self) -> DecodeReaderBytesBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more