pub struct U32Vec {
pub run_destructor: bool,
/* private fields */
}Fields§
§run_destructor: boolWhether to run the destructor on drop (prevents double-free when cloned to C)
Implementations§
Source§impl U32Vec
impl U32Vec
pub fn new() -> U32Vec
pub fn with_capacity(cap: usize) -> Self
pub const fn from_const_slice(input: &'static [u32]) -> Self
pub fn from_vec(input: Vec<u32>) -> Self
pub fn iter(&self) -> Iter<'_, u32>
pub fn ptr_as_usize(&self) -> usize
pub const fn len(&self) -> usize
pub const fn capacity(&self) -> usize
pub const fn is_empty(&self) -> bool
Sourcepub fn get(&self, index: usize) -> Option<&u32>
pub fn get(&self, index: usize) -> Option<&u32>
Returns a reference to the element at the given index (Rust-only, inline).
Sourcepub fn c_get(&self, index: usize) -> OptionU32
pub fn c_get(&self, index: usize) -> OptionU32
C-API compatible get function. Returns a copy of the element at the given index. Returns None if the index is out of bounds.
Sourcepub fn as_slice(&self) -> &[u32]
pub fn as_slice(&self) -> &[u32]
Returns the vec as a Rust slice (Rust-only, not C-API compatible).
Sourcepub fn as_c_slice(&self) -> U32VecSlice
pub fn as_c_slice(&self) -> U32VecSlice
Returns a C-compatible slice of the entire Vec.
Sourcepub fn as_c_slice_range(&self, start: usize, end: usize) -> U32VecSlice
pub fn as_c_slice_range(&self, start: usize, end: usize) -> U32VecSlice
Returns a C-compatible slice of a range within the Vec. If the range is out of bounds, it is clamped to the valid range.
Source§impl U32Vec
impl U32Vec
pub fn as_mut_slice_extended<'a>(&mut self) -> &'a mut [u32]
pub fn as_mut_ptr(&mut self) -> *mut u32
pub fn sort_by<F: FnMut(&u32, &u32) -> Ordering>(&mut self, compare: F)
pub fn push(&mut self, value: u32)
pub fn insert(&mut self, index: usize, element: u32)
pub fn remove(&mut self, index: usize)
pub fn pop(&mut self) -> Option<u32>
pub fn iter_mut(&mut self) -> IterMut<'_, u32>
pub fn into_iter(self) -> IntoIter<u32>
pub fn append(&mut self, other: &mut Self)
pub fn reserve(&mut self, additional: usize)
pub fn truncate(&mut self, len: usize)
pub fn retain<F>(&mut self, f: F)
Source§impl U32Vec
impl U32Vec
pub fn from_copy_on_write(input: Cow<'static, [u32]>) -> U32Vec
Sourcepub unsafe fn copy_from_ptr(ptr: *const u32, len: usize) -> Self
pub unsafe fn copy_from_ptr(ptr: *const u32, len: usize) -> Self
Copies elements from a C array pointer into a new Vec.
§Safety
ptrmust be valid for readinglenelements- The memory must be properly aligned for
$struct_type - The elements are cloned, so
$struct_typemust implementClone
Sourcepub fn clone_self(&self) -> Self
pub fn clone_self(&self) -> Self
NOTE: CLONES the memory if the memory is external or &’static Moves the memory out if the memory is library-allocated
Sourcepub fn into_library_owned_vec(self) -> Vec<u32>
pub fn into_library_owned_vec(self) -> Vec<u32>
NOTE: CLONES the memory if the memory is external or &’static Moves the memory out if the memory is library-allocated
Trait Implementations§
Source§impl Extend<u32> for U32Vec
impl Extend<u32> for U32Vec
Source§fn extend<T: IntoIterator<Item = u32>>(&mut self, iter: T)
fn extend<T: IntoIterator<Item = u32>>(&mut self, iter: T)
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)