Simplify injectors for frontend.java
- delete InjectorForJavaSemanticServices, replace its usages with InjectorForJavaDescriptorResolver - delete unneeded fields and parameters of InjectorForJavaDescriptorResolver
This commit is contained in:
committed by
Pavel V. Talanov
parent
3bd9d9ee32
commit
2d7a5ebf36
@@ -24,17 +24,20 @@ import org.jetbrains.jet.codegen.ScriptCodegen;
|
||||
import org.jetbrains.jet.codegen.intrinsics.IntrinsicMethods;
|
||||
import org.jetbrains.jet.codegen.state.GenerationState;
|
||||
import org.jetbrains.jet.codegen.state.JetTypeMapper;
|
||||
import org.jetbrains.jet.di.*;
|
||||
import org.jetbrains.jet.di.DependencyInjectorGenerator;
|
||||
import org.jetbrains.jet.di.GivenExpression;
|
||||
import org.jetbrains.jet.di.InjectorForTopDownAnalyzer;
|
||||
import org.jetbrains.jet.lang.descriptors.ModuleDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.ModuleDescriptorImpl;
|
||||
import org.jetbrains.jet.lang.psi.JetImportsFactory;
|
||||
import org.jetbrains.jet.lang.resolve.*;
|
||||
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
|
||||
import org.jetbrains.jet.lang.resolve.calls.NeedSyntheticCallResolverExtension;
|
||||
import org.jetbrains.jet.lang.resolve.java.*;
|
||||
import org.jetbrains.jet.lang.resolve.java.JavaBridgeConfiguration;
|
||||
import org.jetbrains.jet.lang.resolve.java.JavaDescriptorResolver;
|
||||
import org.jetbrains.jet.lang.resolve.java.PsiClassFinderImpl;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.ResolveSession;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.ScopeProvider;
|
||||
import org.jetbrains.jet.lang.resolve.name.Name;
|
||||
import org.jetbrains.jet.lang.types.DependencyClassByQualifiedNameResolverDummyImpl;
|
||||
import org.jetbrains.jet.lang.types.expressions.ExpressionTypingServices;
|
||||
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
|
||||
@@ -55,7 +58,6 @@ public class GenerateInjectors {
|
||||
generateInjectorForTopDownAnalyzerForJs();
|
||||
generateMacroInjector();
|
||||
generateTestInjector();
|
||||
generateInjectorForJavaSemanticServices();
|
||||
generateInjectorForJvmCodegen();
|
||||
generateInjectorForLazyResolve();
|
||||
generateInjectorForBodyResolve();
|
||||
@@ -109,13 +111,10 @@ public class GenerateInjectors {
|
||||
DependencyInjectorGenerator generator = new DependencyInjectorGenerator();
|
||||
|
||||
// Parameters
|
||||
generator.addPublicParameter(Project.class);
|
||||
generator.addPublicParameter(BindingTrace.class);
|
||||
generator.addPublicParameter(ModuleDescriptor.class);
|
||||
generator.addParameter(Project.class);
|
||||
generator.addParameter(BindingTrace.class);
|
||||
|
||||
// Fields
|
||||
generator.addPublicField(JavaBridgeConfiguration.class);
|
||||
generator.addPublicField(JavaSemanticServices.class);
|
||||
generator.addPublicField(JavaDescriptorResolver.class);
|
||||
generator.addPublicField(PsiClassFinderImpl.class);
|
||||
|
||||
@@ -172,29 +171,6 @@ public class GenerateInjectors {
|
||||
generator.generate("compiler/tests", "org.jetbrains.jet.di", "InjectorForTests", GenerateInjectors.class);
|
||||
}
|
||||
|
||||
private static void generateInjectorForJavaSemanticServices() throws IOException {
|
||||
DependencyInjectorGenerator generator = new DependencyInjectorGenerator();
|
||||
|
||||
// Fields
|
||||
generator.addPublicField(JavaSemanticServices.class);
|
||||
generator.addPublicField(JavaDescriptorResolver.class);
|
||||
generator.addField(true, BindingTrace.class, null,
|
||||
new GivenExpression("new org.jetbrains.jet.lang.resolve.BindingTraceContext()"));
|
||||
generator.addField(JavaBridgeConfiguration.class);
|
||||
generator.addPublicField(PsiClassFinderImpl.class);
|
||||
generator.addField(false, ModuleDescriptorImpl.class, null,
|
||||
new GivenExpression("new " + ModuleDescriptorImpl.class.getCanonicalName() + "(" +
|
||||
Name.class.getCanonicalName() + ".special(\"<dummy>\"), " +
|
||||
JavaBridgeConfiguration.class.getCanonicalName() + ".ALL_JAVA_IMPORTS, " +
|
||||
JavaToKotlinClassMap.class.getCanonicalName() + ".getInstance())"));
|
||||
|
||||
// Parameters
|
||||
generator.addPublicParameter(Project.class);
|
||||
|
||||
generator.generate("compiler/frontend.java/src", "org.jetbrains.jet.di", "InjectorForJavaSemanticServices",
|
||||
GenerateInjectors.class);
|
||||
}
|
||||
|
||||
private static void generateInjectorForJvmCodegen() throws IOException {
|
||||
DependencyInjectorGenerator generator = new DependencyInjectorGenerator();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user