From e2809b8080a40b919c15407fb23328b6e4dc66f6 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Thu, 25 Oct 2012 21:38:03 +0400 Subject: [PATCH] Revert changes introduced in a31b7480 JavaElementFinder is no longer needed to find namespace$src$ classes --- .../org/jetbrains/jet/asJava/JavaElementFinder.java | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java b/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java index 6553acae61a..1c99d3ce3d7 100644 --- a/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java +++ b/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java @@ -109,11 +109,6 @@ public class JavaElementFinder extends PsiElementFinder implements JavaPsiFacade FqName qualifiedName = new FqName(qualifiedNameString); - // qualifiedNameString's format can be "pkg.subpkg.Class$Inner$Inner" (e.g. from com.intellij.execution.filters.ExceptionWorker), - // which is neither a fully qualified name, nor an internal name. If we can, we should construct an internal name from it to handle - // 'namespace$src$...' queries more accurately. It's not a real internal name though, so it's not supposed to be used anywhere else - String internalNameUnsafe = qualifiedNameString.replace('.', '/'); - // Backend searches for java.lang.String. Will fail with SOE if continue if (qualifiedName.getFqName().startsWith("java.")) return PsiClass.EMPTY_ARRAY; @@ -122,10 +117,8 @@ public class JavaElementFinder extends PsiElementFinder implements JavaPsiFacade for (JetFile file : filesInScope) { final FqName packageName = JetPsiUtil.getFQName(file); if (packageName != null && qualifiedName.getFqName().startsWith(packageName.getFqName())) { - String packageInternalName = NamespaceCodegen.getJVMClassNameForKotlinNs(packageName).getInternalName(); - String multiFileNamespaceInternalName = NamespaceCodegen.getNamespacePartInternalName(file); - if (multiFileNamespaceInternalName.equals(internalNameUnsafe) || - (packageInternalName.equals(internalNameUnsafe) && NamespaceCodegen.shouldGenerateNSClass(Arrays.asList(file)))) { + if (qualifiedName.equals(QualifiedNamesUtil.combine(packageName, Name.identifier(JvmAbi.PACKAGE_CLASS))) && + NamespaceCodegen.shouldGenerateNSClass(Arrays.asList(file))) { JetLightClass lightClass = JetLightClass.create(psiManager, file, qualifiedName); if (lightClass != null) { answer.add(lightClass);