AppCode PSI 插件开发 - 查找参考协议 属性
AppCode PSI Plugin Development - Find reference protocol property
有协议
protocol MyTest {
var isCorrect: Bool { get }
}
以及实现协议
的class
class Super: MyTest {
var isCorrect: Bool = false
}
在 PSI 模式下如何找到 isCorrect
属性 的声明?
我在分析 Super
class 时确实参考了 SwiftVariableDeclaration
,但我想参考 isCorrect
在 MyTest
协议。
我试过 SwiftVariableDeclaration.swiftSymbol
但我不确定如何获取对声明的引用。
感谢有关如何解决它的任何提示。
您已经有了 属性 的声明。
你要找的是它祖先的宣言
SwiftHierarchySearch.getAllSuperProperties(variable)
(注意一个变量声明可以包含多个变量,所以你需要选择一个。)
有协议
protocol MyTest {
var isCorrect: Bool { get }
}
以及实现协议
的classclass Super: MyTest {
var isCorrect: Bool = false
}
在 PSI 模式下如何找到 isCorrect
属性 的声明?
我在分析 Super
class 时确实参考了 SwiftVariableDeclaration
,但我想参考 isCorrect
在 MyTest
协议。
我试过 SwiftVariableDeclaration.swiftSymbol
但我不确定如何获取对声明的引用。
感谢有关如何解决它的任何提示。
您已经有了 属性 的声明。 你要找的是它祖先的宣言
SwiftHierarchySearch.getAllSuperProperties(variable)
(注意一个变量声明可以包含多个变量,所以你需要选择一个。)