【问题标题】:Searching keywords in thousands of c and h files在数千个 c 和 h 文件中搜索关键字
【发布时间】:2018-12-14 15:21:21
【问题描述】:
我们有大约两千个 .c 和 .h 文件。我们在这些 .c 和 .h 文件中要搜索大约 1500 个宏。
我们必须通过我们的 java 程序进行搜索。
是否有足够快的内置 exe 或 API 来执行此类操作?
我们想获取使用宏的文件和行号的信息。
CDT 是否提供此信息?
【问题讨论】:
标签:
java
elasticsearch
search
full-text-search
eclipse-cdt
【解决方案1】:
是的,CDT 可以为您提供这些信息。要以编程方式使用它,您需要编写 CDT 插件、创建包含源文件的 Eclipse 项目、索引项目并在其上运行插件。
您的插件可以使用 IIndex.findMacros() 之类的 API 来查找与给定名称匹配的宏绑定(绑定 是 CDT 对变量、函数或宏等语义实体的表示),然后是 @987654322 @ 查找宏的所有用法。
findReferences()的返回类型是IIndexName的数组,里面有访问文件名和使用行号的方法。