Clang — обнаружение, когда файлы заголовка сделаны

Я новичок в лязг и я пытаюсь добавить #включают<> после того, как все остальные включения сделаны.

#include<iostream>
#include<math>
// I want to add my include here.

Я прошу прощения, если это глупый вопрос. Но я не могу найти, какой AST Matcher делает это. Я имею в виду:

http://clang.llvm.org/docs/LibASTMatchersReference.html

0

Решение

Я не уверен, что анализ AST сильно поможет: директивы #include заменяются препроцессором до разбора кода в AST. Кажется, они не представлены в АСТ.

Другим подходом могут быть ловушки препроцессора Clang, которые позволяют регистрировать обратные вызовы в различных точках во время предварительной обработки:

https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html

1

Другие решения

Других решений пока нет …