本文整理匯總了Java中com.intellij.psi.PsiElement.getReferences方法的典型用法代碼示例。如果您正苦於以下問題:Java PsiElement.getReferences方法的具體用法?Java PsiElement.getReferences怎麽用?Java PsiElement.getReferences使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.intellij.psi.PsiElement
的用法示例。
在下文中一共展示了PsiElement.getReferences方法的13個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: execute
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
@Override
public boolean execute(@NotNull PsiElement element, int offsetInElement) {
String selector;
if (element instanceof AppleScriptHandlerCall) {
AppleScriptHandlerCall handlerCall = (AppleScriptHandlerCall) element;
selector = handlerCall.getHandlerSelector();
if (myHandlerSelector.equals(selector)) {
for (PsiReference ref : element.getReferences()) {
if (ref.isReferenceTo(myHandler)) {
return myConsumer.process(ref);
}
}
}
}
return true;
}
示例2: execute
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
@Override
public boolean execute(@NotNull PsiElement element, int offsetInElement) {
String selector = null;
if (element instanceof AppleScriptCommandHandlerCall) {
AppleScriptCommandHandlerCall handlerCall = (AppleScriptCommandHandlerCall) element;
selector = handlerCall.getCommandName();
}//todo: handle other component types
else if (element instanceof DictionaryCompositeElement) {
DictionaryCompositeElement dictionaryCompositeElement = (DictionaryCompositeElement) element;
selector = dictionaryCompositeElement.getCompositeNameElement().getCompositeName();
}
if (selector != null) {
boolean selectorMatches;
selectorMatches = myComponentName.equals(selector);
if (selectorMatches) {
for (PsiReference ref : element.getReferences()) {
if (ref.isReferenceTo(myDictionaryComponent)) {
return myConsumer.process(ref);
}
}
}
}
return true;
}
開發者ID:ant-druha,項目名稱:AppleScript-IDEA,代碼行數:25,代碼來源:AppleScriptDictionaryComponentReferencesSearch.java
示例3: testReferenceCanResolveDefinition
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testReferenceCanResolveDefinition() {
PsiFile file = myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"class ActionController {" +
"public function action() {" +
" $this->forward('<caret>baz');" +
"}" +
"}"
);
PsiElement elementAtCaret = file.findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference reference : references) {
if (reference instanceof ControllerActionReference) {
ResolveResult[] resolveResults = ((ControllerActionReference) reference).multiResolve(false);
for (ResolveResult resolveResult : resolveResults) {
assertInstanceOf(resolveResult.getElement(), Method.class);
return;
}
}
}
fail("No TranslationReference found");
}
示例4: testCanCreateTranslationReferencesOnPhpStrings
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testCanCreateTranslationReferencesOnPhpStrings() {
PsiFile file = myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"class ActionController {" +
"public function action() {" +
" $this->forward('<caret>baz');" +
"}" +
"}"
);
PsiElement elementAtCaret = file.findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference reference : references) {
if (reference instanceof ControllerActionReference) {
return;
}
}
fail("No ControllerActionReference found");
}
示例5: testResourceReferencesAreCreated
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testResourceReferencesAreCreated() {
myFixture.addFileToProject("foo/ext_emconf.php", "");
myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"'EXT:foo/ext_emconf.php<caret>';");
PsiElement elementAtCaret = myFixture.getFile().findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference ref : references) {
if (ref instanceof ResourceReference) {
return;
}
}
fail("No resource reference.");
}
示例6: testReferenceCanResolveDefinition
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testReferenceCanResolveDefinition() {
PsiFile file = myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"\"LLL:EXT:foo/sample.xlf:sys_<caret>language.language_isocode.ab\";");
PsiElement elementAtCaret = file.findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference reference : references) {
if (reference instanceof TranslationReference) {
ResolveResult[] resolveResults = ((TranslationReference) reference).multiResolve(false);
for (ResolveResult resolveResult : resolveResults) {
assertInstanceOf(resolveResult.getElement(), XmlTag.class);
return;
}
}
}
fail("No TranslationReference found");
}
示例7: testReferenceCanResolveVariants
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testReferenceCanResolveVariants() {
PsiFile file = myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"\"LLL:EXT:foo/sample.xlf:sys_<caret>language.language_isocode.ab\";");
PsiElement elementAtCaret = file.findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference reference : references) {
if (reference instanceof TranslationReference) {
Object[] variants = reference.getVariants();
for (Object variant : variants) {
if (variant instanceof LookupElement) {
String lookupString = ((LookupElement) variant).getLookupString();
assertEquals("LLL:EXT:foo/sample.xlf:sys_language.language_isocode.ab", lookupString);
return;
}
}
}
}
fail("No TranslationReference found");
}
示例8: testIconReferenceIsCreatedOnGetIcon
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testIconReferenceIsCreatedOnGetIcon() {
myFixture.addFileToProject("foo/ext_emconf.php", "");
myFixture.configureByFile("IconRegistry9.php");
myFixture.configureByFile("icon_provider_test.php");
PsiElement elementAtCaret = myFixture.getFile().findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference ref : references) {
if (ref instanceof IconReference) {
return;
}
}
fail("No icon reference found");
}
示例9: testIconReferenceIsCreatedOnGetIconFromGeneralUtility
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testIconReferenceIsCreatedOnGetIconFromGeneralUtility() {
myFixture.addFileToProject("foo/ext_emconf.php", "");
myFixture.configureByFile("IconRegistry9.php");
myFixture.configureByFile("general_utility_icon_provider_test.php");
PsiElement elementAtCaret = myFixture.getFile().findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference ref : references) {
if (ref instanceof IconReference) {
return;
}
}
fail("No icon reference found");
}
示例10: testReferenceCanResolveVariants
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testReferenceCanResolveVariants() {
PsiFile file = myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"class ActionController {" +
"public function action() {" +
" $this->forward('<caret>baz');" +
"}" +
"}"
);
PsiElement elementAtCaret = file.findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference reference : references) {
if (reference instanceof ControllerActionReference) {
Object[] variants = reference.getVariants();
for (Object variant : variants) {
if (variant instanceof LookupElement) {
String lookupString = ((LookupElement) variant).getLookupString();
assertEquals("foo", lookupString);
return;
}
}
}
}
fail("No ControllerActionReference found");
}
示例11: testResourceReferenceHasVariants
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testResourceReferenceHasVariants() {
myFixture.addFileToProject("foo/ext_emconf.php", "");
myFixture.addFileToProject("foo/bar.txt", "");
myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"'EXT:foo/ext_emconf.php<caret>';");
PsiElement elementAtCaret = myFixture.getFile().findElementAt(myFixture.getCaretOffset()).getParent();
ResourceReference target = null;
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference ref : references) {
if (ref instanceof ResourceReference) {
target = (ResourceReference) ref;
}
}
if (target != null) {
for (Object o : target.getVariants()) {
if (o instanceof ResourceLookupElement && ((ResourceLookupElement) o).getLookupString().contains("EXT:foo/bar.txt")) {
return;
}
}
}
fail("No resource reference.");
}
示例12: testResourceReferenceResolves
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testResourceReferenceResolves() {
PsiFile psiFile = myFixture.addFileToProject("foo/ext_emconf.php", "");
myFixture.addFileToProject("foo/bar.txt", "");
myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"'EXT:foo/ext_emconf.php<caret>';");
PsiElement elementAtCaret = myFixture.getFile().findElementAt(myFixture.getCaretOffset()).getParent();
ResourceReference target = null;
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference ref : references) {
if (ref instanceof ResourceReference) {
target = (ResourceReference) ref;
}
}
if (target != null) {
for (ResolveResult o : target.multiResolve(true)) {
if (o.getElement().isEquivalentTo(psiFile)) {
return;
}
}
}
fail("No resource reference.");
}
示例13: testCanCreateTranslationReferencesOnPhpStrings
import com.intellij.psi.PsiElement; //導入方法依賴的package包/類
public void testCanCreateTranslationReferencesOnPhpStrings() {
PsiFile file = myFixture.configureByText(PhpFileType.INSTANCE, "<?php \n" +
"\"LLL:EXT:foo/sample.xlf:sys_<caret>language.language_isocode.ab\";");
PsiElement elementAtCaret = file.findElementAt(myFixture.getCaretOffset()).getParent();
PsiReference[] references = elementAtCaret.getReferences();
for (PsiReference reference : references) {
if (reference instanceof TranslationReference) {
return;
}
}
fail("No TranslationReference found");
}