c# - 通过 SDK 从插件内部使用 ReSharper "Call Tracking"

标签 c# resharper-plugins

我正在为 ReSharper 7 编写一个插件,我希望能够使用 Call Tracking从我的插件里面。我在 SDK 中没有遇到任何可以让我这样做的东西,这有可能吗?

具体来说,我希望能够从我的 IRecursiveElementProcessor 中获取方法的“传入调用”和“传出调用”。

最佳答案

ReSharper 中的“调用跟踪”是一项用户端功能,但不是用于其他功能的通用引擎。基本上它使用两个 API - Find Usages 和 Resolve。要查找对您的方法或属性的用法(调用),您必须使用 IPsiServices:Finder 并查找从给定代码块调用的方法和属性,您必须使用 RecursiveElementProcessor 处理它的语法树,请求每个树节点的引用 ITreeNode:GetReferences( ) 并使用 IReference:Resolve 解析每个引用。 您应该用于这些操作的基本接口(interface)是: I树节点 引用文献 ID声明元素 ID声明

关于c# - 通过 SDK 从插件内部使用 ReSharper "Call Tracking",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11834008/

相关文章:

c# - 创建一个随机数

c# - 等效于 Visual Basic 中用于 For Each 循环的 var

c# - 在继承的抽象类中覆盖抽象方法

c# - 使用 Count 时出现空引用异常

c# - 错误 1054 - 服务未及时响应 - C# 应用程序

c# - 如何在 resharper 插件中动态重写 AST?

c# - 创建通用类型以在 Resharper 插件中查找实现