Lines Matching full:vec
96 #define VEC_CLEAR(vec) do { \ argument
97 xfree((vec).buf); \
98 (vec).buf = NULL; \
99 (vec).ptr = 0; \
100 (vec).len = 0; \
107 #define VEC_CLEAREXT(vec, fun) do { \ argument
109 for (vec_tmp = 0; vec_tmp < (vec).ptr; vec_tmp ++) { \
110 (fun)(&(vec).buf[vec_tmp]); \
112 VEC_CLEAR(vec); \
118 #define VEC_ADD(vec, x) do { \ argument
119 (vec).buf = vector_expand((vec).buf, sizeof *((vec).buf), \
120 &(vec).ptr, &(vec).len, 1); \
121 (vec).buf[(vec).ptr ++] = (x); \
127 #define VEC_ADDMANY(vec, xp, num) do { \ argument
129 (vec).buf = vector_expand((vec).buf, sizeof *((vec).buf), \
130 &(vec).ptr, &(vec).len, vec_num); \
131 memcpy((vec).buf + (vec).ptr, \
132 (xp), vec_num * sizeof *((vec).buf)); \
133 (vec).ptr += vec_num; \
139 #define VEC_ELT(vec, idx) ((vec).buf[idx]) argument
144 #define VEC_LEN(vec) ((vec).ptr) argument
149 #define VEC_TOARRAY(vec) xblobdup((vec).buf, sizeof *((vec).buf) * (vec).ptr) argument