【发布时间】:2015-12-09 09:07:23
【问题描述】:
与我的团队一起创建需要记录的软件。我发现 doxygen 似乎是一个不错的程序。虽然不支持我们的编程语言(RAPID)。
昨天我问了一个关于这个的问题。阿尔伯特很友善地提供了正确方向的线索。过滤器应该是正确的方法,而不是预处理器。
但是我没有提供可以在这里找到的 RAPID 代码的语法: http://futurecnc.code.arc.cmu.edu/wp/wp-content/uploads/2011/12/RAPID-Reference-Manual-Instructions.pdf
我在 doxygen 网站上找到了有关创建过滤器的帮助指南。我还找到了一个由 Bert Jordan 为 perl 创建的示例过滤器:
http://www.doxygen.nl/helpers.html
一些问题:
- 过滤器是正确的方法,还是需要预处理器?
- 过滤器到底在做什么?
- Doxygen 有词法扫描器,过滤器必须使用哪种格式才能将快速代码转换为支持的语言?
我希望,我现在已经给出了清晰的描述:)
编辑:我正在搜索有关如何创建实际过滤器的信息。 有人知道这个的好来源吗?
【问题讨论】:
-
关于第 3 点和第 4 点:过滤器应该扫描输入文件,作为过滤器的参数,将其转换为 doxygen 可以理解的语言并全部写入标准输出。 Doxygen 将从过滤器的“标准输出”中挑选结果。
-
嗨@albert,再次感谢您的回答。似乎找不到任何关于如何实际编程过滤器的指南或信息,你知道一些来源吗?
-
我也不知道过滤器格式的来源。过滤器的输出应该是 doxygen 本地理解的源文件(在标准输出上)。
-
再次感谢,但必须有一些关于如何添加过滤器的文档?你到底是什么意思:“过滤器的输出应该是源文件(在标准输出上)”?
-
有关添加过滤器的有限文档位于 Doxyfile 中(以及手册的配置章节第 23 章。Doxyfile 和手册或多或少相同,因为它们是从相同的资源)。 “过滤器的输出应该是源文件(在标准输出上)”,意味着过滤器应该将原始文件转换为“新”格式并将其转储到标准输出(因此过滤器在自己的内存空间中创建一个新文件并将其转储到标准输出。最简单的过滤器是“猫”,它将其输入转储到标准输出)。