From 645b878ac2bbfd87b1a5f7cba91223abc9741155 Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Wed, 30 Oct 2013 15:31:53 +0400 Subject: [PATCH] Java resides in the same module as Kotlin --- .../lang/resolve/java/JavaDescriptorResolver.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java index 9f242e43206..275fd834a01 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java @@ -21,6 +21,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.PlatformToKotlinClassMap; import org.jetbrains.jet.lang.descriptors.ClassDescriptor; +import org.jetbrains.jet.lang.descriptors.ModuleDescriptor; import org.jetbrains.jet.lang.descriptors.ModuleDescriptorImpl; import org.jetbrains.jet.lang.resolve.ImportPath; import org.jetbrains.jet.lang.resolve.java.lazy.GlobalJavaResolverContext; @@ -50,6 +51,9 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes } public static final Name JAVA_ROOT = Name.special(""); + public static final ModuleDescriptor FAKE_JAVA_MODULE = new ModuleDescriptorImpl(Name.special(""), Collections.emptyList(), + PlatformToKotlinClassMap.EMPTY); + private final LockBasedStorageManager storageManager = new LockBasedStorageManager(); private final MemoizedFunctionToNullable kotlinClassesFromBinaries = storageManager.createMemoizedFunctionWithNullableValues( @@ -80,6 +84,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes private JavaResolverCache javaResolverCache; private DeserializedDescriptorResolver deserializedDescriptorResolver; private KotlinClassFinder kotlinClassFinder; + private ModuleDescriptor module; @Inject public void setClassResolver(JavaClassResolver classResolver) { @@ -131,6 +136,11 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes this.kotlinClassFinder = kotlinClassFinder; } + @Inject + public void setModule(ModuleDescriptor module) { + this.module = module; + } + @NotNull private LazyJavaSubModule getSubModule() { if (subModule == null) { @@ -170,7 +180,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes signatureChecker, javaResolverCache ), - new ModuleDescriptorImpl(Name.special(""), Collections.emptyList(), PlatformToKotlinClassMap.EMPTY) + module ); } return subModule;