aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorIlya Biryukov <ibiryukov@google.com>2019-12-18 11:52:43 +0100
committerIlya Biryukov <ibiryukov@google.com>2019-12-18 12:19:03 +0100
commit1ad15046dcf6ff8bafc4a1ea13f214f8d6ba7de6 (patch)
tree6160b7310fe09b0160190bd699fa2e7b4a3c715d /clang/lib/Frontend/CompilerInvocation.cpp
parentbb1b0bc4e57428ce364d3d6c075ff03cb8973462 (diff)
downloadllvm-1ad15046dcf6ff8bafc4a1ea13f214f8d6ba7de6.zip
llvm-1ad15046dcf6ff8bafc4a1ea13f214f8d6ba7de6.tar.gz
llvm-1ad15046dcf6ff8bafc4a1ea13f214f8d6ba7de6.tar.bz2
[Syntax] Allow to mutate syntax trees
Summary: This patch adds facilities to mutate the syntax trees and produce corresponding text replacements. The public interface of the syntax library now includes facilities to: 1. perform type-safe modifications of syntax trees, 2. compute textual replacements to apply the modifications, 3. create syntax trees not backed by the source code. For each of the three, we only add a few example transformations in this patch to illustrate the idea, support for more kinds of nodes and transformations will be done in follow-up patches. The high-level mutation operations are implemented on top of operations that allow to arbitrarily change the trees. They are considered to be implementation details and are not available to the users of the library. Reviewers: sammccall, gribozavr2 Reviewed By: gribozavr2 Subscribers: merge_guards_bot, mgorny, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64573
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions