Struct alloc::string::FromUtf8Error
1.0.0 · source · [−]pub struct FromUtf8Error { /* private fields */ }Expand description
A possible error value when converting a String from a UTF-8 byte vector.
This type is the error type for the from_utf8 method on String. It
is designed in such a way to carefully avoid reallocations: the
into_bytes method will give back the byte vector that was used in the
conversion attempt.
The Utf8Error type provided by std::str represents an error that may
occur when converting a slice of u8s to a &str. In this sense, it’s
an analogue to FromUtf8Error, and you can get one from a FromUtf8Error
through the utf8_error method.
Examples
Basic usage:
// some invalid bytes, in a vector
let bytes = vec![0, 159];
let value = String::from_utf8(bytes);
assert!(value.is_err());
assert_eq!(vec![0, 159], value.unwrap_err().into_bytes());RunImplementations
impl FromUtf8Error
source
impl FromUtf8Error
sourcepub fn into_bytes(self) -> Vec<u8>
source
pub fn into_bytes(self) -> Vec<u8>
sourceReturns the bytes that were attempted to convert to a String.
This method is carefully constructed to avoid allocation. It will consume the error, moving out the bytes, so that a copy of the bytes does not need to be made.
Examples
Basic usage:
// some invalid bytes, in a vector
let bytes = vec![0, 159];
let value = String::from_utf8(bytes);
assert_eq!(vec![0, 159], value.unwrap_err().into_bytes());Runpub fn utf8_error(&self) -> Utf8Error
source
pub fn utf8_error(&self) -> Utf8Error
sourceFetch a Utf8Error to get more details about the conversion failure.
The Utf8Error type provided by std::str represents an error that may
occur when converting a slice of u8s to a &str. In this sense, it’s
an analogue to FromUtf8Error. See its documentation for more details
on using it.
Examples
Basic usage:
// some invalid bytes, in a vector
let bytes = vec![0, 159];
let error = String::from_utf8(bytes).unwrap_err().utf8_error();
// the first byte is invalid here
assert_eq!(1, error.valid_up_to());RunTrait Implementations
impl Clone for FromUtf8Error
source
impl Clone for FromUtf8Error
sourcefn clone(&self) -> FromUtf8Error
source
fn clone(&self) -> FromUtf8Error
sourceReturns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
source
fn clone_from(&mut self, source: &Self)
sourcePerforms copy-assignment from source. Read more
impl Debug for FromUtf8Error
source
impl Debug for FromUtf8Error
sourceimpl Display for FromUtf8Error
source
impl Display for FromUtf8Error
sourceimpl PartialEq<FromUtf8Error> for FromUtf8Error
source
impl PartialEq<FromUtf8Error> for FromUtf8Error
sourcefn eq(&self, other: &FromUtf8Error) -> bool
source
fn eq(&self, other: &FromUtf8Error) -> bool
sourceThis method tests for self and other values to be equal, and is used
by ==. Read more
fn ne(&self, other: &FromUtf8Error) -> bool
source
fn ne(&self, other: &FromUtf8Error) -> bool
sourceThis method tests for !=.
impl Eq for FromUtf8Error
sourceimpl StructuralEq for FromUtf8Error
sourceimpl StructuralPartialEq for FromUtf8Error
sourceAuto Trait Implementations
impl RefUnwindSafe for FromUtf8Error
impl Send for FromUtf8Error
impl Sync for FromUtf8Error
impl Unpin for FromUtf8Error
impl UnwindSafe for FromUtf8Error
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
source
impl<T> BorrowMut<T> for T where
T: ?Sized,
sourcefn borrow_mut(&mut self) -> &mut T
const: unstable · source
fn borrow_mut(&mut self) -> &mut T
const: unstable · sourceMutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
source
impl<T> ToOwned for T where
T: Clone,
sourcetype Owned = T
type Owned = T
The resulting type after obtaining ownership.
fn clone_into(&self, target: &mut T)
source
fn clone_into(&self, target: &mut T)
sourceUses borrowed data to replace owned data, usually by cloning. Read more