libcstl
Loading...
Searching...
No Matches
Functions
array.c File Reference

Go to the source code of this file.

Functions

void cstl_raw_array_reverse (void *const arr, const size_t count, const size_t size, cstl_swap_func_t *const swap, void *const t)
 Reverse the contents of an array.
 
ssize_t cstl_raw_array_search (const void *const arr, const size_t count, const size_t size, const void *const ex, cstl_compare_func_t *const cmp, void *const priv)
 Perform a binary search of the array.
 
ssize_t cstl_raw_array_find (const void *const arr, const size_t count, const size_t size, const void *const ex, cstl_compare_func_t *const cmp, void *const priv)
 Perform a linear search of the array.
 
void cstl_raw_array_sort (void *const arr, const size_t count, const size_t size, cstl_compare_func_t *const cmp, void *const priv, cstl_swap_func_t *const swap, void *const tmp, const cstl_sort_algorithm_t algo)
 Sort the array using the specified algorithm.
 
void cstl_array_alloc (cstl_array_t *const a, const size_t nm, const size_t sz)
 Allocate an array to be managed.
 
void cstl_array_set (cstl_array_t *const a, void *const buf, const size_t nm, const size_t sz)
 Manage an externally allocated array.
 
void cstl_array_release (cstl_array_t *const a, void **const buf)
 Release an externally allocated array.
 
const void * cstl_array_data_const (const cstl_array_t *const a)
 Return a pointer to the underlying array.
 
const void * cstl_array_at_const (const cstl_array_t *a, size_t i)
 Return a pointer to an element in the array.
 
void cstl_array_slice (cstl_array_t *const a, const size_t beg, const size_t end, cstl_array_t *const s)
 Create an array object referring to a slice of another.
 
void cstl_array_unslice (cstl_array_t *const s, cstl_array_t *const a)
 Create an array object referring to the entire underlying array.