В течение долгого времени теперь я использовал pygccxml, чтобы проанализировать и анализировать мой исходный код C++: это помогает мне сделать некоторую умную генерацию кода во время нашего процесса сборки.
Недавно я читал много о преимуществах стека LLVM и особенно преимуществах, которые синтаксический анализатор Лязга LLVM дает компиляции C++. Я теперь задаюсь вопросом, существует ли какой-либо интерфейс Python для Лязга таким образом, что я мог использовать его в качестве основания для некоторых моих существующих задач генерации кода?
После дальнейших поисков я обнаружил, что в выпуске LLVM 2.7 может быть начало чего-то полезного:
Во временном интервале LLVM 2.7 команда Clang внес много улучшений ....
Привязки CIndex API и Python: Clang теперь включает C API как часть библиотеки CIndex. Хотя мы вносим некоторые изменения в API в будущем, он должен быть стабильным и предназначен для использования во внешних проектах. Дополнительную информацию см. В документации Clang doxygen CIndex. CIndex API также включает предварительный набор привязок Python.
Я не уверен, насколько это полезно на практике, конечно, похоже, что это могло бы стать основой для создания эквивалента pygccxml на основе LLVM, но сам по себе это не такая библиотека.