Struct encoding::codec::utf_16::UTF16EncodingUnstable [-]  [+] [src]

pub struct UTF16Encoding<E>;

UTF-16 (UCS Transformation Format, 16-bit).

This is a Unicode encoding where one codepoint may use 2 (up to U+FFFF) or 4 bytes (up to U+10FFFF) depending on its value. It uses a "surrogate" mechanism to encode non-BMP codepoints, which are represented as a pair of lower surrogate and upper surrogate characters. In this effect, surrogate characters (U+D800..DFFF) cannot appear alone and cannot be included in a valid Unicode string.

Specialization

This type is specialized with endianness type E, which should be either Little (little endian) or Big (big endian).

Trait Implementations

impl<E: Endian + Clone + 'static> Encoding for UTF16Encoding<E>

fn name(&self) -> &'static str

fn whatwg_name(&self) -> Option<&'static str>

fn encoder(&self) -> Box<Encoder>

fn decoder(&self) -> Box<Decoder>

fn encode(&self, input: &str, trap: EncoderTrap) -> Result<Vec<u8>, SendStr>

fn decode(&self, input: &[u8], trap: DecoderTrap) -> Result<String, SendStr>

Derived Implementations

impl<E: Clone> Clone for UTF16Encoding<E>

fn clone(&self) -> UTF16Encoding<E>

fn clone_from(&mut self, source: &Self)