#[unsafe(no_mangle)]pub unsafe extern "C" fn hurray_buffer_list_get(
list: *const HurrayBufferList,
index: u64,
out_buffer: *mut *mut HurrayBuffer,
) -> HurrayStatusExpand description
Borrows the HurrayBuffer at index.
The returned handle is borrowed: ownership stays with the list, and the
caller MUST NOT call hurray_buffer_destroy on it. It stays valid until the
list is destroyed.
Returns HURRAY_ERR_INDEX_OUT_OF_BOUNDS if index is not less than the
list length.
§Safety
listMUST be a live handle fromhurray_buffer_list_new.out_bufferMUST be a valid, non-null, writable pointer.
§Examples
use hurray_ffi::buffer_list::{
hurray_buffer_list_destroy, hurray_buffer_list_get, hurray_buffer_list_new,
};
use hurray_ffi::status::HURRAY_ERR_INDEX_OUT_OF_BOUNDS;
use hurray_ffi::{HurrayBuffer, HurrayBufferList};
let mut list: *mut HurrayBufferList = std::ptr::null_mut();
unsafe { hurray_buffer_list_new(0, &mut list) };
// An empty list has no index 0.
let mut got: *mut HurrayBuffer = std::ptr::null_mut();
assert_eq!(
unsafe { hurray_buffer_list_get(list, 0, &mut got) },
HURRAY_ERR_INDEX_OUT_OF_BOUNDS
);
unsafe { hurray_buffer_list_destroy(&mut list) };