Skip to content

Determine if a C/C++ codebase prefers commas or semicolons for variable declarations.

License

Notifications You must be signed in to change notification settings

kshvmdn/clang-decl-type-stats

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vardecl

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.

Demo

asciicast

Install

Prerequisites

To build vardecl, you'll need Rust and Clang (for libclang).

via Cargo
$ cargo install --git https://github.com/kshvmdn/vardecl.git
Build manually
$ git clone https://github.com/kshvmdn/vardecl.git
$ cd vardecl
$ cargo build --release
$ mv ./target/release/vardecl ~/.cargo/bin

Usage

vardecl expects one or more files as input.

$ vardecl /path/to/file ...

Examples

$ 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;).

Contribute

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.

About

Determine if a C/C++ codebase prefers commas or semicolons for variable declarations.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages