ccm/lib/vec.h

24 lines
425 B
C
Raw Normal View History

2024-03-18 17:20:40 +00:00
#ifndef CCM_VEC_H
#define CCM_VEC_H
#include "commons.h"
/**
* @file saze
**/
typedef struct {
size_t capacity;
size_t size;
void** data;
} vec_t;
void vec_init(vec_t* self);
void vec_free_elements(vec_t* self, void (*free_fun)(void*));
void vec_free(vec_t* self);
void vec_push(vec_t* self, void* value);
void* vec_pop(vec_t* self);
2024-03-20 15:26:59 +00:00
void vec_remove(vec_t* self, size_t idx, void (*free_fun)(void*));
2024-03-18 17:20:40 +00:00
#endif