[][src]Struct rmpv::Utf8String

pub struct Utf8String { /* fields omitted */ }

Represents an UTF-8 MessagePack string type.

According to the MessagePack spec, string objects may contain invalid byte sequence and the behavior of a deserializer depends on the actual implementation when it received invalid byte sequence. Deserializers should provide functionality to get the original byte array so that applications can decide how to handle the object.

Summarizing, it's prohibited to instantiate a string type with invalid UTF-8 sequences, however it is possible to obtain an underlying bytes that were attempted to convert to a String. This may happen when trying to unpack strings that were decoded using older MessagePack spec with raw types instead of string/binary.


impl Utf8String[src]

pub fn is_str(&self) -> bool[src]

Returns true if the string is valid UTF-8.

pub fn is_err(&self) -> bool[src]

Returns true if the string contains invalid UTF-8 sequence.

pub fn as_str(&self) -> Option<&str>[src]

Returns the string reference if the string is valid UTF-8, or else None.

pub fn as_err(&self) -> Option<&Utf8Error>[src]

Returns the underlying Utf8Error if the string contains invalud UTF-8 sequence, or else None.

pub fn as_bytes(&self) -> &[u8][src]

Returns a byte slice of this Utf8String's contents.

pub fn into_str(self) -> Option<String>[src]

Consumes this object, yielding the string if the string is valid UTF-8, or else None.

pub fn into_bytes(self) -> Vec<u8>[src]

Converts a Utf8String into a byte vector.

pub fn as_ref(&self) -> Utf8StringRef[src]

Trait Implementations

impl<'a> Into<Utf8String> for Utf8StringRef<'a>[src]

impl<'a> From<String> for Utf8String[src]

impl<'a> From<&'a str> for Utf8String[src]

impl<'a> From<Cow<'a, str>> for Utf8String[src]

impl Clone for Utf8String[src]

impl PartialEq<Utf8String> for Utf8String[src]

impl Display for Utf8String[src]

impl Debug for Utf8String[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> Any for T where
    T: 'static + ?Sized