是否可以选择显示哪个Doxygen警告?

时间:2011-06-13 17:36:06

标签: warnings filtering doxygen

Doxygen在构建时显示Compound ? is not documented.警告。对于特定项目,我不想记录化合物。为了消除混乱,我想看到除了那个之外的所有其他警告。有没有办法清理Doxygen输出?

3 个答案:

答案 0 :(得分:5)

我不认为这是可能的,除了编写自己的后处理器来过滤doxygen输出。在你的情况下,这不应该太难,一个简单的grep就足够了:

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

我不确定为什么doxygen不提供此功能:可能需要太多选项或更复杂的选项。另一种可能性是,他们认为,由于您希望在没有记录某些内容时收到警告,除非在源代码中明确指定(例如,使用\cond\endcond),否则应该没有异常,理由是这种遗漏只能根据具体情况来决定。或者也许没有人要求他们包含此功能:随意填写feature request

答案 1 :(得分:2)

我认为您正在寻找的是ififnotendif命令。只需确定合适的标签,然后使用正确的标签。例:

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

doxygen将评估它是否知道此标签,如果不知道,他将忽略同一评论栏中\endif命令之前的任何评论

然后你需要在ENABLED_SECTIONS中的doxyfile中定义(或不​​定义)该标签。

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

同时查看\cond\endcond命令,它们相似但不完全相同(它们启用或禁用文件的整个部分,而不仅仅是单个注释块)。

答案 2 :(得分:0)

您可以在doxygen配置中关闭警告。 见这里:doxygen documenation

我最喜欢的是:WARN_IF_UNDOCUMENTED = NO