Я пишу скрипт для обнаружения ошибок форматирования в моем коде на C++. (например, убедитесь, что все переменные-члены имеют префикс m_
). Одна из вещей, которую я хочу сделать, - убедиться, что типы указателей имеют астерикс, прикрепленный к типу (int* num
, а не int *num
).Получить фактическое написание курсора lib clang/type
Так что мне нужно получить текст типа, как в исходном коде. Однако получение орфографии курсора или типа возвращает довольно печатную версию, она всегда будет возвращать int *
, даже если источник имеет int*
.
Чтобы обойти это, я получаю размер курсора и получаю подстроку из исходного файла и проверяю это. Однако, похоже, нет способа получить размер типа, и поэтому я не могу получить фактическое правописание? Есть ли способ сделать это? возможно, получив маркеры этого типа, а затем получив их размеры?
(Я использую питон привязки, но могу переключиться на API C при необходимости)
Я уверен, что жетоны не включают пробел. –