.TH CGREP "29 Feb 2020" .SH Farzad Sadeghi cgrep \ - grep for C-family source files .SH NAME .PP cgrep .SH SYNOPSIS .PP cgrep [options] [target] .SH DESCRIPTION .PP \fBCgrep\fP [ OPTION ] [ TARGET ] \fIcgrep\fP cgrep is a grep-like tool for the C-family languages. It supports a subset of grep options to search through C-famlily source files. cgrep is written using clang's libtooling and as such will accept any option clang accepts as well. Like clang, cgrep will require you to have a compilation database. .PP If you can build your sources without any specific command-line options, you can pass "--" as the last command-line option which tells clang to try to build the source without a compilation database. If you are using \fBmake\fP to build your code-base, you can use \fBBEAR(1)\fP to generate a compilation database. .SS Options .PP .TP \fB-A=\fP same as grep, how many lines after the matched line to print .TP \fB-B=\fP same as grep, howm many lines before the matched line to print .TP \fB--all\fP turns on all switches other than nameddecl .TP \fB--awk\fP outputs location in a gawk freidnly format .TP \fB--call\fP match function calls only .TP \fB--class\fP match class declrations only .TP \fB--cxxcall\fP match member function calls only .TP \fB--declrefexpr\fP matches declrefexpr .TP \fB--dir=\fP recursively goes through all the files and directories. assumes compilation databases are present for all source files. .TP \fB--extra-arg=\fP Additional argument to append to the compiler command line .TP \fB--extra-arg-before=\fP Additional argument to prepend to the compiler command line .TP \fB--func\fP match functions only .TP \fB--header\fP match headers in header inclusions .TP \fB--macro\fP match macro definitions .TP \fB--mainfile\fP match identifiers in the main file only .TP \fB--memfunc\fP match member functions only .TP \fB--memvar\fP match member variables only .TP \fB--nameddecl\fP matches all named declrations .TP \fB-p=\fP Build path .TP \fB--regex=\fP the regex to match against .TP \fB--struct\fP match structures only .TP \fB--syshdr\fP match identifiers in system header as well .TP \fB--union\fP match unions only .TP \fB--var\fP match variables only .SH "FILES" .PP \fBcgrep\fP The cgrep executable. .SH "SEE ALSO" .PP BEAR(1) .SH "COPYRIGHT" .PP Copyright (C) by Farzad Sadeghi .SH "AUTHORS" Farzad Sadeghi