diff --git a/pubsub/list.h b/pubsub/list.h new file mode 100644 index 0000000..27d1612 --- /dev/null +++ b/pubsub/list.h @@ -0,0 +1,23 @@ + +#ifndef LIST_H +#define LIST_H + +struct link { + struct link* next; + char value[]; +}; + +typedef struct { + struct link* head; + struct link* tail; + size_t element_size; + size_t length; +} List; + +List* list_new(size_t); +void* list_append(List*); +void list_remove(List*, size_t); +void list_free(List*); + +#endif +