std::ffi::NulError - Rust
Description: API documentation for the Rust `NulError` struct in crate `std`.
Keywords: rust, rustlang, rust-lang, NulError

# Struct std::ffi::NulError 1.0.0[−][src]

    pub struct NulError(_, _);

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 on `CString`. See its documentation for more.

# Examples

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

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

## Methods

###

`impl NulError`

[src]

####

`pub fn nul_position(&self) -> usize`

[src]

Returns the position of the nul byte in the slice that caused `CString::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);Run

####
ⓘImportant traits for Vec<u8>

### Important traits for Vec<u8>

`impl Write for Vec<u8>`

`pub fn into_vec(self) -> Vec<u8>`

[src]

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");Run

## Trait Implementations

###

`impl Clone for NulError`

[src]

####

`fn clone(&self) -> NulError`

[src]

Returns a copy of the value. Read more

####

`fn clone_from(&mut self, source: &Self)`

[src]

Performs copy-assignment from `source`. Read more

###

`impl PartialEq for NulError`

[src]

####

`fn eq(&self, other: &NulError) -> bool`

[src]

This method tests for `self` and `other` values to be equal, and is used by `==`. Read more

####

`fn ne(&self, other: &NulError) -> bool`

[src]

This method tests for `!=`.

###

`impl Eq for NulError`

[src]

###

`impl Debug for NulError`

[src]

####

`fn fmt(&self, f: &mut Formatter) -> Result`

[src]

Formats the value using the given formatter. Read more

###

`impl Error for NulError`

[src]

####

`fn description(&self) -> &str`

[src]

This method is soft-deprecated. Read more

####

`fn cause(&self) -> Option<&Error>`

[src]

The lower-level cause of this error, if any. Read more

###

`impl Display for NulError`

[src]

####

`fn fmt(&self, f: &mut Formatter) -> Result`

[src]

Formats the value using the given formatter. Read more

###

`impl From<NulError> for Error`

[src]

####

`fn from(_: NulError) -> Error`

[src]

Performs the conversion.

## Auto Trait Implementations

###

`impl Send for NulError`

###

`impl Sync for NulError`

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g. `str,u8` or `String,struct:Vec,test`)