The C programming language macro extension: use Rust-like macros in C code!
cargo run -- ./path-to-file.cmex
/* see examples/vector.cmex */
macro_rules! vec {
[$($x:expr),*] => {
({
struct vec v;
vec_init(&v);
$(vec_push(&v, $x);)*
v;
})
}
}
int main(void) {
struct vec a = vec![1, 2, 3];
vec_print(&a);
return 0;
}