Welcome to the srcTools project homepage.

Introduction

What is srctools? srcTools is essentially a C++ modeling framework built on top of srcML that attempts to provide certain compiler-like features for applications and tools that need a) more information than they can get from either grep or an XML query against a srcML document and b) a more holistic view of the source code than is often provided by a compiler. srcTools is entirely written and maintained by me, Andrew Sutton.

At the core of the srcTools framework is a pair of libraries that implement AST-like data structures and parsing facilities for C preprocessor constructs and C++ program semantics. These libraries provide programmatic hooks (actually signals) for building programs that tie into the parsing mechanism in order to operate on the generated AST.

In addition to providing the framweork, there are also a couple of tools that we distribute with the program. The first, srcModel, generates a program database from a body of source code. The second, srcCon, is a research prototype that tries to identify C++0x concept requirements in function templates. srcTools is very much a research prototype that is prone to change frequently. It would not be a good idea to rely on the stability of any programming API's or the fact that it will continue to work as advertised from version to version. This software is directly supporting academic research, and so doesn't receive as much TLC as a production system would. I do my best to keep things more or less functional, but time constraints do prevent proper maintenance of the project.

News and Events