23 #ifndef _ZEBRA_VECTOR_H
24 #define _ZEBRA_VECTOR_H
34 #define VECTOR_MIN_SIZE 1
39 #define vector_slot(V,I) ((V)->index[(I)])
44 #define vector_active(V) ((V)->active)
47 vector vector_init(
unsigned int size);
48 void vector_ensure(vector v,
unsigned int num);
49 int vector_empty_slot(vector v);
50 int vector_set(vector v,
void *val);
51 int vector_set_index(vector v,
unsigned int i,
void *val);
52 void vector_unset(vector v,
unsigned int i);
53 unsigned int vector_count(vector v);
54 void vector_only_wrapper_free(vector v);
55 void vector_only_index_free(
void *index);
56 void vector_free(vector v);
57 vector vector_copy(vector v);
59 void *vector_lookup(vector,
unsigned int);
60 void *vector_lookup_ensure(vector,
unsigned int);
62 extern void *tall_vty_vec_ctx;