Ada-如何从GNAT Pro Studio生成包变量列表?

Ada-如何从GNAT Pro Studio生成包变量列表?,ada,gnat,Ada,Gnat,我想使用来自GPS Ada项目的外部参照信息来生成为每个包规范和主体定义的变量列表。我需要排除子程序中定义的任何变量 我可以在GPS的“项目视图”中看到这些信息,该视图显示每个文件中定义的文本、包、杂注、类型和变量。但是,不能选择剪切/粘贴信息。如何以文本形式生成此文档 既然你提到GPS,你有没有试过工具->文档->生成项目? 这将生成html,带有超链接等,类似于Javadoc。GPS是使用Python定制的。提供的脚本位于{installation}/share/gps/library;看起

我想使用来自GPS Ada项目的外部参照信息来生成为每个包规范和主体定义的变量列表。我需要排除子程序中定义的任何变量


我可以在GPS的“项目视图”中看到这些信息,该视图显示每个文件中定义的文本、包、杂注、类型和变量。但是,不能选择剪切/粘贴信息。如何以文本形式生成此文档

既然你提到GPS,你有没有试过工具->文档->生成项目?
这将生成html,带有超链接等,类似于Javadoc。

GPS是使用Python定制的。提供的脚本位于
{installation}/share/gps/library
;看起来
未使用的\u实体.py
可能是一个好的开始。或者,GPS文档中有一章介绍“定制和扩展GPS”

[编辑]


或者,更好的方法是查看
{installation}/share/examples/gps/python
中的示例
globals.py
。快速浏览文档(通过Help/Python extensions在GPS中访问)表明您正在寻找GPS。Entities
e
其中
e.category()
“object”

SciTools”产品可以提取此信息,尽管价格相当昂贵。虽然如果您使用的是大量的遗留代码,这是非常值得的——它不止一次为我省下了不少麻烦。

我对此进行了研究,但希望避免解析html。我真的只想要纯文本。我希望有一个现有的Python模块可以为我做到这一点。不幸的是,我现在没有时间学习编写自己的API。我最终寻找了GPS.Entities
e
,其中
e.category()
“object”
“literal”
e.full\u name()
等于源文件名+
e.name()
。这给了我想要的,我所看到的唯一的误报是精化例程中使用的循环迭代器。