mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-09-24 22:02:23 +01:00
The approach uses a RecursiveASTVisitor rather than matchers. Matchers and callbacks do not compose neatly and introduce significant runtime overhead over RecursiveASTVisitor when an action needs to be performed on most nodes.
727 B
727 B
C++ migration tooling
Table of contents
Overview
migrate_cpp assists in migration of C++ code to Carbon. It's currently being
assembled; more documentation will be added later.
Structure
The migrate_cpp tool uses a clang::RecursiveASTVisitor to traverse Clang's
AST and, to each node, associate replacements. Each node's replacement is a
sequence of text, or a reference to some other node that should be used to
replace it.