CDT DOM

What is a DOM? Well, let me tell you. The DOM, or Document Object Model, is a programmatic way to see the underlying source code in both a syntactic and semantic view using an Abstract Syntax Tree (AST) and to allow changes in the AST to be reflected back out to the source code. Sounds simple enough, but with the complexity of the C and C++ languages with an intermixing of pre-processor goodness, it certainly has it's challenges.

Syntactic View

Semantic View

Workspace-Wide View

Rewriting