From 8a3ae735dcb95c2ac8a9dd3b12e6342c14387563 Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Tue, 17 Mar 2026 20:30:03 +0000 Subject: [PATCH] prick_vec: PRICK_SHORTHAND quality of life feature A little QoL feature implemented as a preprocesser flag, where we provide macros without the `prick_` prefix that link to the prick_vec functions. --- prick_vec.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/prick_vec.h b/prick_vec.h index de60e01..c31981c 100644 --- a/prick_vec.h +++ b/prick_vec.h @@ -9,6 +9,11 @@ #include "prick_vec.h" in one of your code units. + To remove the `prick_` namespacing, please put: + #define PRICK_SHORTHAND + in any files before including prick_vec.h. Standard preprocesser rules apply + with regards to hierarchy. + This library defines another form of dynamically sized array as opposed to prick_darr.h. This one is closer to the one classically implemented by most; a structure with some metadata and a pointer to the raw buffer. This way, @@ -184,6 +189,22 @@ size_t prick_vec_find(prick_vec_t *vec, void *ptr, size_t ptrsize) #undef MAX #endif +#ifdef PRICK_SHORTHAND + +typedef prick_vec_t vec_t; +#define vec_append prick_vec_append +#define vec_append_byte prick_vec_append_byte +#define vec_data prick_vec_data +#define vec_ensure_capacity prick_vec_ensure_capacity +#define vec_ensure_free prick_vec_ensure_free +#define vec_free prick_vec_free +#define vec_clone prick_vec_clone +#define vec_pop prick_vec_pop +#define vec_find prick_vec_find +#define VEC_GET PRICK_VEC_GET + +#endif + #endif /* Copyright (C) 2026 Aryadev Chavali