Можно ли выбрать, какое предупреждение Doxygen показать?

Doxygen показывает предупреждение Compound ? is not documented. при создании. Для конкретного проекта я не хочу документировать Compounds. Чтобы удалить беспорядок, я хочу видеть все другие предупреждения, кроме этого. Есть ли способ очистить выход Doxygen?

Ответ 1

Я не думаю, что это возможно, кроме как путем написания собственного постпроцессора для фильтрации вывода Doxygen. В вашем случае это не должно быть слишком сложно, просто grep должно быть достаточно:

doxygen <config_file> | grep -v "warning: Compound .* is not documented"

Я не совсем уверен, почему Doxygen не предоставляет эту функцию: возможно, для этого потребуется слишком много опций или более сложные варианты. Другая возможность заключается в том, что они предполагали, что, поскольку вы хотите, чтобы вас предупреждали, когда что-то не документировано, не должно быть исключений, кроме случаев, когда явно указано в исходном коде (например, с помощью \cond и \endcond), с обоснованием того, что такого рода упущение следует решать только в каждом конкретном случае. Или, возможно, никто не просил их включить эту функцию: не стесняйтесь заполнить запрос функции.

Ответ 2

Я думаю, что вы ищете команды if, ifnot и endif. Просто выберите подходящую метку, затем используйте правильный тег. Пример:.

/*
* \if DISPLAY_COMPOUND
* Compound doc.
* ...
* \endif
*/

doxygen будет оценивать, знает ли он эту метку, а если нет, он будет игнорировать любой комментарий до команды \endif в том же блоке комментариев

Затем вам нужно определить (или нет) эту метку в вашем файле doxyfile в ENABLED_SECTIONS.

#comment the next line if you don't want to document Compound
ENABLED_SECTIONS = DISPLAY_COMPOUND

Посмотрите на команды \cond и \endcond тоже похожие, но не совсем одинаковые (они включают или отключают целые разделы файла, а не только один блок комментариев).

Ответ 3

Вы можете отключить предупреждения в конфигурации doxygen. См. Здесь: доксогенность доксигена

Мой любимый: WARN_IF_UNDOCUMENTED = NO