NulError in alloc::ffi - Rust (original) (raw)

Struct NulError

1.64.0 · Source

pub struct NulError(/* private fields */);

Expand description

An error indicating that an interior nul byte was found.

While Rust strings may contain nul bytes in the middle, C strings can’t, as that byte would effectively truncate the string.

This error is created by the new method onCString. See its documentation for more.

§Examples

use std::ffi::{CString, NulError};

let _: NulError = CString::new(b"f\0oo".to_vec()).unwrap_err();

Source§

1.0.0 · Source

Returns the position of the nul byte in the slice that causedCString::new to fail.

§Examples
use std::ffi::CString;

let nul_error = CString::new("foo\0bar").unwrap_err();
assert_eq!(nul_error.nul_position(), 3);

let nul_error = CString::new("foo bar\0").unwrap_err();
assert_eq!(nul_error.nul_position(), 7);

1.0.0 · Source

Consumes this error, returning the underlying vector of bytes which generated the error in the first place.

§Examples
use std::ffi::CString;

let nul_error = CString::new("foo\0bar").unwrap_err();
assert_eq!(nul_error.into_vec(), b"foo\0bar");

1.64.0 · Source§

1.64.0 · Source§

1.0.0 · Source§

1.0.0 · Source§

Source§

👎Deprecated since 1.42.0: use the Display impl or to_string()

1.30.0 · Source§

Returns the lower-level source of this error, if any. Read more

1.0.0 · Source§

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting

Source§

🔬This is a nightly-only experimental API. (error_generic_member_access #99301)

Provides type-based access to context intended for error reports. Read more

1.64.0 · Source§

Source§

Tests for self and other values to be equal, and is used by ==.

1.0.0 · Source§

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

1.64.0 · Source§

1.64.0 · Source§

§

§

§

§

§

§