doxygen是否有可能从生成的xml中排除未记录的函数?

前端之家收集整理的这篇文章主要介绍了doxygen是否有可能从生成的xml中排除未记录的函数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想仅为具有doxygen注释的代码生成文档.我已经通过doxygen v.1.8.9.1创建了一个Doxyfile,并将其配置为仅输出xml并隐藏所有未记录的代码
GENERATE_HTML          = NO
GENERATE_LATEX         = NO
GENERATE_XML           = YES
HIDE_UNDOC_MEMBERS     = YES
HIDE_UNDOC_CLASSES     = YES

之后我创建了一个简单的c头test.h,其中包含一个记录的和一个未记录的函数声明:

void foo(int a);

/**
 * "bar" function description
 * @param b sample param
 */
void bar(int b);

通过执行doxygen,我预计只有条形文档才能包含在结果xml中.不幸的是,生成了两个函数的文档.是否可以仅为具有doxygen注释的代码生成文档,或者对于xml输出,doxygen将始终包含所有内容而不管建立什么?

在进一步阅读之前,请确保EXTRACT_ALL设置为NO.

我不是以下解决方案的粉丝,但确实有效.使用doxygens预处理器

#ifdef PROJECT_NO_DOC
void foo(int a); 
#endif /* PROJECT_NO_DOC */

/**
 *  * "bar" function description
 *   * @param b sample param
 *    */
void bar(int b);

注意,在他们的文档中你必须设置一个PREDEFINED宏,但至少在我的doxygen版本中,这不是必需的.他们的文档指定这样做set a predefined macro in the config to do it for you

#ifndef DOXYGEN_SHOULD_SKIP_THIS

 /* code that must be skipped by Doxygen */

#endif /* DOXYGEN_SHOULD_SKIP_THIS */

围绕应隐藏和放置的块:

PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS

配置文件中,只要Doxygen跳过所有块

ENABLE_PREPROCESSING = YES

还有其他方法,但它们带有额外的约束,即确保您的公共文档中不会出现静态方法,您可以将EXTRACT_STATIC设置为NO.

原文链接:https://www.f2er.com/xml/292408.html

猜你在找的XML相关文章