LF OS
Hobby operating system for amd64 with high ambitions
|
Go to the source code of this file.
Typedefs | |
typedef struct flexarray * | flexarray_t |
Functions | |
flexarray_t | new_flexarray (size_t member_size, size_t initial_alloc, allocator_t *alloc) |
void | delete_flexarray (flexarray_t array) |
uint64_t | flexarray_append (flexarray_t array, void *data) |
void | flexarray_prepend (flexarray_t array, void *data) |
void | flexarray_remove (flexarray_t array, uint64_t idx) |
uint64_t | flexarray_find (flexarray_t array, void *data) |
Will return -1 when not found. | |
size_t | flexarray_length (flexarray_t array) |
size_t | flexarray_member_size (flexarray_t array) |
void | flexarray_get (flexarray_t array, void *buffer, uint64_t idx) |
void | flexarray_set (flexarray_t array, void *buffer, uint64_t idx) |
const void * | flexarray_getall (flexarray_t array) |
typedef struct flexarray* flexarray_t |
Definition at line 8 of file flexarray.h.
void delete_flexarray | ( | flexarray_t | array | ) |
Definition at line 29 of file flexarray.c.
References flexarray::allocator, and allocator::dealloc.
uint64_t flexarray_append | ( | flexarray_t | array, |
void * | data | ||
) |
Definition at line 56 of file flexarray.c.
References flexarray::alloc, flexarray::count, flexarray_data(), flexarray_grow(), flexarray::member_size, and memcpy().
uint64_t flexarray_find | ( | flexarray_t | array, |
void * | data | ||
) |
Will return -1 when not found.
Definition at line 92 of file flexarray.c.
References flexarray::count, flexarray_data(), flexarray::member_size, and memcmp().
void flexarray_get | ( | flexarray_t | array, |
void * | buffer, | ||
uint64_t | idx | ||
) |
Definition at line 110 of file flexarray.c.
References flexarray::count, flexarray_data(), flexarray::member_size, and memcpy().
const void * flexarray_getall | ( | flexarray_t | array | ) |
Definition at line 126 of file flexarray.c.
References flexarray_data().
size_t flexarray_length | ( | flexarray_t | array | ) |
Definition at line 102 of file flexarray.c.
References flexarray::count.
size_t flexarray_member_size | ( | flexarray_t | array | ) |
Definition at line 106 of file flexarray.c.
References flexarray::member_size.
void flexarray_prepend | ( | flexarray_t | array, |
void * | data | ||
) |
Definition at line 67 of file flexarray.c.
References flexarray::alloc, flexarray::count, flexarray::data, flexarray_data(), flexarray_grow(), flexarray::member_size, memcpy(), and memmove().
void flexarray_remove | ( | flexarray_t | array, |
uint64_t | idx | ||
) |
Definition at line 78 of file flexarray.c.
References flexarray::count, flexarray_data(), flexarray::member_size, and memmove().
void flexarray_set | ( | flexarray_t | array, |
void * | buffer, | ||
uint64_t | idx | ||
) |
Definition at line 118 of file flexarray.c.
References flexarray::count, flexarray_data(), flexarray::member_size, and memcpy().
flexarray_t new_flexarray | ( | size_t | member_size, |
size_t | initial_alloc, | ||
allocator_t * | alloc | ||
) |
Definition at line 14 of file flexarray.c.
References allocator::alloc, flexarray::alloc, alloc, flexarray::allocator, flexarray::count, flexarray::data, and flexarray::member_size.