在我的main.c
中,有许多用static
标记的函数,但如果能为下一个人(或我自己(记录下来,那就太好了,因为它们是应用程序关键的/特定的。然而,提取所有静态成员是极端的,因为大多数模块都使用static
关键字来隐藏这些详细信息。static
在main.c
文件中使用的唯一原因是,它不太可能以某种方式作为依赖项包含在其他项目中,尽管它实际上并不是为了这个目的(它是一个嵌入式应用程序(。这似乎不是一个激进的用例,我经常看到main.c
中大量使用static
函数,尽管它可能永远不会包含在其他地方。
使用doxygen
,是否有一种方法可以仅在一个模块中提取静态函数?
您可以尝试在doxyfile中设置EXTRACT_STATIC = YES
(令人惊讶(和EXTRACT_LOCAL_CLASSES = NO
。然后,除了包含main()
的一个C文件外,不要在任何C文件的顶部包含file
命令。但是,请在每个H文件的顶部包含file
,该文件声明了其他C文件中的全局函数。
您会发现,这些全局函数的任何doxygen标记都将包含在doxygen输出中,即使该标记位于不再包含file
命令的C文件中。幸运的是,您将在主模块中记录您想要的静态函数。