10 typedef void (*RingBufferDtor)(void *element);
22 RingBuffer create_ring_buffer(size_t element_size,
26 RingBuffer result = {0};
27 result.element_size = element_size;
28 result.capacity = capacity;
30 result.data = malloc(result.element_size * result.capacity);
35 void destroy_ring_buffer(RingBuffer buffer)
40 void ring_buffer_push(RingBuffer *buffer, void *element);
41 int ring_buffer_pop(RingBuffer *buffer);
42 void *ring_buffer_top(RingBuffer *buffer);
44 #endif // RING_BUFFER_H_