CVector
4.1.0
A C++ style vector library in strict ANSI C (C89)
|
#include <stdlib.h>
Go to the source code of this file.
Data Structures | |
struct | cvector_TYPE |
Data structure for TYPE vector. More... | |
Macros | |
#define | CVEC_SIZE_T size_t |
#define | CVEC_SZ |
Typedefs | |
typedef CVEC_SIZE_T | cvec_sz |
Functions | |
int | cvec_TYPE (cvector_TYPE *vec, cvec_sz size, cvec_sz capacity, void(*elem_free)(void *), int(*elem_init)(void *, void *)) |
int | cvec_init_TYPE (cvector_TYPE *vec, TYPE *vals, cvec_sz num, void(*elem_free)(void *), int(*elem_init)(void *, void *)) |
cvector_TYPE * | cvec_TYPE_heap (cvec_sz size, cvec_sz capacity, void(*elem_free)(void *), int(*elem_init)(void *, void *)) |
cvector_TYPE * | cvec_init_TYPE_heap (TYPE *vals, cvec_sz num, void(*elem_free)(void *), int(*elem_init)(void *, void *)) |
int | cvec_copyc_TYPE (void *dest, void *src) |
int | cvec_copy_TYPE (cvector_TYPE *dest, cvector_TYPE *src) |
int | cvec_push_TYPE (cvector_TYPE *vec, TYPE *val) |
void | cvec_pop_TYPE (cvector_TYPE *vec, TYPE *ret) |
int | cvec_pushm_TYPE (cvector_TYPE *vec, TYPE *a) |
void | cvec_popm_TYPE (cvector_TYPE *vec, TYPE *ret) |
int | cvec_insertm_TYPE (cvector_TYPE *vec, cvec_sz i, TYPE *a) |
int | cvec_insert_arraym_TYPE (cvector_TYPE *vec, cvec_sz i, TYPE *a, cvec_sz num) |
void | cvec_replacem_TYPE (cvector_TYPE *vec, cvec_sz i, TYPE *a, TYPE *ret) |
int | cvec_extend_TYPE (cvector_TYPE *vec, cvec_sz num) |
int | cvec_insert_TYPE (cvector_TYPE *vec, cvec_sz i, TYPE *a) |
int | cvec_insert_array_TYPE (cvector_TYPE *vec, cvec_sz i, TYPE *a, cvec_sz num) |
int | cvec_replace_TYPE (cvector_TYPE *vec, cvec_sz i, TYPE *a, TYPE *ret) |
void | cvec_erase_TYPE (cvector_TYPE *vec, cvec_sz start, cvec_sz end) |
void | cvec_remove_TYPE (cvector_TYPE *vec, cvec_sz start, cvec_sz end) |
int | cvec_reserve_TYPE (cvector_TYPE *vec, cvec_sz size) |
int | cvec_set_cap_TYPE (cvector_TYPE *vec, cvec_sz size) |
int | cvec_set_val_sz_TYPE (cvector_TYPE *vec, TYPE *val) |
int | cvec_set_val_cap_TYPE (cvector_TYPE *vec, TYPE *val) |
TYPE * | cvec_back_TYPE (cvector_TYPE *vec) |
void | cvec_clear_TYPE (cvector_TYPE *vec) |
void | cvec_free_TYPE_heap (void *vec) |
void | cvec_free_TYPE (void *vec) |
Variables | |
cvec_sz | CVEC_TYPE_SZ |
#define CVEC_SIZE_T size_t |
Definition at line 7 of file cvector_template2.h.
#define CVEC_SZ |
Definition at line 11 of file cvector_template2.h.
typedef CVEC_SIZE_T cvec_sz |
Definition at line 12 of file cvector_template2.h.
TYPE* cvec_back_TYPE | ( | cvector_TYPE * | vec | ) |
void cvec_clear_TYPE | ( | cvector_TYPE * | vec | ) |
int cvec_copy_TYPE | ( | cvector_TYPE * | dest, |
cvector_TYPE * | src | ||
) |
int cvec_copyc_TYPE | ( | void * | dest, |
void * | src | ||
) |
void cvec_erase_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | start, | ||
cvec_sz | end | ||
) |
int cvec_extend_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | num | ||
) |
void cvec_free_TYPE | ( | void * | vec | ) |
void cvec_free_TYPE_heap | ( | void * | vec | ) |
int cvec_init_TYPE | ( | cvector_TYPE * | vec, |
TYPE * | vals, | ||
cvec_sz | num, | ||
void(*)(void *) | elem_free, | ||
int(*)(void *, void *) | elem_init | ||
) |
cvector_TYPE* cvec_init_TYPE_heap | ( | TYPE * | vals, |
cvec_sz | num, | ||
void(*)(void *) | elem_free, | ||
int(*)(void *, void *) | elem_init | ||
) |
int cvec_insert_array_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | i, | ||
TYPE * | a, | ||
cvec_sz | num | ||
) |
int cvec_insert_arraym_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | i, | ||
TYPE * | a, | ||
cvec_sz | num | ||
) |
int cvec_insert_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | i, | ||
TYPE * | a | ||
) |
int cvec_insertm_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | i, | ||
TYPE * | a | ||
) |
void cvec_pop_TYPE | ( | cvector_TYPE * | vec, |
TYPE * | ret | ||
) |
void cvec_popm_TYPE | ( | cvector_TYPE * | vec, |
TYPE * | ret | ||
) |
int cvec_push_TYPE | ( | cvector_TYPE * | vec, |
TYPE * | val | ||
) |
int cvec_pushm_TYPE | ( | cvector_TYPE * | vec, |
TYPE * | a | ||
) |
void cvec_remove_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | start, | ||
cvec_sz | end | ||
) |
int cvec_replace_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | i, | ||
TYPE * | a, | ||
TYPE * | ret | ||
) |
void cvec_replacem_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | i, | ||
TYPE * | a, | ||
TYPE * | ret | ||
) |
int cvec_reserve_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | size | ||
) |
int cvec_set_cap_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | size | ||
) |
int cvec_set_val_cap_TYPE | ( | cvector_TYPE * | vec, |
TYPE * | val | ||
) |
int cvec_set_val_sz_TYPE | ( | cvector_TYPE * | vec, |
TYPE * | val | ||
) |
int cvec_TYPE | ( | cvector_TYPE * | vec, |
cvec_sz | size, | ||
cvec_sz | capacity, | ||
void(*)(void *) | elem_free, | ||
int(*)(void *, void *) | elem_init | ||
) |
cvector_TYPE* cvec_TYPE_heap | ( | cvec_sz | size, |
cvec_sz | capacity, | ||
void(*)(void *) | elem_free, | ||
int(*)(void *, void *) | elem_init | ||
) |
|
extern |