nstd_string_pop

Function nstd_string_pop 

Source
#[unsafe(no_mangle)]
pub extern "C" fn nstd_string_pop( string: &mut NSTDString<'_>, ) -> NSTDOptionalUnichar
Available on crate feature string only.
Expand description

Removes the last character from a string and returns it.

§Parameters:

  • NSTDString *string - The string to pop.

§Returns

NSTDOptionalUnichar chr - The removed character on success.

§Example

use nstd_sys::{
    alloc::NSTD_ALLOCATOR,
    core::{optional::NSTDOptional, str::nstd_core_str_from_raw_cstr_with_null},
    string::{nstd_string_from_str, nstd_string_pop},
};

unsafe {
    let str = nstd_core_str_from_raw_cstr_with_null("Hello, world!\0".as_ptr().cast()).unwrap();
    let mut string = nstd_string_from_str(&NSTD_ALLOCATOR, &str).unwrap();
    assert!(nstd_string_pop(&mut string) == NSTDOptional::Some('\0'.into()));
}