Struct std::ffi::FromVecWithNulError
pub struct FromVecWithNulError { /* fields omitted */ }
An error indicating that a nul byte was not in the expected position.
The vector used to create a CString
must have one and only one nul byte, positioned at the end.
This error is created by the CString::from_vec_with_nul
method. See its documentation for more.
Examples
#![feature(cstring_from_vec_with_nul)] use std::ffi::{CString, FromVecWithNulError}; let _: FromVecWithNulError = CString::from_vec_with_nul(b"f\0oo".to_vec()).unwrap_err();
Implementations
impl FromVecWithNulError
pub fn as_bytes(&self) -> &[u8]
Returns a slice of u8
s bytes that were attempted to convert to a CString
.
Examples
Basic usage:
#![feature(cstring_from_vec_with_nul)] use std::ffi::CString; // Some invalid bytes in a vector let bytes = b"f\0oo".to_vec(); let value = CString::from_vec_with_nul(bytes.clone()); assert_eq!(&bytes[..], value.unwrap_err().as_bytes());
pub fn into_bytes(self) -> Vec<u8>
Returns the bytes that were attempted to convert to a CString
.
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:
#![feature(cstring_from_vec_with_nul)] use std::ffi::CString; // Some invalid bytes in a vector let bytes = b"f\0oo".to_vec(); let value = CString::from_vec_with_nul(bytes.clone()); assert_eq!(bytes, value.unwrap_err().into_bytes());
Trait Implementations
impl Clone for FromVecWithNulError
fn clone(&self) -> FromVecWithNulError
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for FromVecWithNulError
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more
impl Display for FromVecWithNulError
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more
impl Error for FromVecWithNulError
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
fn backtrace(&self) -> Option<&Backtrace>
Returns a stack backtrace, if available, of where this error occurred. Read more
fn description(&self) -> &str
use the Display impl or to_string()
fn cause(&self) -> Option<&dyn Error>
replaced by Error::source, which can support downcasting
impl PartialEq<FromVecWithNulError> for FromVecWithNulError
fn eq(&self, other: &FromVecWithNulError) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &FromVecWithNulError) -> bool
This method tests for !=
.
impl Eq for FromVecWithNulError
impl StructuralEq for FromVecWithNulError
impl StructuralPartialEq for FromVecWithNulError
Auto Trait Implementations
impl RefUnwindSafe for FromVecWithNulError
impl Send for FromVecWithNulError
impl Sync for FromVecWithNulError
impl Unpin for FromVecWithNulError
impl UnwindSafe for FromVecWithNulError
Blanket Implementations
impl<T> From<T> for T
pub fn from(t: T) -> T
Performs the conversion.
pub fn into(self) -> U
Performs the conversion.
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
#41263)recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
Performs the conversion.
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
Performs the conversion.
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/ffi/struct.FromVecWithNulError.html