Struct creusot_contracts::std::ffi::FromVecWithNulError
1.64.0 · source · pub struct FromVecWithNulError { /* private fields */ }
Expand description
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
use std::ffi::{CString, FromVecWithNulError};
let _: FromVecWithNulError = CString::from_vec_with_nul(b"f\0oo".to_vec()).unwrap_err();
Implementations§
1.58.0 · source§impl FromVecWithNulError
impl FromVecWithNulError
1.58.0 · sourcepub fn into_bytes(self) -> Vec<u8> ⓘ
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:
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§
1.64.0 · source§impl Clone for FromVecWithNulError
impl Clone for FromVecWithNulError
source§fn clone(&self) -> FromVecWithNulError
fn clone(&self) -> FromVecWithNulError
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more1.64.0 · source§impl Debug for FromVecWithNulError
impl Debug for FromVecWithNulError
1.58.0 · source§impl Display for FromVecWithNulError
impl Display for FromVecWithNulError
1.58.0 · source§impl Error for FromVecWithNulError
impl Error for FromVecWithNulError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
1.64.0 · source§impl PartialEq for FromVecWithNulError
impl PartialEq for FromVecWithNulError
source§fn eq(&self, other: &FromVecWithNulError) -> bool
fn eq(&self, other: &FromVecWithNulError) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for FromVecWithNulError
impl StructuralPartialEq for FromVecWithNulError
Auto Trait Implementations§
impl Freeze for FromVecWithNulError
impl RefUnwindSafe for FromVecWithNulError
impl Send for FromVecWithNulError
impl Sync for FromVecWithNulError
impl Unpin for FromVecWithNulError
impl UnwindSafe for FromVecWithNulError
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> MakeSized for Twhere
T: ?Sized,
impl<T> MakeSized for Twhere
T: ?Sized,
source§fn make_sized(&self) -> Box<T>
fn make_sized(&self) -> Box<T>
logic ⚠
ensures
*result == *self