gpt4 book ai didi

java - 急于获取 PsiElement 标识符的定义?

转载 作者:行者123 更新时间:2023-12-02 13:11:08 24 4
gpt4 key购买 nike

在 IntelliJ 插件中,我想从源代码中获取 PsiElement SOME_CONST 的值 10,如下所示:

package mypackage;
public class Example {
public void someMethod() {
otherMethod(SOME_CONST);
}
...
private static final int SOME_CONST = 10;
}

我有 SOME_CONSTPsiElement elem。我想我必须以某种方式找到引用资料。但我只找到空列表。例如:

public void actionPerformed(AnActionEvent e) {
...
final int offset = editor.getCaretModel().getOffset();
final PsiElement elem = psiFile.findElementAt(offset);
final PsiReference[] references = elem.getReferences();

references 的长度为零。这也没有找到任何东西:

  final Query<PsiReference> refs = ReferencesSearch.search(elem);
final PsiReference ref = refs.findFirst();

如何前往10

最佳答案

标识符本身没有任何引用,因此您需要使用 PsiElement.getParent() 在树上查找,直到找到具有引用的元素。

ReferencesSearch.search(elem) 查找指向指定元素的引用,这与您需要的相反。

关于java - 急于获取 PsiElement 标识符的定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43952851/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com