omtcyfz added a comment.

Bringing results of an offline discussion with Eric (@ioeric) live.

Eric's point was that this patch should only care about `clang-refactor` and 
introduce changes directly related to creating `clang-rename`. `clang-rename` 
and all other tools migration can be done later, which is also good in terms of 
this patch not growing too large.

Another point was that it should be easier if there would be a class, from 
which refactoring tools would derive and use it as an interface.

Advantages are as follows:

- It would be easier to implement multi-TU support as the tools wouldn't simply 
care about that part while delegating the "hard work" to the common part.
- It would be easier to implement new tools, because there will be a slightly 
simpler interface.
- It would be easier to setup unit tests and other routine, because right now 
all tools have to implement basic routine for unit tests, for example, which is 
just copied from the other tools' unit tests with slight changes. Delegating 
that to the common interface is also nice.

The current diff isn't final, but I wanted to bring it to the reviews, because 
it gives an overview of what I am doing and if there are any high-level 
comments to address it's better to get them sooner than later.


https://reviews.llvm.org/D24192



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to