From 79a85fd80a6e1af15e7d9b5ee96d3d77645993b3 Mon Sep 17 00:00:00 2001 From: ame Date: Mon, 29 Jan 2024 09:54:16 -0600 Subject: test --- src/parray.c | 90 ++++++++++++++++++++++++++++++------------------------------ 1 file changed, 45 insertions(+), 45 deletions(-) (limited to 'src/parray.c') diff --git a/src/parray.c b/src/parray.c index 7ff1e6f..077a67f 100644 --- a/src/parray.c +++ b/src/parray.c @@ -1,45 +1,45 @@ -#include -#include "i_str.h" -#include -#include - -#include "parray.h" - -parray_t* parray_init(){ - parray_t* awa = malloc(sizeof * awa); - awa->P = malloc(sizeof * awa->P); - awa->len = 0; - return awa; -} - -void parray_set(parray_t* p, char* key, void* value){ - for(int i = 0; i != p->len; i++){ - if(strcmp(p->P[i].key->c, key) == 0){ - p->P[p->len - 1].value = value; - return; - } - } - - p->len++; - p->P = realloc(p->P, sizeof * p->P * (p->len + 1)); - p->P[p->len - 1].key = str_init(key); - p->P[p->len - 1].value = value; -} - -void* parray_get(parray_t* p, char* key){ - for(int i = 0; i != p->len; i++){ - if(strcmp(p->P[i].key->c, key) == 0){ - return p->P[i].value; - } - } - return NULL; -} - -void parray_clear(parray_t* p, int clear_val){ - for(int i = 0; i != p->len; i++){ - str_free(p[i].P->key); - if(clear_val) free(p[i].P->value); - } - free(p->P); - free(p); -} +#include +#include "i_str.h" +#include +#include + +#include "parray.h" + +parray_t* parray_init(){ + parray_t* awa = malloc(sizeof * awa); + awa->P = malloc(sizeof * awa->P); + awa->len = 0; + return awa; +} + +void parray_set(parray_t* p, char* key, void* value){ + for(int i = 0; i != p->len; i++){ + if(strcmp(p->P[i].key->c, key) == 0){ + p->P[p->len - 1].value = value; + return; + } + } + + p->len++; + p->P = realloc(p->P, sizeof * p->P * (p->len + 1)); + p->P[p->len - 1].key = str_init(key); + p->P[p->len - 1].value = value; +} + +void* parray_get(parray_t* p, char* key){ + for(int i = 0; i != p->len; i++){ + if(strcmp(p->P[i].key->c, key) == 0){ + return p->P[i].value; + } + } + return NULL; +} + +void parray_clear(parray_t* p, int clear_val){ + for(int i = 0; i != p->len; i++){ + str_free(p[i].P->key); + if(clear_val) free(p[i].P->value); + } + free(p->P); + free(p); +} -- cgit v1.2.3