From 48f696947f9622aae69533309f08af9ad9f1a351 Mon Sep 17 00:00:00 2001 From: Valentin Kipyatkov Date: Fri, 21 Nov 2014 19:24:49 +0300 Subject: [PATCH] Switched to ResolutionFacade --- .../internal/CheckPartialBodyResolveAction.kt | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/idea/src/org/jetbrains/jet/plugin/actions/internal/CheckPartialBodyResolveAction.kt b/idea/src/org/jetbrains/jet/plugin/actions/internal/CheckPartialBodyResolveAction.kt index 7788fcdad9b..6cfeb4fe3ec 100644 --- a/idea/src/org/jetbrains/jet/plugin/actions/internal/CheckPartialBodyResolveAction.kt +++ b/idea/src/org/jetbrains/jet/plugin/actions/internal/CheckPartialBodyResolveAction.kt @@ -30,9 +30,7 @@ import com.intellij.openapi.progress.ProgressManager import org.jetbrains.jet.lang.psi.JetVisitorVoid import org.jetbrains.jet.lang.psi.JetElement import org.jetbrains.jet.lang.psi.JetReferenceExpression -import org.jetbrains.jet.plugin.caches.resolve.getLazyResolveSession import org.jetbrains.jet.lang.resolve.BindingContext -import org.jetbrains.jet.plugin.project.ResolveSessionForBodies import com.intellij.openapi.fileEditor.FileDocumentManager import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor import org.jetbrains.jet.renderer.DescriptorRenderer @@ -47,6 +45,8 @@ import javax.swing.SwingUtilities import org.jetbrains.jet.lang.psi.JetNameReferenceExpression import org.jetbrains.jet.lang.psi.JetExpression import org.jetbrains.jet.lang.types.JetType +import org.jetbrains.jet.plugin.caches.resolve.ResolutionFacade +import org.jetbrains.jet.plugin.caches.resolve.getResolutionFacade public class CheckPartialBodyResolveAction : AnAction() { override fun actionPerformed(e: AnActionEvent) { @@ -67,10 +67,12 @@ public class CheckPartialBodyResolveAction : AnAction() { progressIndicator?.setText("Checking resolve $i of ${files.size}...") progressIndicator?.setText2(file.getVirtualFile().getPath()) - val partialResolveDump = dumpResolve(file) {(element, resolveSession) -> - resolveSession.resolveToElementWithPartialBodyResolve(element) + val partialResolveDump = dumpResolve(file) {(element, resolutionFacade) -> + resolutionFacade.analyzeWithPartialBodyResolve(element) + } + val goldDump = dumpResolve(file) {(element, resolutionFacade) -> + resolutionFacade.analyze(element) } - val goldDump = dumpResolve(file) {(element, resolveSession) -> resolveSession.resolveToElement(element) } if (partialResolveDump != goldDump) { SwingUtilities.invokeLater { val title = "Difference Found in File ${file.getVirtualFile().getPath()}" @@ -100,9 +102,9 @@ public class CheckPartialBodyResolveAction : AnAction() { } } - private fun dumpResolve(file: JetFile, resolver: (JetElement, ResolveSessionForBodies) -> BindingContext): String { + private fun dumpResolve(file: JetFile, resolver: (JetElement, ResolutionFacade) -> BindingContext): String { val builder = StringBuilder() - val resolveSession = file.getLazyResolveSession() + val resolutionFacade = file.getResolutionFacade() val document = FileDocumentManager.getInstance().getDocument(file.getVirtualFile()) file.acceptChildren(object : JetVisitorVoid(){ override fun visitJetElement(element: JetElement) { @@ -113,7 +115,7 @@ public class CheckPartialBodyResolveAction : AnAction() { override fun visitReferenceExpression(expression: JetReferenceExpression) { super.visitReferenceExpression(expression) - val bindingContext = resolver(expression, resolveSession) + val bindingContext = resolver(expression, resolutionFacade) val target = bindingContext[BindingContext.REFERENCE_TARGET, expression] val offset = expression.getTextOffset() val line = document.getLineNumber(offset) @@ -125,7 +127,7 @@ public class CheckPartialBodyResolveAction : AnAction() { override fun visitExpression(expression: JetExpression) { super.visitExpression(expression) - val bindingContext = resolver(expression, resolveSession) + val bindingContext = resolver(expression, resolutionFacade) val offset = expression.getTextOffset() val line = document.getLineNumber(offset)