Struct std::sys_common::wtf8::Wtf8[][src]

pub struct Wtf8 {
    bytes: [u8],
}
Expand description

A borrowed slice of well-formed WTF-8 data.

Similar to &str, but can additionally contain surrogate code points if they’re not in a surrogate pair.

Fields

bytes: [u8]

Implementations

Creates a WTF-8 slice from a UTF-8 &str slice.

Since WTF-8 is a superset of UTF-8, this always succeeds.

Creates a WTF-8 slice from a WTF-8 byte slice.

Since the byte slice is not checked for valid WTF-8, this functions is marked unsafe.

Creates a mutable WTF-8 slice from a mutable WTF-8 byte slice.

Since the byte slice is not checked for valid WTF-8, this functions is marked unsafe.

Returns the length, in WTF-8 bytes.

Returns the code point at position if it is in the ASCII range, or `b’\xFF’ otherwise.

Panics

Panics if position is beyond the end of the string.

Returns an iterator for the string’s code points.

Tries to convert the string to UTF-8 and return a &str slice.

Returns None if the string contains surrogates.

This does not copy the data.

Lossily converts the string to UTF-8. Returns a UTF-8 &str slice if the contents are well-formed in UTF-8.

Surrogates are replaced with "\u{FFFD}" (the replacement character “�”).

This only copies the data if necessary (if it contains any surrogate).

Converts the WTF-8 string to potentially ill-formed UTF-16 and return an iterator of 16-bit code units.

This is lossless: calling Wtf8Buf::from_ill_formed_utf16 on the resulting code units would always return the original WTF-8 string.

Boxes this Wtf8.

Creates a boxed, empty Wtf8.

Trait Implementations

Format the slice with double quotes, and surrogates as \u followed by four hexadecimal digits. Example: "a\u{D800}" for a slice with code points [U+0061, U+D800]

Formats the value using the given formatter. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

Returns a slice of the given string for the byte range [begin..end).

Panics

Panics when begin and end do not point to code point boundaries, or point beyond the end of the string.

The returned type after indexing.

Performs the indexing (container[index]) operation. Read more

Returns a slice of the given string from byte begin to its end.

Panics

Panics when begin is not at a code point boundary, or is beyond the end of the string.

The returned type after indexing.

Performs the indexing (container[index]) operation. Read more

The returned type after indexing.

Performs the indexing (container[index]) operation. Read more

Returns a slice of the given string from its beginning to byte end.

Panics

Panics when end is not at a code point boundary, or is beyond the end of the string.

The returned type after indexing.

Performs the indexing (container[index]) operation. Read more

This method returns an Ordering between self and other. Read more

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

Restrict a value to a certain interval. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Converts the given value to a String. Read more