From 95559e09eb8f8c2865176fbd472220c58b357bdf Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Thu, 15 Aug 2013 17:58:23 +0400 Subject: [PATCH] Refactoring: Remove WholeProjectAnalyzerFacade (methods were inlined) --- .../plugin/JetQuickDocumentationProvider.java | 6 +-- .../actions/CopyAsDiagnosticTestAction.java | 7 +-- .../actions/ShowExpressionTypeAction.java | 5 +-- .../codeInsight/GotoSuperActionHandler.java | 4 +- .../JetTypeDeclarationProvider.java | 4 +- .../OverrideImplementMethodsHandler.java | 4 +- .../ReferenceToClassesShortening.java | 4 +- .../surroundWith/KotlinSurrounderUtils.java | 4 +- .../MoveDeclarationsOutHelper.java | 4 +- .../plugin/completion/CompletionSession.java | 5 ++- .../completion/JetPackagesContributor.java | 6 +-- .../plugin/debugger/JetPositionManager.java | 5 +-- .../importOptimizer/JetImportOptimizer.java | 6 +-- .../highlighter/DebugInfoAnnotator.java | 4 +- .../highlighter/DeclarationHintSupport.java | 4 +- .../highlighter/JetLineMarkerProvider.java | 8 ++-- .../jet/plugin/highlighter/JetPsiChecker.java | 4 +- .../codewindow/BytecodeToolwindow.java | 4 +- .../resolvewindow/ResolveToolwindow.java | 4 +- .../AnonymousTemplateEditingListener.java | 4 +- .../macro/BaseJetVariableMacro.java | 6 +-- .../macro/JetAnonymousSuperMacro.java | 4 +- .../JetFunctionParameterInfoHandler.java | 6 +-- .../project/AnalyzerFacadeWithCache.java | 6 +++ .../project/WholeProjectAnalyzerFacade.java | 44 ------------------- .../plugin/quickfix/AddNameToArgumentFix.java | 4 +- .../jet/plugin/quickfix/AutoImportFix.java | 6 +-- .../quickfix/MakeOverriddenMemberOpenFix.java | 4 +- .../refactoring/JetNameValidatorImpl.java | 5 +-- .../inline/KotlinInlineValHandler.java | 5 +-- .../references/JetArrayAccessReference.java | 9 ++-- .../JetInvokeFunctionReference.java | 4 +- .../plugin/references/JetPsiReference.java | 6 +-- .../references/JetSimpleNameReference.java | 4 +- .../KotlinDirectInheritorsSearcher.java | 4 +- .../JetStructureViewElement.java | 4 +- .../jet/plugin/util/DebuggerUtils.java | 4 +- .../codeInsight/OverrideImplementTest.java | 8 ++-- .../plugin/quickfix/QuickFixActionsUtils.java | 4 +- .../rename/RenameInKotlinTest.java | 7 ++- 40 files changed, 97 insertions(+), 143 deletions(-) delete mode 100644 idea/src/org/jetbrains/jet/plugin/project/WholeProjectAnalyzerFacade.java diff --git a/idea/src/org/jetbrains/jet/plugin/JetQuickDocumentationProvider.java b/idea/src/org/jetbrains/jet/plugin/JetQuickDocumentationProvider.java index 95ef6e1f1da..a0efebdf3fd 100644 --- a/idea/src/org/jetbrains/jet/plugin/JetQuickDocumentationProvider.java +++ b/idea/src/org/jetbrains/jet/plugin/JetQuickDocumentationProvider.java @@ -36,7 +36,7 @@ import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.plugin.libraries.JetDecompiledData; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.references.BuiltInsReferenceResolver; import org.jetbrains.jet.renderer.DescriptorRenderer; @@ -57,8 +57,8 @@ public class JetQuickDocumentationProvider extends AbstractDocumentationProvider PsiElement declarationPsiElement = PsiTreeUtil.getParentOfType(originalElement, JetDeclaration.class); if (ref != null || declarationPsiElement != null) { - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile( - (JetFile) originalElement.getContainingFile()).getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) originalElement.getContainingFile()) + .getBindingContext(); if (ref != null) { DeclarationDescriptor declarationDescriptor = bindingContext.get(BindingContext.REFERENCE_TARGET, ref); diff --git a/idea/src/org/jetbrains/jet/plugin/actions/CopyAsDiagnosticTestAction.java b/idea/src/org/jetbrains/jet/plugin/actions/CopyAsDiagnosticTestAction.java index 47b5c0bd7cf..1f7e8ca5419 100644 --- a/idea/src/org/jetbrains/jet/plugin/actions/CopyAsDiagnosticTestAction.java +++ b/idea/src/org/jetbrains/jet/plugin/actions/CopyAsDiagnosticTestAction.java @@ -22,14 +22,12 @@ import com.intellij.openapi.actionSystem.LangDataKeys; import com.intellij.openapi.actionSystem.PlatformDataKeys; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.editor.Editor; -import com.intellij.psi.PsiErrorElement; import com.intellij.psi.PsiFile; import org.jetbrains.jet.checkers.CheckerTestUtil; import org.jetbrains.jet.lang.diagnostics.Diagnostic; import org.jetbrains.jet.lang.psi.JetFile; -import org.jetbrains.jet.lang.resolve.AnalyzingUtils; import org.jetbrains.jet.lang.resolve.BindingContext; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.awt.*; import java.awt.datatransfer.Clipboard; @@ -45,8 +43,7 @@ public class CopyAsDiagnosticTestAction extends AnAction { PsiFile psiFile = e.getData(LangDataKeys.PSI_FILE); assert editor != null && psiFile != null; - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) psiFile) - .getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) psiFile).getBindingContext(); List diagnostics = CheckerTestUtil.getDiagnosticsIncludingSyntaxErrors(bindingContext, psiFile); String result = CheckerTestUtil.addDiagnosticMarkersToText(psiFile, diagnostics).toString(); diff --git a/idea/src/org/jetbrains/jet/plugin/actions/ShowExpressionTypeAction.java b/idea/src/org/jetbrains/jet/plugin/actions/ShowExpressionTypeAction.java index 88b948961ff..16c69eedeb5 100644 --- a/idea/src/org/jetbrains/jet/plugin/actions/ShowExpressionTypeAction.java +++ b/idea/src/org/jetbrains/jet/plugin/actions/ShowExpressionTypeAction.java @@ -30,7 +30,7 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.plugin.JetLanguage; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.renderer.DescriptorRenderer; public class ShowExpressionTypeAction extends AnAction { @@ -40,8 +40,7 @@ public class ShowExpressionTypeAction extends AnAction { PsiFile psiFile = e.getData(LangDataKeys.PSI_FILE); assert editor != null && psiFile != null; JetExpression expression; - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) psiFile) - .getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) psiFile).getBindingContext(); if (editor.getSelectionModel().hasSelection()) { int startOffset = editor.getSelectionModel().getSelectionStart(); int endOffset = editor.getSelectionModel().getSelectionEnd(); diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/GotoSuperActionHandler.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/GotoSuperActionHandler.java index da4bc244c1a..e10432a69b5 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/GotoSuperActionHandler.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/GotoSuperActionHandler.java @@ -39,7 +39,7 @@ import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; import org.jetbrains.jet.plugin.JetBundle; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.Collection; import java.util.List; @@ -59,7 +59,7 @@ public class GotoSuperActionHandler implements CodeInsightActionHandler { JetObjectDeclaration.class); if (declaration == null) return; - final BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) file).getBindingContext(); + final BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) file).getBindingContext(); DeclarationDescriptor descriptor = bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, declaration); diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/JetTypeDeclarationProvider.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/JetTypeDeclarationProvider.java index db5cfb2c8f4..00ee27907ae 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/JetTypeDeclarationProvider.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/JetTypeDeclarationProvider.java @@ -26,14 +26,14 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.lang.types.JetType; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; public class JetTypeDeclarationProvider implements TypeDeclarationProvider { @Override public PsiElement[] getSymbolTypeDeclarations(PsiElement symbol) { if (symbol instanceof JetElement && symbol.getContainingFile() instanceof JetFile) { BindingContext bindingContext = - WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) symbol.getContainingFile()).getBindingContext(); + AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) symbol.getContainingFile()).getBindingContext(); DeclarationDescriptor descriptor = bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, symbol); if (descriptor instanceof CallableDescriptor) { JetType type = ((CallableDescriptor) descriptor).getReturnType(); diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java index 1bff1684bb6..6db64343292 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java @@ -36,7 +36,7 @@ import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.renderer.DescriptorRenderer; import java.util.ArrayList; @@ -232,7 +232,7 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns assert classOrObject != null : "ClassObject should be checked in isValidFor method"; BindingContext bindingContext = - WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) classOrObject.getContainingFile()) + AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) classOrObject.getContainingFile()) .getBindingContext(); Set missingImplementations = collectMethodsToGenerate(classOrObject, bindingContext); diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/ReferenceToClassesShortening.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/ReferenceToClassesShortening.java index d312e623cb3..037d5b06604 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/ReferenceToClassesShortening.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/ReferenceToClassesShortening.java @@ -24,7 +24,7 @@ import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.DescriptorUtils; import org.jetbrains.jet.lang.resolve.scopes.JetScope; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.quickfix.ImportInsertHelper; import java.util.List; @@ -40,7 +40,7 @@ public class ReferenceToClassesShortening { PsiDocumentManager.getInstance(elementsToCompact.get(0).getProject()).commitAllDocuments(); final JetFile file = (JetFile) elementsToCompact.get(0).getContainingFile(); - final BindingContext bc = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(file).getBindingContext(); + final BindingContext bc = AnalyzerFacadeWithCache.analyzeFileWithCache(file).getBindingContext(); for (JetElement element : elementsToCompact) { element.accept(new JetVisitorVoid() { @Override diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/KotlinSurrounderUtils.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/KotlinSurrounderUtils.java index 93590bde795..2a947cba65a 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/KotlinSurrounderUtils.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/KotlinSurrounderUtils.java @@ -27,7 +27,7 @@ import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.plugin.JetBundle; import org.jetbrains.jet.plugin.codeInsight.CodeInsightUtils; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; public class KotlinSurrounderUtils { public static String SURROUND_WITH = JetBundle.message("surround.with"); @@ -46,7 +46,7 @@ public class KotlinSurrounderUtils { @Nullable public static JetType getExpressionType(JetExpression expression) { - BindingContext expressionBindingContext = WholeProjectAnalyzerFacade.getContextForElement(expression); + BindingContext expressionBindingContext = AnalyzerFacadeWithCache.getContextForElement(expression); return expressionBindingContext.get(BindingContext.EXPRESSION_TYPE, expression); } diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/MoveDeclarationsOutHelper.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/MoveDeclarationsOutHelper.java index 748146b8b11..473965f9b3c 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/MoveDeclarationsOutHelper.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/surroundWith/MoveDeclarationsOutHelper.java @@ -32,7 +32,7 @@ import org.jetbrains.jet.lang.types.ErrorUtils; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.plugin.codeInsight.CodeInsightUtils; import org.jetbrains.jet.plugin.codeInsight.ReferenceToClassesShortening; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.renderer.DescriptorRenderer; import java.util.ArrayList; @@ -117,7 +117,7 @@ public class MoveDeclarationsOutHelper { @NotNull private static JetType getPropertyType(@NotNull JetProperty property) { - BindingContext expressionBindingContext = WholeProjectAnalyzerFacade.getContextForElement(property); + BindingContext expressionBindingContext = AnalyzerFacadeWithCache.getContextForElement(property); VariableDescriptor propertyDescriptor = expressionBindingContext.get(BindingContext.VARIABLE, property); assert propertyDescriptor != null : "Couldn't resolve property to property descriptor " + property.getText(); diff --git a/idea/src/org/jetbrains/jet/plugin/completion/CompletionSession.java b/idea/src/org/jetbrains/jet/plugin/completion/CompletionSession.java index e2f96f1e63b..ab0c6b7b6c6 100644 --- a/idea/src/org/jetbrains/jet/plugin/completion/CompletionSession.java +++ b/idea/src/org/jetbrains/jet/plugin/completion/CompletionSession.java @@ -37,8 +37,8 @@ import org.jetbrains.jet.lexer.JetTokens; import org.jetbrains.jet.plugin.caches.JetShortNamesCache; import org.jetbrains.jet.plugin.codeInsight.TipsManager; import org.jetbrains.jet.plugin.completion.weigher.JetCompletionSorting; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.project.CancelableResolveSession; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; import org.jetbrains.jet.plugin.references.JetSimpleNameReference; import java.util.Collection; @@ -59,7 +59,8 @@ public class CompletionSession { this.parameters = parameters; this.jetReference = jetReference; - CancelableResolveSession resolveSession = WholeProjectAnalyzerFacade.getLazyResolveResultForFile((JetFile) position.getContainingFile()); + CancelableResolveSession resolveSession = + AnalyzerFacadeWithCache.getLazyResolveSessionForFile((JetFile) position.getContainingFile()); BindingContext expressionBindingContext = resolveSession.resolveToElement(jetReference.getExpression()); JetScope scope = expressionBindingContext.get(BindingContext.RESOLUTION_SCOPE, jetReference.getExpression()); diff --git a/idea/src/org/jetbrains/jet/plugin/completion/JetPackagesContributor.java b/idea/src/org/jetbrains/jet/plugin/completion/JetPackagesContributor.java index fc930b1be43..d3f984f09f2 100644 --- a/idea/src/org/jetbrains/jet/plugin/completion/JetPackagesContributor.java +++ b/idea/src/org/jetbrains/jet/plugin/completion/JetPackagesContributor.java @@ -29,8 +29,8 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetNamespaceHeader; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.plugin.codeInsight.TipsManager; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.project.CancelableResolveSession; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; import org.jetbrains.jet.plugin.references.JetSimpleNameReference; /** @@ -71,8 +71,8 @@ public class JetPackagesContributor extends CompletionContributor { int prefixLength = parameters.getOffset() - simpleNameReference.getExpression().getTextOffset(); result = result.withPrefixMatcher(new PlainPrefixMatcher(name.substring(0, prefixLength))); - CancelableResolveSession resolveSession = WholeProjectAnalyzerFacade.getLazyResolveResultForFile( - (JetFile) simpleNameReference.getExpression().getContainingFile()); + CancelableResolveSession resolveSession = AnalyzerFacadeWithCache + .getLazyResolveSessionForFile((JetFile) simpleNameReference.getExpression().getContainingFile()); BindingContext bindingContext = resolveSession.resolveToElement(simpleNameReference.getExpression()); for (LookupElement variant : DescriptorLookupConverter.collectLookupElements( diff --git a/idea/src/org/jetbrains/jet/plugin/debugger/JetPositionManager.java b/idea/src/org/jetbrains/jet/plugin/debugger/JetPositionManager.java index a05e49e08b7..71fcbc642a9 100644 --- a/idea/src/org/jetbrains/jet/plugin/debugger/JetPositionManager.java +++ b/idea/src/org/jetbrains/jet/plugin/debugger/JetPositionManager.java @@ -47,8 +47,7 @@ import org.jetbrains.jet.lang.resolve.DelegatingBindingTrace; import org.jetbrains.jet.lang.resolve.java.JetFilesProvider; import org.jetbrains.jet.lang.resolve.java.JvmClassName; import org.jetbrains.jet.lang.resolve.name.FqName; -import org.jetbrains.jet.plugin.filters.JetExceptionFilter; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.util.DebuggerUtils; import java.util.ArrayList; @@ -185,7 +184,7 @@ public class JetPositionManager implements PositionManager { value = CachedValuesManager.getManager(file.getProject()).createCachedValue(new CachedValueProvider() { @Override public Result compute() { - AnalyzeExhaust analyzeExhaust = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(file); + AnalyzeExhaust analyzeExhaust = AnalyzerFacadeWithCache.analyzeFileWithCache(file); analyzeExhaust.throwIfError(); List namespaceFiles = JetFilesProvider.getInstance(file.getProject()).allNamespaceFiles().fun(file); diff --git a/idea/src/org/jetbrains/jet/plugin/editor/importOptimizer/JetImportOptimizer.java b/idea/src/org/jetbrains/jet/plugin/editor/importOptimizer/JetImportOptimizer.java index e273ae6ef4a..cd3b3ba6067 100644 --- a/idea/src/org/jetbrains/jet/plugin/editor/importOptimizer/JetImportOptimizer.java +++ b/idea/src/org/jetbrains/jet/plugin/editor/importOptimizer/JetImportOptimizer.java @@ -35,7 +35,7 @@ import org.jetbrains.jet.lang.resolve.java.PackageClassUtils; import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.FqNameUnsafe; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.quickfix.ImportInsertHelper; import org.jetbrains.jet.util.QualifiedNamesUtil; @@ -176,7 +176,7 @@ public class JetImportOptimizer implements ImportOptimizer { @Override public void visitForExpression(JetForExpression expression) { - BindingContext context = WholeProjectAnalyzerFacade.getContextForElement(expression); + BindingContext context = AnalyzerFacadeWithCache.getContextForElement(expression); ResolvedCall resolvedCall = context.get(BindingContext.LOOP_RANGE_ITERATOR_RESOLVED_CALL, expression.getLoopRange()); addResolvedCallFqName(resolvedCall); @@ -185,7 +185,7 @@ public class JetImportOptimizer implements ImportOptimizer { @Override public void visitMultiDeclaration(JetMultiDeclaration declaration) { - BindingContext context = WholeProjectAnalyzerFacade.getContextForElement(declaration); + BindingContext context = AnalyzerFacadeWithCache.getContextForElement(declaration); List entries = declaration.getEntries(); for (JetMultiDeclarationEntry entry : entries) { ResolvedCall resolvedCall = context.get(BindingContext.COMPONENT_RESOLVED_CALL, entry); diff --git a/idea/src/org/jetbrains/jet/plugin/highlighter/DebugInfoAnnotator.java b/idea/src/org/jetbrains/jet/plugin/highlighter/DebugInfoAnnotator.java index 5978ae05bd9..5ae9ccf49a1 100644 --- a/idea/src/org/jetbrains/jet/plugin/highlighter/DebugInfoAnnotator.java +++ b/idea/src/org/jetbrains/jet/plugin/highlighter/DebugInfoAnnotator.java @@ -27,7 +27,7 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetReferenceExpression; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.plugin.JetPluginUtil; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; /** * Quick showing possible problems with jet internals in IDEA with a tooltips @@ -49,7 +49,7 @@ public class DebugInfoAnnotator implements Annotator { if (element instanceof JetFile) { JetFile file = (JetFile) element; try { - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(file).getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache(file).getBindingContext(); DebugInfoUtil.markDebugAnnotations(file, bindingContext, new DebugInfoUtil.DebugInfoReporter() { @Override public void reportElementWithErrorType(@NotNull JetReferenceExpression expression) { diff --git a/idea/src/org/jetbrains/jet/plugin/highlighter/DeclarationHintSupport.java b/idea/src/org/jetbrains/jet/plugin/highlighter/DeclarationHintSupport.java index db5a4b2d354..d0164f0c0e2 100644 --- a/idea/src/org/jetbrains/jet/plugin/highlighter/DeclarationHintSupport.java +++ b/idea/src/org/jetbrains/jet/plugin/highlighter/DeclarationHintSupport.java @@ -44,7 +44,7 @@ import org.jetbrains.jet.lang.psi.JetNamedDeclaration; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.plugin.JetLanguage; import org.jetbrains.jet.plugin.JetPluginUtil; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.util.LongRunningReadTask; import org.jetbrains.jet.renderer.DescriptorRenderer; @@ -195,7 +195,7 @@ public class DeclarationHintSupport extends AbstractProjectComponent { DeclarationDescriptor descriptor = null; try { BindingContext bindingContext = - WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(jetFile).getBindingContext(); + AnalyzerFacadeWithCache.analyzeFileWithCache(jetFile).getBindingContext(); descriptor = bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, declaration); } finally { diff --git a/idea/src/org/jetbrains/jet/plugin/highlighter/JetLineMarkerProvider.java b/idea/src/org/jetbrains/jet/plugin/highlighter/JetLineMarkerProvider.java index abc3c4f667f..ca48cf171be 100644 --- a/idea/src/org/jetbrains/jet/plugin/highlighter/JetLineMarkerProvider.java +++ b/idea/src/org/jetbrains/jet/plugin/highlighter/JetLineMarkerProvider.java @@ -61,7 +61,7 @@ import org.jetbrains.jet.lexer.JetTokens; import org.jetbrains.jet.plugin.JetBundle; import org.jetbrains.jet.plugin.JetPluginUtil; import org.jetbrains.jet.plugin.codeInsight.JetFunctionPsiElementCellRenderer; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.search.KotlinDefinitionsSearcher; import org.jetbrains.jet.renderer.DescriptorRenderer; @@ -237,7 +237,7 @@ public class JetLineMarkerProvider implements LineMarkerProvider { if (!(element instanceof JetNamedFunction || element instanceof JetProperty)) return null; - BindingContext bindingContext = WholeProjectAnalyzerFacade.getContextForElement((JetElement) element); + BindingContext bindingContext = AnalyzerFacadeWithCache.getContextForElement((JetElement) element); DeclarationDescriptor descriptor = bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, element); if (!(descriptor instanceof CallableMemberDescriptor)) { @@ -280,7 +280,7 @@ public class JetLineMarkerProvider implements LineMarkerProvider { JetFile file = (JetFile)elt.getContainingFile(); assert file != null; - BindingContext bindingContext = WholeProjectAnalyzerFacade.getContextForElement((JetElement) elt); + BindingContext bindingContext = AnalyzerFacadeWithCache.getContextForElement((JetElement) elt); DeclarationDescriptor descriptor = bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, elt); if (!(descriptor instanceof CallableMemberDescriptor)) { return; @@ -323,7 +323,7 @@ public class JetLineMarkerProvider implements LineMarkerProvider { JetFile file = (JetFile)element.getContainingFile(); if (file == null) return ""; - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(file).getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache(file).getBindingContext(); DeclarationDescriptor descriptor = bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, element); if (!(descriptor instanceof CallableMemberDescriptor)) { diff --git a/idea/src/org/jetbrains/jet/plugin/highlighter/JetPsiChecker.java b/idea/src/org/jetbrains/jet/plugin/highlighter/JetPsiChecker.java index 20358e7293d..7213b0400fd 100644 --- a/idea/src/org/jetbrains/jet/plugin/highlighter/JetPsiChecker.java +++ b/idea/src/org/jetbrains/jet/plugin/highlighter/JetPsiChecker.java @@ -42,7 +42,7 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetReferenceExpression; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.plugin.JetPluginUtil; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.quickfix.JetIntentionActionsFactory; import org.jetbrains.jet.plugin.quickfix.QuickFixes; @@ -113,7 +113,7 @@ public class JetPsiChecker implements Annotator { JetFile file = (JetFile) element; try { - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(file).getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache(file).getBindingContext(); if (errorReportingEnabled) { Collection diagnostics = Sets.newLinkedHashSet(bindingContext.getDiagnostics()); diff --git a/idea/src/org/jetbrains/jet/plugin/internal/codewindow/BytecodeToolwindow.java b/idea/src/org/jetbrains/jet/plugin/internal/codewindow/BytecodeToolwindow.java index c5139a7e670..7d63fbbb179 100644 --- a/idea/src/org/jetbrains/jet/plugin/internal/codewindow/BytecodeToolwindow.java +++ b/idea/src/org/jetbrains/jet/plugin/internal/codewindow/BytecodeToolwindow.java @@ -36,7 +36,7 @@ import org.jetbrains.jet.codegen.state.GenerationState; import org.jetbrains.jet.codegen.state.Progress; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.plugin.internal.Location; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.util.LongRunningReadTask; import javax.swing.*; @@ -87,7 +87,7 @@ public class BytecodeToolwindow extends JPanel implements Disposable { GenerationState state; try { - AnalyzeExhaust exhaust = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(jetFile); + AnalyzeExhaust exhaust = AnalyzerFacadeWithCache.analyzeFileWithCache(jetFile); if (exhaust.isError()) { return printStackTraceToString(exhaust.getError()); } diff --git a/idea/src/org/jetbrains/jet/plugin/internal/resolvewindow/ResolveToolwindow.java b/idea/src/org/jetbrains/jet/plugin/internal/resolvewindow/ResolveToolwindow.java index a3a0c6eac70..55e7f77cf8b 100644 --- a/idea/src/org/jetbrains/jet/plugin/internal/resolvewindow/ResolveToolwindow.java +++ b/idea/src/org/jetbrains/jet/plugin/internal/resolvewindow/ResolveToolwindow.java @@ -46,7 +46,7 @@ import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverValue; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.plugin.JetFileType; import org.jetbrains.jet.plugin.internal.Location; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.util.LongRunningReadTask; import org.jetbrains.jet.util.slicedmap.ReadOnlySlice; @@ -98,7 +98,7 @@ public class ResolveToolwindow extends JPanel implements Disposable { int startOffset = requestInfo.getStartOffset(); int endOffset = requestInfo.getEndOffset(); - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(jetFile).getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache(jetFile).getBindingContext(); PsiElement elementAtOffset; if (startOffset == endOffset) { diff --git a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/AnonymousTemplateEditingListener.java b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/AnonymousTemplateEditingListener.java index 870cb0176e9..6df4b134467 100644 --- a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/AnonymousTemplateEditingListener.java +++ b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/AnonymousTemplateEditingListener.java @@ -34,7 +34,7 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetReferenceExpression; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.plugin.codeInsight.ImplementMethodsHandler; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.HashMap; import java.util.Map; @@ -62,7 +62,7 @@ class AnonymousTemplateEditingListener extends TemplateEditingAdapter { if (name != null && name.getParent() instanceof JetReferenceExpression) { JetReferenceExpression ref = (JetReferenceExpression) name.getParent(); - BindingContext bc = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) psiFile) + BindingContext bc = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) psiFile) .getBindingContext(); DeclarationDescriptor descriptor = bc.get(BindingContext.REFERENCE_TARGET, ref); if (descriptor instanceof ClassDescriptor) { diff --git a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java index 1292978124b..764b8c12b31 100644 --- a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java +++ b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java @@ -30,7 +30,6 @@ import com.intellij.psi.PsiNamedElement; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.analyzer.AnalyzeExhaust; -import org.jetbrains.jet.plugin.codeInsight.TipsManager; import org.jetbrains.jet.di.InjectorForMacros; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; import org.jetbrains.jet.lang.descriptors.VariableDescriptor; @@ -39,7 +38,8 @@ import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.types.expressions.ExpressionTypingServices; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.codeInsight.TipsManager; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.ArrayList; import java.util.LinkedHashSet; @@ -60,7 +60,7 @@ public abstract class BaseJetVariableMacro extends Macro { JetExpression contextExpression = findContextExpression(psiFile, context.getStartOffset()); if (contextExpression == null) return null; - AnalyzeExhaust analyzeExhaust = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) psiFile); + AnalyzeExhaust analyzeExhaust = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) psiFile); BindingContext bc = analyzeExhaust.getBindingContext(); JetScope scope = bc.get(BindingContext.RESOLUTION_SCOPE, contextExpression); if (scope == null) { diff --git a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java index 4384d87fcdf..35e1c177eb9 100644 --- a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java +++ b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java @@ -39,7 +39,7 @@ import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.plugin.JetBundle; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.ArrayList; import java.util.LinkedHashSet; @@ -87,7 +87,7 @@ public class JetAnonymousSuperMacro extends Macro { PsiFile psiFile = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); if (!(psiFile instanceof JetFile)) return null; - BindingContext bc = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) psiFile) + BindingContext bc = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) psiFile) .getBindingContext(); JetExpression expression = PsiTreeUtil.getParentOfType(psiFile.findElementAt(context.getStartOffset()), JetExpression.class); JetScope scope = bc.get(BindingContext.RESOLUTION_SCOPE, expression); diff --git a/idea/src/org/jetbrains/jet/plugin/parameterInfo/JetFunctionParameterInfoHandler.java b/idea/src/org/jetbrains/jet/plugin/parameterInfo/JetFunctionParameterInfoHandler.java index 8596e1ab0da..cd6e500ba68 100644 --- a/idea/src/org/jetbrains/jet/plugin/parameterInfo/JetFunctionParameterInfoHandler.java +++ b/idea/src/org/jetbrains/jet/plugin/parameterInfo/JetFunctionParameterInfoHandler.java @@ -43,8 +43,8 @@ import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.checker.JetTypeChecker; import org.jetbrains.jet.lexer.JetTokens; import org.jetbrains.jet.plugin.codeInsight.TipsManager; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.project.CancelableResolveSession; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; import org.jetbrains.jet.renderer.DescriptorRenderer; import java.awt.*; @@ -381,8 +381,8 @@ public class JetFunctionParameterInfoHandler implements ParameterInfoHandlerWith return null; } - CancelableResolveSession resolveSession = WholeProjectAnalyzerFacade.getLazyResolveResultForFile( - (JetFile) callNameExpression.getContainingFile()); + CancelableResolveSession resolveSession = + AnalyzerFacadeWithCache.getLazyResolveSessionForFile((JetFile) callNameExpression.getContainingFile()); BindingContext bindingContext = resolveSession.resolveToElement(callNameExpression); JetScope scope = bindingContext.get(BindingContext.RESOLUTION_SCOPE, callNameExpression); diff --git a/idea/src/org/jetbrains/jet/plugin/project/AnalyzerFacadeWithCache.java b/idea/src/org/jetbrains/jet/plugin/project/AnalyzerFacadeWithCache.java index 07e8ab9a094..e6848c30068 100644 --- a/idea/src/org/jetbrains/jet/plugin/project/AnalyzerFacadeWithCache.java +++ b/idea/src/org/jetbrains/jet/plugin/project/AnalyzerFacadeWithCache.java @@ -39,6 +39,7 @@ import org.jetbrains.jet.analyzer.AnalyzeExhaust; import org.jetbrains.jet.asJava.LightClassUtil; import org.jetbrains.jet.lang.diagnostics.DiagnosticUtils; import org.jetbrains.jet.lang.diagnostics.Errors; +import org.jetbrains.jet.lang.psi.JetElement; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.resolve.*; import org.jetbrains.jet.lang.resolve.java.AnalyzerFacadeForJVM; @@ -165,6 +166,11 @@ public final class AnalyzerFacadeWithCache { LOG.error(e); } + public static BindingContext getContextForElement(@NotNull JetElement jetElement) { + CancelableResolveSession cancelableResolveSession = getLazyResolveSessionForFile((JetFile) jetElement.getContainingFile()); + return cancelableResolveSession.resolveToElement(jetElement); + } + public static CancelableResolveSession getLazyResolveSessionForFile(@NotNull JetFile file) { Project project = file.getProject(); DeclarationsCacheProvider provider = KotlinCacheManager.getInstance(project).getRegisteredProvider(TargetPlatformDetector.getPlatform(file)); diff --git a/idea/src/org/jetbrains/jet/plugin/project/WholeProjectAnalyzerFacade.java b/idea/src/org/jetbrains/jet/plugin/project/WholeProjectAnalyzerFacade.java deleted file mode 100644 index 478a04fe626..00000000000 --- a/idea/src/org/jetbrains/jet/plugin/project/WholeProjectAnalyzerFacade.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright 2010-2013 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.jet.plugin.project; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.jet.analyzer.AnalyzeExhaust; -import org.jetbrains.jet.lang.psi.JetElement; -import org.jetbrains.jet.lang.psi.JetFile; -import org.jetbrains.jet.lang.resolve.BindingContext; - -public final class WholeProjectAnalyzerFacade { - - private WholeProjectAnalyzerFacade() { - } - - @NotNull - public static AnalyzeExhaust analyzeProjectWithCacheOnAFile(@NotNull JetFile file) { - return AnalyzerFacadeWithCache.analyzeFileWithCache(file); - } - - @NotNull - public static CancelableResolveSession getLazyResolveResultForFile(@NotNull JetFile file) { - return AnalyzerFacadeWithCache.getLazyResolveSessionForFile(file); - } - - public static BindingContext getContextForElement(@NotNull JetElement jetElement) { - CancelableResolveSession cancelableResolveSession = getLazyResolveResultForFile((JetFile) jetElement.getContainingFile()); - return cancelableResolveSession.resolveToElement(jetElement); - } -} diff --git a/idea/src/org/jetbrains/jet/plugin/quickfix/AddNameToArgumentFix.java b/idea/src/org/jetbrains/jet/plugin/quickfix/AddNameToArgumentFix.java index 93c03343de2..42b4fb63c86 100644 --- a/idea/src/org/jetbrains/jet/plugin/quickfix/AddNameToArgumentFix.java +++ b/idea/src/org/jetbrains/jet/plugin/quickfix/AddNameToArgumentFix.java @@ -41,7 +41,7 @@ import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.checker.JetTypeChecker; import org.jetbrains.jet.plugin.JetBundle; import org.jetbrains.jet.plugin.JetIcons; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import javax.swing.*; import java.util.Collections; @@ -66,7 +66,7 @@ public class AddNameToArgumentFix extends JetIntentionAction { JetExpression callee = callElement.getCalleeExpression(); if (!(callee instanceof JetReferenceExpression)) return Collections.emptyList(); - BindingContext context = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) argument.getContainingFile()).getBindingContext(); + BindingContext context = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) argument.getContainingFile()).getBindingContext(); ResolvedCall resolvedCall = context.get(BindingContext.RESOLVED_CALL, (JetReferenceExpression) callee); if (resolvedCall == null) return Collections.emptyList(); diff --git a/idea/src/org/jetbrains/jet/plugin/quickfix/AutoImportFix.java b/idea/src/org/jetbrains/jet/plugin/quickfix/AutoImportFix.java index 9b111091078..9e268cc73b3 100644 --- a/idea/src/org/jetbrains/jet/plugin/quickfix/AutoImportFix.java +++ b/idea/src/org/jetbrains/jet/plugin/quickfix/AutoImportFix.java @@ -52,8 +52,8 @@ import org.jetbrains.jet.plugin.JetBundle; import org.jetbrains.jet.plugin.actions.JetAddImportAction; import org.jetbrains.jet.plugin.caches.JetShortNamesCache; import org.jetbrains.jet.plugin.framework.KotlinFrameworkDetector; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.project.CancelableResolveSession; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; import org.jetbrains.jet.plugin.util.JetPsiHeuristicsUtil; import java.util.Collection; @@ -86,8 +86,8 @@ public class AutoImportFix extends JetHintAction implem return Collections.emptyList(); } - CancelableResolveSession cancelableResolveSession = WholeProjectAnalyzerFacade.getLazyResolveResultForFile( - (JetFile) element.getContainingFile()); + CancelableResolveSession cancelableResolveSession = + AnalyzerFacadeWithCache.getLazyResolveSessionForFile((JetFile) element.getContainingFile()); List result = Lists.newArrayList(); if (!isSuppressedTopLevelImportInPosition(element)) { diff --git a/idea/src/org/jetbrains/jet/plugin/quickfix/MakeOverriddenMemberOpenFix.java b/idea/src/org/jetbrains/jet/plugin/quickfix/MakeOverriddenMemberOpenFix.java index 8d83761f270..d1651cb1f62 100644 --- a/idea/src/org/jetbrains/jet/plugin/quickfix/MakeOverriddenMemberOpenFix.java +++ b/idea/src/org/jetbrains/jet/plugin/quickfix/MakeOverriddenMemberOpenFix.java @@ -31,8 +31,8 @@ import org.jetbrains.jet.lang.psi.JetDeclaration; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.plugin.JetBundle; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.project.CancelableResolveSession; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; import java.util.ArrayList; import java.util.Collections; @@ -58,7 +58,7 @@ public class MakeOverriddenMemberOpenFix extends JetIntentionAction result = new Ref(true); JetVisitorVoid visitor = new JetVisitorVoid() { diff --git a/idea/src/org/jetbrains/jet/plugin/refactoring/inline/KotlinInlineValHandler.java b/idea/src/org/jetbrains/jet/plugin/refactoring/inline/KotlinInlineValHandler.java index 93d568b9b93..e6fcb661305 100644 --- a/idea/src/org/jetbrains/jet/plugin/refactoring/inline/KotlinInlineValHandler.java +++ b/idea/src/org/jetbrains/jet/plugin/refactoring/inline/KotlinInlineValHandler.java @@ -62,7 +62,6 @@ import org.jetbrains.jet.plugin.JetLanguage; import org.jetbrains.jet.plugin.codeInsight.ReferenceToClassesShortening; import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.project.CancelableResolveSession; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; import org.jetbrains.jet.renderer.DescriptorRenderer; import java.util.Arrays; @@ -230,7 +229,7 @@ public class KotlinInlineValHandler extends InlineActionHandler { return null; } - BindingContext context = WholeProjectAnalyzerFacade.getContextForElement(initializer); + BindingContext context = AnalyzerFacadeWithCache.getContextForElement(initializer); SimpleFunctionDescriptor fun = context.get(BindingContext.FUNCTION, functionLiteralExpression.getFunctionLiteral()); if (fun == null || ErrorUtils.containsErrorType(fun)) { return null; @@ -345,7 +344,7 @@ public class KotlinInlineValHandler extends InlineActionHandler { } JetExpression callee = callExpression.getCalleeExpression(); - BindingContext context = WholeProjectAnalyzerFacade.getContextForElement(initializer); + BindingContext context = AnalyzerFacadeWithCache.getContextForElement(initializer); ResolvedCall call = context.get(BindingContext.RESOLVED_CALL, callee); if (call == null) { return null; diff --git a/idea/src/org/jetbrains/jet/plugin/references/JetArrayAccessReference.java b/idea/src/org/jetbrains/jet/plugin/references/JetArrayAccessReference.java index bdbf4872122..4fad0b332de 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/JetArrayAccessReference.java +++ b/idea/src/org/jetbrains/jet/plugin/references/JetArrayAccessReference.java @@ -28,12 +28,13 @@ import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.lang.resolve.calls.model.ResolvedCall; import org.jetbrains.jet.lexer.JetTokens; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.ArrayList; import java.util.List; -import static org.jetbrains.jet.lang.resolve.BindingContext.*; +import static org.jetbrains.jet.lang.resolve.BindingContext.INDEXED_LVALUE_GET; +import static org.jetbrains.jet.lang.resolve.BindingContext.INDEXED_LVALUE_SET; class JetArrayAccessReference extends JetPsiReference implements MultiRangeReference { private JetArrayAccessExpression expression; @@ -55,7 +56,7 @@ class JetArrayAccessReference extends JetPsiReference implements MultiRangeRefer @Override protected PsiElement doResolve() { - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) getElement().getContainingFile()) + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) getElement().getContainingFile()) .getBindingContext(); ResolvedCall getFunction = bindingContext.get(INDEXED_LVALUE_GET, expression); ResolvedCall setFunction = bindingContext.get(INDEXED_LVALUE_SET, expression); @@ -67,7 +68,7 @@ class JetArrayAccessReference extends JetPsiReference implements MultiRangeRefer @Override protected ResolveResult[] doMultiResolve() { - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) getElement().getContainingFile()) + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) getElement().getContainingFile()) .getBindingContext(); ResolvedCall getFunction = bindingContext.get(INDEXED_LVALUE_GET, expression); ResolvedCall setFunction = bindingContext.get(INDEXED_LVALUE_SET, expression); diff --git a/idea/src/org/jetbrains/jet/plugin/references/JetInvokeFunctionReference.java b/idea/src/org/jetbrains/jet/plugin/references/JetInvokeFunctionReference.java index d1969715f21..a0501a7670d 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/JetInvokeFunctionReference.java +++ b/idea/src/org/jetbrains/jet/plugin/references/JetInvokeFunctionReference.java @@ -30,7 +30,7 @@ import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.lang.resolve.calls.model.ResolvedCall; import org.jetbrains.jet.lang.resolve.calls.model.VariableAsFunctionResolvedCall; import org.jetbrains.jet.lexer.JetTokens; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.ArrayList; import java.util.List; @@ -55,7 +55,7 @@ class JetInvokeFunctionReference extends JetPsiReference implements MultiRangeRe @Override protected PsiElement doResolve() { JetExpression calleeExpression = ((JetCallExpression) myExpression).getCalleeExpression(); - BindingContext bindingContext = WholeProjectAnalyzerFacade.getContextForElement(myExpression); + BindingContext bindingContext = AnalyzerFacadeWithCache.getContextForElement(myExpression); ResolvedCall invokeFunction = bindingContext.get(RESOLVED_CALL, calleeExpression); diff --git a/idea/src/org/jetbrains/jet/plugin/references/JetPsiReference.java b/idea/src/org/jetbrains/jet/plugin/references/JetPsiReference.java index 81cea61310f..a999808a5ee 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/JetPsiReference.java +++ b/idea/src/org/jetbrains/jet/plugin/references/JetPsiReference.java @@ -30,7 +30,7 @@ import org.jetbrains.jet.lang.psi.JetReferenceExpression; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContextUtils; import org.jetbrains.jet.lang.resolve.java.JetClsMethod; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.ArrayList; import java.util.Collection; @@ -104,7 +104,7 @@ public abstract class JetPsiReference implements PsiPolyVariantReference { @Nullable protected PsiElement doResolve() { - BindingContext context = WholeProjectAnalyzerFacade.getContextForElement(myExpression); + BindingContext context = AnalyzerFacadeWithCache.getContextForElement(myExpression); List psiElements = BindingContextUtils.resolveToDeclarationPsiElements(context, myExpression); if (psiElements.size() == 1) { @@ -123,7 +123,7 @@ public abstract class JetPsiReference implements PsiPolyVariantReference { protected ResolveResult[] doMultiResolve() { JetFile file = (JetFile) getElement().getContainingFile(); - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(file).getBindingContext(); + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache(file).getBindingContext(); Collection declarationDescriptors = bindingContext.get(AMBIGUOUS_REFERENCE_TARGET, myExpression); if (declarationDescriptors == null) { List psiElements = BindingContextUtils.resolveToDeclarationPsiElements(bindingContext, myExpression); diff --git a/idea/src/org/jetbrains/jet/plugin/references/JetSimpleNameReference.java b/idea/src/org/jetbrains/jet/plugin/references/JetSimpleNameReference.java index 9e231541cd5..3d4521f64df 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/JetSimpleNameReference.java +++ b/idea/src/org/jetbrains/jet/plugin/references/JetSimpleNameReference.java @@ -29,8 +29,8 @@ import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lexer.JetTokens; import org.jetbrains.jet.plugin.codeInsight.TipsManager; import org.jetbrains.jet.plugin.completion.DescriptorLookupConverter; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.project.CancelableResolveSession; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; public class JetSimpleNameReference extends JetPsiReference { @@ -57,7 +57,7 @@ public class JetSimpleNameReference extends JetPsiReference { @Override public Object[] getVariants() { CancelableResolveSession resolveSession = - WholeProjectAnalyzerFacade.getLazyResolveResultForFile((JetFile) getExpression().getContainingFile()); + AnalyzerFacadeWithCache.getLazyResolveSessionForFile((JetFile) getExpression().getContainingFile()); BindingContext bindingContext = resolveSession.resolveToElement(getExpression()); return DescriptorLookupConverter.collectLookupElements( diff --git a/idea/src/org/jetbrains/jet/plugin/search/KotlinDirectInheritorsSearcher.java b/idea/src/org/jetbrains/jet/plugin/search/KotlinDirectInheritorsSearcher.java index b9462828a8b..a4148821fbc 100644 --- a/idea/src/org/jetbrains/jet/plugin/search/KotlinDirectInheritorsSearcher.java +++ b/idea/src/org/jetbrains/jet/plugin/search/KotlinDirectInheritorsSearcher.java @@ -32,7 +32,7 @@ import org.jetbrains.jet.lang.resolve.DescriptorUtils; import org.jetbrains.jet.lang.resolve.lazy.KotlinCodeAnalyzer; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.plugin.libraries.JetSourceNavigationHelper; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.plugin.stubindex.JetSuperClassIndex; import java.util.Collection; @@ -63,7 +63,7 @@ public class KotlinDirectInheritorsSearcher extends QueryExecutorBase descriptors = handler.collectMethodsToGenerate(classOrObject, bindingContext); @@ -262,8 +261,7 @@ public class OverrideImplementTest extends LightCodeInsightFixtureTestCase { assertNotNull("Caret should be inside class or object", classOrObject); final JetFile jetFile = (JetFile) classOrObject.getContainingFile(); - final BindingContext bindingContext = WholeProjectAnalyzerFacade - .analyzeProjectWithCacheOnAFile(jetFile) + final BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache(jetFile) .getBindingContext(); Set descriptors = handler.collectMethodsToGenerate(classOrObject, bindingContext); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/QuickFixActionsUtils.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/QuickFixActionsUtils.java index e51a122bf24..5b9c67818ab 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/QuickFixActionsUtils.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/QuickFixActionsUtils.java @@ -30,7 +30,7 @@ import org.jetbrains.jet.lang.diagnostics.Diagnostic; import org.jetbrains.jet.lang.diagnostics.Severity; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.plugin.highlighter.IdeErrorMessages; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import java.util.Collection; import java.util.Collections; @@ -45,7 +45,7 @@ public class QuickFixActionsUtils { return; } - AnalyzeExhaust exhaust = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile(file); + AnalyzeExhaust exhaust = AnalyzerFacadeWithCache.analyzeFileWithCache(file); Collection diagnostics = exhaust.getBindingContext().getDiagnostics(); Collection errorDiagnostics = Collections2.filter(diagnostics, new Predicate() { diff --git a/idea/tests/org/jetbrains/jet/plugin/refactoring/rename/RenameInKotlinTest.java b/idea/tests/org/jetbrains/jet/plugin/refactoring/rename/RenameInKotlinTest.java index aa676ca32ae..3b1b40ae831 100644 --- a/idea/tests/org/jetbrains/jet/plugin/refactoring/rename/RenameInKotlinTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/refactoring/rename/RenameInKotlinTest.java @@ -18,7 +18,6 @@ package org.jetbrains.jet.plugin.refactoring.rename; import com.intellij.openapi.editor.Document; import com.intellij.openapi.fileEditor.FileDocumentManager; -import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.openapi.vfs.VirtualFileManager; import com.intellij.psi.PsiDocumentManager; @@ -38,7 +37,7 @@ import org.jetbrains.jet.lang.resolve.name.Name; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.types.TypeProjection; import org.jetbrains.jet.plugin.PluginTestCaseBase; -import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; +import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache; import org.jetbrains.jet.testing.LocalFileSystemUtils; import java.io.File; @@ -69,7 +68,7 @@ public class RenameInKotlinTest extends MultiFileTestCase { doTestWithRename(new Function() { @Override public PsiElement fun(PsiFile file) { - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) file) + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) file) .getBindingContext(); ClassDescriptor classDescriptor = bindingContext.get(BindingContext.FQNAME_TO_CLASS_DESCRIPTOR, qClassName); @@ -85,7 +84,7 @@ public class RenameInKotlinTest extends MultiFileTestCase { doTestWithRename(new Function() { @Override public PsiElement fun(PsiFile file) { - BindingContext bindingContext = WholeProjectAnalyzerFacade.analyzeProjectWithCacheOnAFile((JetFile) file) + BindingContext bindingContext = AnalyzerFacadeWithCache.analyzeFileWithCache((JetFile) file) .getBindingContext(); ClassDescriptor classDescriptor = bindingContext.get(BindingContext.FQNAME_TO_CLASS_DESCRIPTOR, qClassName);