[cfe-dev] [RFC] Easier source-to-source transformations with clang tooling

Yitzhak Mandelbaum via cfe-dev cfe-dev at lists.llvm.org
Fri Jan 18 13:43:32 PST 2019


Thanks! I've added it to a revision (https://reviews.llvm.org/D56933), but
I wasn't sure what lists to subscribe it to (if any) given that I don't
intend it yet for proper review.

I haven't ported check, but do have a demo check (using Transformer as a
whole) that I can add. I'll ping the thread when that's done.

On Fri, Jan 18, 2019 at 3:19 PM Jonas Toth <development at jonas-toth.eu>
wrote:

> Hi Yitzhak,
>
> your code looks very interesting.
>
> It might be a good fit for uitlity that clang-refactor can use, too. (not
> sure about the state of clang-refactor though)
> I would be interested how your framework integrates into clang-tidy, do
> you have a reference check that you ported to your approach (i have seen
> some references to clang-tidy code)?
>
> P.S. It might be a good idea to make your diff a full revision, as right
> now the discussion feature can not be used.
>
> Best, Jonas
> Am 18.01.19 um 19:29 schrieb Yitzhak Mandelbaum via cfe-dev:
>
> After some delay, I've created a diff to accompany the doc.  In
> particular, here's the Stencil library, which provides for generating code
> in a format-string style:
>
> https://reviews.llvm.org/differential/diff/182553/
>
> Please see the tests for various examples and the doc for more explanation.
>
> On Fri, Nov 16, 2018 at 10:22 AM Yitzhak Mandelbaum <yitzhakm at google.com>
> wrote:
>
>> Hi all,
>>
>> I have a proposal for a framework that makes it easier to write source to
>> source transformations with the clang::Tooling libraries, including
>> clang-tidy checks.
>>
>> The full proposal is in this doc:
>>
>>
>> https://docs.google.com/document/d/1ppw0RhjwsrbBcHYhI85pe6ISDbA6r5d00ot3N8cQWeQ/edit?usp=sharing
>>
>> From the doc:
>> Transformer is a framework that aims to simplify development of
>> clang-based source-to-source transformations.  It focuses on the particular
>> class of transformations that act only locally — that is, use local
>> information about the code and make local changes  (like a syntax-aware
>> “find-and-replace”); and at scale — that is, will be carried out on many
>> source files.  The target audience is users that are comfortable with, or
>> willing to become comfortable with, the clang AST matchers library.
>>
>> I have a working prototype of this library which I've used on small
>> examples inside Google.  I plan to put together a patch for reference
>> next week, although the doc should stand on its own.
>>
>> Thanks!
>> Yitzhak Mandelbaum
>>
>
> _______________________________________________
> cfe-dev mailing listcfe-dev at lists.llvm.orghttp://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20190118/20253c99/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4847 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20190118/20253c99/attachment-0001.bin>


More information about the cfe-dev mailing list