Struct encoding::codec::utf_8::UTF8Encoding
[−]
[src]
pub struct UTF8Encoding;
UTF-8 (UCS Transformation Format, 8-bit).
This is a Unicode encoding compatible to ASCII (ISO/IEC 646:US) and able to represent all Unicode codepoints uniquely and unambiguously. It has a variable-length design, where one codepoint may use 1 (up to U+007F), 2 (up to U+07FF), 3 (up to U+FFFF) and 4 bytes (up to U+10FFFF) depending on its value. The first byte of the sequence is distinct from other "continuation" bytes of the sequence making UTF-8 self-synchronizable and easy to handle. It has a fixed endianness, and can be lexicographically sorted by codepoints.
The UTF-8 scanner used by this module is heavily based on Bjoern Hoehrmann's Flexible and Economical UTF-8 Decoder.
Trait Implementations
impl Clone for UTF8Encoding
[src]
fn clone(&self) -> UTF8Encoding
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Copy for UTF8Encoding
[src]
impl Encoding for UTF8Encoding
[src]
fn name(&self) -> &'static str
Returns the canonical name of given encoding. This name is guaranteed to be unique across built-in encodings, but it is not normative and would be at most arbitrary. Read more
fn whatwg_name(&self) -> Option<&'static str>
Returns a name of given encoding defined in the WHATWG Encoding standard, if any. This name often differs from name
due to the compatibility reason. Read more
fn raw_encoder(&self) -> Box<RawEncoder>
Creates a new encoder.
fn raw_decoder(&self) -> Box<RawDecoder>
Creates a new decoder.
fn encode(&self,
input: &str,
trap: EncoderTrap)
-> Result<Vec<u8>, Cow<'static, str>>
input: &str,
trap: EncoderTrap)
-> Result<Vec<u8>, Cow<'static, str>>
An easy-to-use interface to RawEncoder
. On the encoder error trap
is called, which may return a replacement sequence to continue processing, or a failure to return the error. Read more
fn encode_to(&self,
input: &str,
trap: EncoderTrap,
ret: &mut ByteWriter)
-> Result<(), Cow<'static, str>>
input: &str,
trap: EncoderTrap,
ret: &mut ByteWriter)
-> Result<(), Cow<'static, str>>
Encode into a ByteWriter
.
fn decode(&self,
input: &[u8],
trap: DecoderTrap)
-> Result<String, Cow<'static, str>>
input: &[u8],
trap: DecoderTrap)
-> Result<String, Cow<'static, str>>
An easy-to-use interface to RawDecoder
. On the decoder error trap
is called, which may return a replacement string to continue processing, or a failure to return the error. Read more
fn decode_to(&self,
input: &[u8],
trap: DecoderTrap,
ret: &mut StringWriter)
-> Result<(), Cow<'static, str>>
input: &[u8],
trap: DecoderTrap,
ret: &mut StringWriter)
-> Result<(), Cow<'static, str>>
Decode into a StringWriter
. Read more