如何让 doxygen 跳过所有名为 "detail" 的(子)命名空间?

How do I make doxygen skip all (sub)-namespaces named "detail"?

我正在使用 doxygen 为我的 C++ 项目生成文档。

我通常希望 doxygen 不跳过我文件中定义的任何内容;但是这个规则的一个例外是每当我 "hide" 将它放在命名空间或子命名空间中时,命名为 detail(这在许多库中是很常见的做法)。

那么我怎样才能让 doxygen 跳过所有命名空间 foo::bar::baz::etc::leaf_namespace,使得其中一个元素是 detail?并且不在其下列出任何内容?

您可以使用 EXCLUDE_SYMBOLS 配置选项。

确实,正如 Jakub 所说,EXCLUDE_SYMBOLS 是可以使用的选项。在我的具体情况下,确切的配置设置是:

EXCLUDE_SYMBOLS        = detail::*,*::detail::*