Как я минимизирую количество изменений между изменениями с новым выводом doxygen?

!!Отказ от ответственности!! Я работаю над коммерческим инструментом статического анализа (не Линт ПК).!!Отказ от ответственности!!

существует несколько проблем с простым не подход парсинга:

1) Наборы Перегрузки:

возможно, что перегруженная функция имеет объявления, которые прибывают из различных файлов. Могло бы случиться так, что удаление одного заголовочного файла приводит к различной выбираемой перегрузке, а не ошибка компиляции! Результатом будет тихое изменение в семантике, которую может быть очень трудно разыскать впоследствии.

2) Шаблонные специализации:

Подобный примеру перегрузки, если у Вас есть частичные или явные специализации для шаблона, Вы хотите, чтобы они все были видимы, когда шаблон используется. Могло бы случиться так, что специализации для основного шаблона находятся в различных заголовочных файлах. Удаление заголовка со специализацией не вызовет ошибку компиляции, но может привести к неопределенному поведению, если та специализация была бы выбрана. (См.: Видимость шаблонной специализации функции C++ )

, Как указано 'msalters', выполняя полный анализ кода также допускает анализ использования класса. Путем проверки, как класс используется, хотя определенный путь файлов, возможно, что определение класса (и поэтому все его dependnecies) может быть удалено полностью или по крайней мере перемещено в уровень ближе к основному источнику во включать дереве.

6
задан Jon Seigel 29 March 2010 в 02:39
поделиться

1 ответ

Ненавижу отвечать на вопрос, не давая ответа на конкретный вопрос, но, как правило, отслеживать документы doxygen в вашем репозитории - плохая идея. То же самое верно и для сценариев конфигурации, сгенерированных autoconf.

Если вы беспокоитесь о том, что люди не могут создавать документы из-за нехватки doxygen, лучше разместить их в их собственном частном репозитории на вашем языке и локали выбор.

Вы можете модифицировать скрипты сборки, чтобы сделать это для вас, без особых усилий. По моему опыту после нескольких лет работы над бесплатным программным обеспечением / программным обеспечением с открытым исходным кодом, те, кто действительно заботится о документах, смогут создавать их ... но ваш опыт может отличаться.

Устранение повторяющихся конфликтов слияния (т. Е.

6
ответ дан 17 December 2019 в 02:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: