【问题标题】:Using ReSharper "Call Tracking" from inside a plugin via the SDK通过 SDK 从插件内部使用 ReSharper“呼叫跟踪”
【发布时间】:2012-08-06 18:43:50
【问题描述】:

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

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

【问题讨论】:

    标签: c# resharper-plugins


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2012-03-20
      • 2010-12-22
      • 2012-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多