c-doxygen是否可能只在某个模块中提取静态函数



在我的main.c中,有许多用static标记的函数,但如果能为下一个人(或我自己(记录下来,那就太好了,因为它们是应用程序关键的/特定的。然而,提取所有静态成员是极端的,因为大多数模块都使用static关键字来隐藏这些详细信息。staticmain.c文件中使用的唯一原因是,它不太可能以某种方式作为依赖项包含在其他项目中,尽管它实际上并不是为了这个目的(它是一个嵌入式应用程序(。这似乎不是一个激进的用例,我经常看到main.c中大量使用static函数,尽管它可能永远不会包含在其他地方。

使用doxygen,是否有一种方法可以仅在一个模块中提取静态函数?

您可以尝试在doxyfile中设置EXTRACT_STATIC = YES(令人惊讶(和EXTRACT_LOCAL_CLASSES = NO。然后,除了包含main()的一个C文件外,不要在任何C文件的顶部包含file命令。但是,请在每个H文件的顶部包含file,该文件声明了其他C文件中的全局函数。

您会发现,这些全局函数的任何doxygen标记都将包含在doxygen输出中,即使该标记位于不再包含file命令的C文件中。幸运的是,您将在主模块中记录您想要的静态函数。

最新更新