From ec021e05c802b427e32cf7a8eb14139b2118091f Mon Sep 17 00:00:00 2001 From: Evgeny Gerashchenko Date: Fri, 11 May 2012 20:15:06 +0400 Subject: [PATCH] Introduced resolveStandardLibrarySymbol() taking DeclarationDescriptor. --- .../StandardLibraryReferenceResolver.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java b/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java index 1801901aee9..3bdb0eb3d9f 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java +++ b/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java @@ -146,12 +146,18 @@ public class StandardLibraryReferenceResolver extends AbstractProjectComponent { ensureInitialized(); DeclarationDescriptor declarationDescriptor = BindingContextUtils.referenceToDescriptor(originalContext, referenceExpression); - if (declarationDescriptor != null) { - declarationDescriptor = declarationDescriptor.getOriginal(); - declarationDescriptor = findCurrentDescriptor(declarationDescriptor); - if (declarationDescriptor != null) { - return BindingContextUtils.descriptorToDeclaration(bindingContext, declarationDescriptor); - } + return declarationDescriptor != null ? resolveStandardLibrarySymbol(declarationDescriptor) : null; + } + + @Nullable + public PsiElement resolveStandardLibrarySymbol(@NotNull DeclarationDescriptor declarationDescriptor) { + ensureInitialized(); + DeclarationDescriptor descriptor = declarationDescriptor; + + descriptor = descriptor.getOriginal(); + descriptor = findCurrentDescriptor(descriptor); + if (descriptor != null) { + return BindingContextUtils.descriptorToDeclaration(bindingContext, descriptor); } return null; }