doxygen是否有可能从生成的xml中排除未记录的函数?
发布时间:2020-12-16 07:45:53 所属栏目:百科 来源:网络整理
导读:我想仅为具有doxygen注释的代码生成文档.我已经通过doxygen v.1.8.9.1创建了一个Doxyfile,并将其配置为仅输出xml并隐藏所有未记录的代码: GENERATE_HTML = NOGENERATE_LATEX = NOGENERATE_XML = YESHIDE_UNDOC_MEMBERS = YESHIDE_UNDOC_CLASSES = YES 之后
我想仅为具有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. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |