diff options
| author | ame <[email protected]> | 2024-01-29 09:54:16 -0600 |
|---|---|---|
| committer | ame <[email protected]> | 2024-01-29 09:54:16 -0600 |
| commit | 79a85fd80a6e1af15e7d9b5ee96d3d77645993b3 (patch) | |
| tree | 17bf2d289774788cfafc4504930737a3e9885101 /src/parray.c | |
| parent | a53d2ae92f02ea3efc01c5b76ce8471de3d4e879 (diff) | |
test
Diffstat (limited to 'src/parray.c')
| -rw-r--r-- | src/parray.c | 90 |
1 files changed, 45 insertions, 45 deletions
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 <stdio.h> -#include "i_str.h" -#include <stdlib.h> -#include <string.h> - -#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 <stdio.h>
+#include "i_str.h"
+#include <stdlib.h>
+#include <string.h>
+
+#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);
+}
|
