Determine if a C/C++ codebase prefers commas or semicolons for variable declarations.
vardecl statically analyzes your C/C++ source files to determine the preferred method of declaring new variables.
To build vardecl, you'll need Rust and Clang (for libclang
).
$ cargo install --git https://github.com/kshvmdn/vardecl.git
$ git clone https://github.com/kshvmdn/vardecl.git
$ cd vardecl
$ cargo build --release
$ mv ./target/release/vardecl ~/.cargo/bin
vardecl expects one or more files as input.
$ vardecl /path/to/file ...
$ cat main.c
void f() {
int a, b = 2;
int c;
int d;
int e; int f = 1;
char *g,
h,
i = 'a';
}
$ vardecl main.c
comma-delimited decls : 3
semicolon-delimited decls : 3
The example should be self-explanatory: there are three pairs of comma-delimited declarations (int a, b;
, char *g, h;
, char h, i;
) and three pairs of semicolon-delimited declarations (int c; int d;
, int d; int e;
, int e; int f;
).
This project is completely open source, feel free to open an issue or submit a pull request.
I'm also quite new to Rust, so I'd love any feedback.