CppDepend lets query the code base over LINQ queries thanks to CQLinq. For example the following CQLinq query matches all public methods that have more than 30 lines of code:
120 default queries and rules are provided when you create a new CppDepend project. They are easy to read and easy to adapt to your need.
Writing CQLinq queries and constraints is straightforward both because it is C# LINQ syntax and because CppDepend provides a CQLinq editor which supports:
Also, once the query is compiled, it gets executed immediately and its result is well displayed and browsable:
Powerful and elaborated queries and rules can be written with CQLinq, like the following one for example:
Short CQLinq queries can be written (or even generated) to get some immediate answers to questions about a code base:
You can also be warned automatically when a CQLinq query returns a certain result. Such a CQLinq code query is actually a code rule such as: