renamed some collection functions

This commit is contained in:
Timerix 2025-07-24 17:45:22 +03:00
parent eb6432470c
commit 51980ebb0b
4 changed files with 11 additions and 8 deletions

View File

@ -26,7 +26,9 @@ typedef struct HashMap_ {
u16 height_n;
} HashMap_;
void HashMap_create(HashMap_* ptr, u32 value_t_size, FreeFunction NULLABLE(value_destructor));
//TODO: standartize constructor function names across tlibc
#define HashMap_create(PTR, T, VALUE_DESTRUCTOR) HashMap_create_size(PTR, sizeof(T), VALUE_DESTRUCTOR)
void HashMap_create_size(HashMap_* ptr, u32 value_t_size, FreeFunction NULLABLE(value_destructor));
void HashMap_destroy(HashMap_* ptr);
void* NULLABLE(HashMap_tryGetPtr)(HashMap_* ptr, str key);
bool HashMap_tryPush(HashMap_* ptr, str key, void* value_ptr);

View File

@ -9,7 +9,7 @@ typedef struct List_ {
u32 allocated_size;
} List_;
#define List_construct(DATA_PTR, T, OCCUPIED_COUNT, ALLOCATED_COUNT) \
#define List_construct(T, DATA_PTR, OCCUPIED_COUNT, ALLOCATED_COUNT) \
List_construct_size(DATA_PTR, (OCCUPIED_COUNT) * sizeof(T), (ALLOCATED_COUNT) * sizeof(T))
static inline List_ List_construct_size(void* data_ptr, u32 occupied_size, u32 allocated_size) {
@ -19,8 +19,8 @@ static inline List_ List_construct_size(void* data_ptr, u32 occupied_size, u32 a
#define List_alloc(T, INITIAL_COUNT) List_alloc_size((INITIAL_COUNT) * sizeof(T))
List_ List_alloc_size(u32 initial_size);
void* List_expand(List_* ptr, u32 expansion_size);
#define List_push(L, T, VALUE) *(T*)(List_expand(L, sizeof(T))) = VALUE
void* List_expand_size(List_* ptr, u32 expansion_size);
#define List_push(L, T, VALUE) *(T*)(List_expand_size(L, sizeof(T))) = VALUE
#define List_pushMany(L, T, VALUES_PTR, COUNT) List_push_size(L, VALUES_PTR, (COUNT) * sizeof(T))
void List_push_size(List_* ptr, void* values, u32 size);

View File

@ -12,7 +12,8 @@ static const Array(u32) __HashMap_heights = ARRAY(u32, {
8388617, 16777213, 33554467, 67108859, 134217757, 268435493
});
void HashMap_create(HashMap_* ptr, u32 value_t_size, FreeFunction NULLABLE(value_destructor)){
void HashMap_create_size(HashMap_* ptr, u32 value_t_size, FreeFunction NULLABLE(value_destructor)){
ptr->value_t_size = value_t_size;
ptr->value_destructor = value_destructor;
ptr->height_n = 0;

View File

@ -7,7 +7,7 @@ List_ List_alloc_size(u32 initial_size){
return List_construct_size(malloc(allocated_size), 0, allocated_size);
}
void* List_expand(List_* ptr, u32 expansion_size){
void* List_expand_size(List_* ptr, u32 expansion_size){
u32 occupied_size = ptr->size;
u32 expanded_alloc_size = ptr->allocated_size;
if(expanded_alloc_size == 0)
@ -23,7 +23,7 @@ void* List_expand(List_* ptr, u32 expansion_size){
}
void List_push_size(List_* ptr, void* values, u32 size){
void* empty_cell_ptr = List_expand(ptr, size);
void* empty_cell_ptr = List_expand_size(ptr, size);
memcpy(empty_cell_ptr, values, size);
}