Использование комментариев Lint с Doxygen
Для документации нам обычно приходится создавать дополнительный документ, описывающий, что мы делали, когда в коде были отключены любые сообщения lint. (e.g. /* lint --e228)
, Было бы намного проще использовать его с doxygen
(поскольку мы создаем это так или иначе).
Хотя я не смог найти решение о том, как сделать doxygen
используя эти комментарии. Кто-нибудь пробовал это? Есть ли решение, как использовать stric '/*lint'
но в любом случае добавить его в doxygen
?
Спасибо!
1 ответ
Это может быть достигнуто путем определения макроса для расширения в комментарий выражения lint, но при этом макрос раскрывается в другой комментарий при расширении с помощью doxygen
,
Хитрость заключается в том, чтобы использовать -save
Инструкция к ПК-линтуТМ или FlexeLintTM:
#ifndef LINT_CONTROL
#define LINT_CONTROL(X) /*lint -save X */ //lint X
#endif
int main () {
int a; LINT_CONTROL(-e530)
return a != a;
}
Тогда в вашем doxygen
файл конфигурации, вы можете включить расширение определенных макросов препроцессора. В частности, мы можем изменить LINT_CONTROL
расширяться в doxygen
комментарий вместо.
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
PREDEFINED = "LINT_CONTROL(X)=//! lint control: X"
В качестве альтернативы, если у вас есть FlexeLintTM, вы можете изменить скрытый источник, чтобы комментарий doxygen можно было использовать для запуска элемента управления lint. Техника описана на форуме Gimpel Software.
PC-lint и FlexeLint являются товарными знаками Gimpel Software.