[PATCH] cpp11-migrate: Transform responsible applying replacements

Edwin Vane edwin.vane at intel.com
Mon Jun 17 11:30:00 PDT 2013


Hi arielbernal, tareqsiraj,

To make it possible for replacements made to headers as part of
transforming one translation unit to not be visible to the transform of
other translation units, Transform now handles replacement application
as part of its end-of-source handling. Several things were simplified as
a result:

- The duplicated code in every transform for applying replacements is
  now gone and replaced with on location in Transform.
- RefactoringTool is no longer used since Transform houses the Replacements
  structure.
- RewriterContainer is now a private implementation detail of Transform (also
  renamed to RewriterManager since its behaviour is slightly different now with
  respect to lifetime of objects).
- There's now no distinction between input and output file state.

Misc notes:

- Interface changes reflected in unit tests.
- Replacements for files other than the main file are assumed to be for headers
  and stored as such.

http://llvm-reviews.chandlerc.com/D993

Files:
  cpp11-migrate/AddOverride/AddOverride.cpp
  cpp11-migrate/AddOverride/AddOverride.h
  cpp11-migrate/Core/FileOverrides.cpp
  cpp11-migrate/Core/FileOverrides.h
  cpp11-migrate/Core/SyntaxCheck.cpp
  cpp11-migrate/Core/Transform.cpp
  cpp11-migrate/Core/Transform.h
  cpp11-migrate/LoopConvert/LoopConvert.cpp
  cpp11-migrate/LoopConvert/LoopConvert.h
  cpp11-migrate/UseAuto/UseAuto.cpp
  cpp11-migrate/UseAuto/UseAuto.h
  cpp11-migrate/UseNullptr/UseNullptr.cpp
  cpp11-migrate/UseNullptr/UseNullptr.h
  cpp11-migrate/tool/Cpp11Migrate.cpp
  unittests/cpp11-migrate/PerfSupportTest.cpp
  unittests/cpp11-migrate/TransformTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D993.1.patch
Type: text/x-patch
Size: 32263 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130617/1efe3b1e/attachment.bin>


More information about the cfe-commits mailing list