osurs  0.0.1
arraylist.h
Go to the documentation of this file.
1 
12 #ifndef OSURS_DS_ARRAYLIST_H_
13 #define OSURS_DS_ARRAYLIST_H_
14 
15 #include <stddef.h>
16 
25 typedef struct {
26  void** elements;
27  size_t capacity;
28  size_t size;
29 } ArrayList;
30 
39 void array_list_init(ArrayList* list);
40 
51 
62 void array_list_add(ArrayList* list, void* element);
63 
76 void array_list_add_at(ArrayList* list, int index, void* element);
77 
90 void* array_list_get(ArrayList* list, int index);
91 
100 void array_list_free(ArrayList* list);
101 
102 #endif // OSURS_DS_ARRAYLIST_H_
void * array_list_get(ArrayList *list, int index)
Get an element from an ArrayList.
Definition: arraylist.c:52
ArrayList * array_list_create()
Create a new ArrayList structure.
Definition: arraylist.c:28
void array_list_init(ArrayList *list)
Initialize an ArrayList structure.
Definition: arraylist.c:22
void array_list_free(ArrayList *list)
Free an ArrayList structure.
Definition: arraylist.c:60
void array_list_add_at(ArrayList *list, int index, void *element)
Add an element to an ArrayList at a specific index.
Definition: arraylist.c:39
void array_list_add(ArrayList *list, void *element)
Add an element to the end of an ArrayList.
Definition: arraylist.c:34
Arraylist.
Definition: arraylist.h:25
void ** elements
Definition: arraylist.h:26
size_t size
Definition: arraylist.h:28
size_t capacity
Definition: arraylist.h:27