1234567891011121314151617181920212223242526272829 |
- #ifndef VECTOR_H_
- #define VECTOR_H_
- #include "vc_vector.h"
- typedef struct Vector Vector;
- typedef bool (*Vector_func_push)(Vector*, const void*);
- typedef bool (*Vector_func_replace)(Vector*, size_t, const void*);
- typedef void* (*Vector_func_pop)(Vector*);
- typedef void (*Vector_func)(Vector*);
- typedef size_t (*Vector_func_count)(Vector*);
- typedef void* (*Vector_func_get)(Vector*, size_t i);
- struct Vector {
- vc_vector* _vector;
- Vector_func_push consume;
- Vector_func_push push;
- Vector_func_pop pop;
- Vector_func_replace replace;
- Vector_func clear;
- Vector_func_count count;
- Vector_func_get get;
- };
- void free_Vector(Vector* self);
- Vector* new_Vector(int size, size_t obj_size, vc_vector_deleter* deleter);
- Vector* new_VectorFromVC(vc_vector* vector);
- #endif
|