Supports adding insertion around non-insertion replacements.
Summary: Extend `tooling::Replacements::add()` to support adding order-independent replacements. Two replacements are considered order-independent if one of the following conditions is true: - They do not overlap. (This is already supported.) - One replacement is insertion, and the other is a replacement with length > 0, and the insertion is adjecent to but not contained in the other replacement. In this case, the replacement should always change the original code instead of the inserted text. Reviewers: klimek, djasper Subscribers: cfe-commits, klimek Differential Revision: https://reviews.llvm.org/D24515 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@281457 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/Tooling/Core/Replacement.h 11 additions, 7 deletionsinclude/clang/Tooling/Core/Replacement.h
- lib/Tooling/Core/Replacement.cpp 33 additions, 11 deletionslib/Tooling/Core/Replacement.cpp
- unittests/Tooling/RefactoringTest.cpp 72 additions, 5 deletionsunittests/Tooling/RefactoringTest.cpp
Loading
Please register or sign in to comment