Make an abstraction over VirtualFileFinder
Java descriptor loader now can work with KotlinClassFinder, which finds abstract KotlinJvmBinaryClass'es: they are based on VirtualFile in the compiler/IDE and will be based on j.l.Class in the reflection
This commit is contained in:
@@ -41,6 +41,7 @@ import org.jetbrains.jet.lang.resolve.java.PsiClassFinderImpl;
|
||||
import org.jetbrains.jet.lang.resolve.java.mapping.JavaToKotlinClassMap;
|
||||
import org.jetbrains.jet.lang.resolve.java.resolver.*;
|
||||
import org.jetbrains.jet.lang.resolve.kotlin.VirtualFileFinder;
|
||||
import org.jetbrains.jet.lang.resolve.kotlin.VirtualFileKotlinClassFinder;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.ResolveSession;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.ScopeProvider;
|
||||
import org.jetbrains.jet.lang.types.DependencyClassByQualifiedNameResolverDummyImpl;
|
||||
@@ -130,6 +131,7 @@ public class GenerateInjectors {
|
||||
generator.addField(TraceBasedErrorReporter.class);
|
||||
generator.addField(PsiBasedMethodSignatureChecker.class);
|
||||
generator.addField(PsiBasedExternalAnnotationResolver.class);
|
||||
generator.addField(VirtualFileKotlinClassFinder.class);
|
||||
generator.addPublicField(NamespaceFactoryImpl.class);
|
||||
generator.addField(false, VirtualFileFinder.class, "virtualFileFinder",
|
||||
new GivenExpression(
|
||||
@@ -155,6 +157,7 @@ public class GenerateInjectors {
|
||||
generator.addField(PsiBasedExternalAnnotationResolver.class);
|
||||
generator.addPublicField(JavaDescriptorResolver.class);
|
||||
generator.addPublicField(PsiClassFinderImpl.class);
|
||||
generator.addField(VirtualFileKotlinClassFinder.class);
|
||||
generator.addField(false, VirtualFileFinder.class, "virtualFileFinder",
|
||||
new GivenExpression("com.intellij.openapi.components.ServiceManager.getService(project, VirtualFileFinder.class)"));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user