我发布了一个question https://sourceforge.net/projects/doxygen/forums/forum/130994/topic/3875842在 DOxygen 论坛上,也将其发布在这里以获得更好的回应。
我有一个中等规模的 C 项目,约有 2,900 个函数。我正在使用 DOxygen 1.5.9,它成功生成了函数的调用图。有没有办法将其提取出来进行进一步分析?一个简单的配对列表就足够了,例如
Caller,Callee
FunctionX, FunctionY
...
我对 XSLT 很满意,但我必须说 DOxygen XML 输出很复杂。有没有人以前做过这个并且可以提供一些关于如何解析 XML 文件的指导?
提前致谢!
根据我在创建的人为示例中看到的内容,
- 解析名称类似的文件
^_(.+)\d+(c|cpp|h|hpp)\.xml$
,如果我的 regex-foo 是正确的。
- 找到所有
<memberdef kind="function">
。它有一个独特的id
属性。我相信这个的 XPath 是//memberdef[@kind='function']
.
- 在该元素内,找到所有
<references>
.
- 对于每个标签,
refid
属性唯一指的是id
对应的属性<memberdef>
正在被调用。
- 每个中的文本节点
<references>
对应于<name>
对应的<memberdef>
正在被调用。
这似乎是表达调用图的一种很好、直接的方式。使用 XSLT 或任何其他合理的 XML 解析套件来获得所需的结果应该不会有任何问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)