// // Created by Lennart on 02/12/2023. // #include #include "array_list.h" array_list* alist_create(int capacity) { array_list *alist = malloc(sizeof (struct array_list_struct)); alist->data = malloc(sizeof (ELEMENT_TYPE) * capacity); alist->capacity = capacity; alist->length = 0; return alist; } void alist_add(array_list *alist, ELEMENT_TYPE entry) { if(alist->length >= alist->capacity) { alist->data = realloc(alist->data, alist->capacity * 2); alist->capacity = alist->capacity * 2; } alist->data[alist->length++] = entry; } void alist_free(array_list *alist) { free(alist->data); free(alist); }