GenerateInjectors cleaned up

This commit is contained in:
Andrey Breslav
2014-12-02 17:52:54 +03:00
parent c21dd366e0
commit 6efa0032e5
8 changed files with 38 additions and 44 deletions
@@ -40,7 +40,7 @@ import org.jetbrains.jet.lang.resolve.java.resolver.JavaSourceElementFactoryImpl
import org.jetbrains.jet.lang.resolve.java.JavaFlexibleTypeCapabilitiesProvider;
import org.jetbrains.jet.context.LazyResolveToken;
import org.jetbrains.jet.lang.resolve.java.JavaLazyAnalyzerPostConstruct;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider;
import org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider;
import org.jetbrains.jet.lang.resolve.AnnotationResolver;
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
import org.jetbrains.jet.lang.resolve.calls.ArgumentTypeResolver;
@@ -102,7 +102,7 @@ public class InjectorForLazyResolveWithJava {
private final JavaFlexibleTypeCapabilitiesProvider javaFlexibleTypeCapabilitiesProvider;
private final LazyResolveToken lazyResolveToken;
private final JavaLazyAnalyzerPostConstruct javaLazyAnalyzerPostConstruct;
private final AdditionalCheckerProvider additionalCheckerProvider;
private final JavaDeclarationCheckerProvider javaDeclarationCheckerProvider;
private final AnnotationResolver annotationResolver;
private final CallResolver callResolver;
private final ArgumentTypeResolver argumentTypeResolver;
@@ -170,7 +170,7 @@ public class InjectorForLazyResolveWithJava {
this.javaFlexibleTypeCapabilitiesProvider = new JavaFlexibleTypeCapabilitiesProvider();
this.lazyResolveToken = new LazyResolveToken();
this.javaLazyAnalyzerPostConstruct = new JavaLazyAnalyzerPostConstruct();
this.additionalCheckerProvider = org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider.INSTANCE$;
this.javaDeclarationCheckerProvider = JavaDeclarationCheckerProvider.INSTANCE$;
this.annotationResolver = new AnnotationResolver();
this.callResolver = new CallResolver();
this.argumentTypeResolver = new ArgumentTypeResolver();
@@ -249,7 +249,7 @@ public class InjectorForLazyResolveWithJava {
expressionTypingServices.setProject(project);
expressionTypingServices.setTypeResolver(typeResolver);
expressionTypingComponents.setAdditionalCheckerProvider(additionalCheckerProvider);
expressionTypingComponents.setAdditionalCheckerProvider(javaDeclarationCheckerProvider);
expressionTypingComponents.setCallResolver(callResolver);
expressionTypingComponents.setControlStructureTypingUtils(controlStructureTypingUtils);
expressionTypingComponents.setDynamicTypesSettings(dynamicTypesSettings);
@@ -42,7 +42,7 @@ import org.jetbrains.jet.lang.resolve.MutablePackageFragmentProvider;
import org.jetbrains.jet.lang.resolve.java.lazy.SingleModuleClassResolver;
import org.jetbrains.jet.lang.resolve.java.JavaLazyAnalyzerPostConstruct;
import org.jetbrains.jet.lang.resolve.java.JavaFlexibleTypeCapabilitiesProvider;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider;
import org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider;
import org.jetbrains.jet.lang.resolve.lazy.ScopeProvider.AdditionalFileScopeProvider;
import org.jetbrains.jet.lang.resolve.AnnotationResolver;
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
@@ -119,7 +119,7 @@ public class InjectorForReplWithJava {
private final SingleModuleClassResolver singleModuleClassResolver;
private final JavaLazyAnalyzerPostConstruct javaLazyAnalyzerPostConstruct;
private final JavaFlexibleTypeCapabilitiesProvider javaFlexibleTypeCapabilitiesProvider;
private final AdditionalCheckerProvider additionalCheckerProvider;
private final JavaDeclarationCheckerProvider javaDeclarationCheckerProvider;
private final AdditionalFileScopeProvider additionalFileScopeProvider;
private final AnnotationResolver annotationResolver;
private final CallResolver callResolver;
@@ -204,7 +204,7 @@ public class InjectorForReplWithJava {
this.mutablePackageFragmentProvider = new MutablePackageFragmentProvider(module);
this.javaLazyAnalyzerPostConstruct = new JavaLazyAnalyzerPostConstruct();
this.javaFlexibleTypeCapabilitiesProvider = new JavaFlexibleTypeCapabilitiesProvider();
this.additionalCheckerProvider = org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider.INSTANCE$;
this.javaDeclarationCheckerProvider = JavaDeclarationCheckerProvider.INSTANCE$;
this.additionalFileScopeProvider = additionalFileScopeProvider;
this.annotationResolver = new AnnotationResolver();
this.callResolver = new CallResolver();
@@ -233,7 +233,7 @@ public class InjectorForReplWithJava {
this.bodyResolver = new BodyResolver();
this.controlFlowAnalyzer = new ControlFlowAnalyzer();
this.declarationsChecker = new DeclarationsChecker();
this.modifiersChecker = new ModifiersChecker(bindingTrace, additionalCheckerProvider);
this.modifiersChecker = new ModifiersChecker(bindingTrace, javaDeclarationCheckerProvider);
this.functionAnalyzerExtension = new FunctionAnalyzerExtension();
this.declarationResolver = new DeclarationResolver();
this.importsResolver = new ImportsResolver();
@@ -306,7 +306,7 @@ public class InjectorForReplWithJava {
expressionTypingServices.setProject(project);
expressionTypingServices.setTypeResolver(typeResolver);
expressionTypingComponents.setAdditionalCheckerProvider(additionalCheckerProvider);
expressionTypingComponents.setAdditionalCheckerProvider(javaDeclarationCheckerProvider);
expressionTypingComponents.setCallResolver(callResolver);
expressionTypingComponents.setControlStructureTypingUtils(controlStructureTypingUtils);
expressionTypingComponents.setDynamicTypesSettings(dynamicTypesSettings);
@@ -42,7 +42,7 @@ import org.jetbrains.jet.lang.resolve.MutablePackageFragmentProvider;
import org.jetbrains.jet.lang.resolve.java.lazy.SingleModuleClassResolver;
import org.jetbrains.jet.lang.resolve.java.JavaLazyAnalyzerPostConstruct;
import org.jetbrains.jet.lang.resolve.java.JavaFlexibleTypeCapabilitiesProvider;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider;
import org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider;
import org.jetbrains.jet.lang.resolve.AnnotationResolver;
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
import org.jetbrains.jet.lang.resolve.calls.ArgumentTypeResolver;
@@ -119,7 +119,7 @@ public class InjectorForTopDownAnalyzerForJvm {
private final SingleModuleClassResolver singleModuleClassResolver;
private final JavaLazyAnalyzerPostConstruct javaLazyAnalyzerPostConstruct;
private final JavaFlexibleTypeCapabilitiesProvider javaFlexibleTypeCapabilitiesProvider;
private final AdditionalCheckerProvider additionalCheckerProvider;
private final JavaDeclarationCheckerProvider javaDeclarationCheckerProvider;
private final AnnotationResolver annotationResolver;
private final CallResolver callResolver;
private final ArgumentTypeResolver argumentTypeResolver;
@@ -203,7 +203,7 @@ public class InjectorForTopDownAnalyzerForJvm {
this.mutablePackageFragmentProvider = new MutablePackageFragmentProvider(module);
this.javaLazyAnalyzerPostConstruct = new JavaLazyAnalyzerPostConstruct();
this.javaFlexibleTypeCapabilitiesProvider = new JavaFlexibleTypeCapabilitiesProvider();
this.additionalCheckerProvider = org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider.INSTANCE$;
this.javaDeclarationCheckerProvider = JavaDeclarationCheckerProvider.INSTANCE$;
this.annotationResolver = new AnnotationResolver();
this.callResolver = new CallResolver();
this.argumentTypeResolver = new ArgumentTypeResolver();
@@ -232,7 +232,7 @@ public class InjectorForTopDownAnalyzerForJvm {
this.bodyResolver = new BodyResolver();
this.controlFlowAnalyzer = new ControlFlowAnalyzer();
this.declarationsChecker = new DeclarationsChecker();
this.modifiersChecker = new ModifiersChecker(bindingTrace, additionalCheckerProvider);
this.modifiersChecker = new ModifiersChecker(bindingTrace, javaDeclarationCheckerProvider);
this.functionAnalyzerExtension = new FunctionAnalyzerExtension();
this.declarationResolver = new DeclarationResolver();
this.importsResolver = new ImportsResolver();
@@ -305,7 +305,7 @@ public class InjectorForTopDownAnalyzerForJvm {
expressionTypingServices.setProject(project);
expressionTypingServices.setTypeResolver(typeResolver);
expressionTypingComponents.setAdditionalCheckerProvider(additionalCheckerProvider);
expressionTypingComponents.setAdditionalCheckerProvider(javaDeclarationCheckerProvider);
expressionTypingComponents.setCallResolver(callResolver);
expressionTypingComponents.setControlStructureTypingUtils(controlStructureTypingUtils);
expressionTypingComponents.setDynamicTypesSettings(dynamicTypesSettings);
@@ -25,7 +25,7 @@ import org.jetbrains.jet.lang.PlatformToKotlinClassMap;
import org.jetbrains.jet.lang.resolve.lazy.declarations.DeclarationProviderFactory;
import org.jetbrains.jet.lang.resolve.lazy.ResolveSession;
import org.jetbrains.jet.lang.resolve.LazyTopDownAnalyzer;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider.Empty;
import org.jetbrains.jet.lang.resolve.AnnotationResolver;
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
import org.jetbrains.jet.lang.resolve.calls.ArgumentTypeResolver;
@@ -82,7 +82,7 @@ public class InjectorForLazyTopDownAnalyzerBasic {
private final DeclarationProviderFactory declarationProviderFactory;
private final ResolveSession resolveSession;
private final LazyTopDownAnalyzer lazyTopDownAnalyzer;
private final AdditionalCheckerProvider additionalCheckerProvider;
private final Empty empty;
private final AnnotationResolver annotationResolver;
private final CallResolver callResolver;
private final ArgumentTypeResolver argumentTypeResolver;
@@ -140,7 +140,7 @@ public class InjectorForLazyTopDownAnalyzerBasic {
this.declarationProviderFactory = declarationProviderFactory;
this.resolveSession = new ResolveSession(project, globalContext, module, declarationProviderFactory, bindingTrace);
this.lazyTopDownAnalyzer = new LazyTopDownAnalyzer();
this.additionalCheckerProvider = org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider.Empty.INSTANCE$;
this.empty = Empty.INSTANCE$;
this.annotationResolver = new AnnotationResolver();
this.callResolver = new CallResolver();
this.argumentTypeResolver = new ArgumentTypeResolver();
@@ -170,7 +170,7 @@ public class InjectorForLazyTopDownAnalyzerBasic {
this.bodyResolver = new BodyResolver();
this.controlFlowAnalyzer = new ControlFlowAnalyzer();
this.declarationsChecker = new DeclarationsChecker();
this.modifiersChecker = new ModifiersChecker(bindingTrace, additionalCheckerProvider);
this.modifiersChecker = new ModifiersChecker(bindingTrace, empty);
this.functionAnalyzerExtension = new FunctionAnalyzerExtension();
this.declarationResolver = new DeclarationResolver();
this.importsResolver = new ImportsResolver();
@@ -223,7 +223,7 @@ public class InjectorForLazyTopDownAnalyzerBasic {
expressionTypingServices.setProject(project);
expressionTypingServices.setTypeResolver(typeResolver);
expressionTypingComponents.setAdditionalCheckerProvider(additionalCheckerProvider);
expressionTypingComponents.setAdditionalCheckerProvider(empty);
expressionTypingComponents.setCallResolver(callResolver);
expressionTypingComponents.setControlStructureTypingUtils(controlStructureTypingUtils);
expressionTypingComponents.setDynamicTypesSettings(dynamicTypesSettings);
@@ -24,7 +24,7 @@ import org.jetbrains.jet.lang.types.expressions.ExpressionTypingComponents;
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
import org.jetbrains.jet.context.GlobalContext;
import org.jetbrains.jet.storage.StorageManager;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider.Empty;
import org.jetbrains.jet.lang.resolve.AnnotationResolver;
import org.jetbrains.jet.lang.resolve.TypeResolver;
import org.jetbrains.jet.lang.resolve.QualifiedExpressionResolver;
@@ -59,7 +59,7 @@ public class InjectorForMacros {
private final CallResolver callResolver;
private final GlobalContext globalContext;
private final StorageManager storageManager;
private final AdditionalCheckerProvider additionalCheckerProvider;
private final Empty empty;
private final AnnotationResolver annotationResolver;
private final TypeResolver typeResolver;
private final QualifiedExpressionResolver qualifiedExpressionResolver;
@@ -92,7 +92,7 @@ public class InjectorForMacros {
this.callResolver = new CallResolver();
this.globalContext = org.jetbrains.jet.context.ContextPackage.GlobalContext();
this.storageManager = globalContext.getStorageManager();
this.additionalCheckerProvider = org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider.Empty.INSTANCE$;
this.empty = Empty.INSTANCE$;
this.annotationResolver = new AnnotationResolver();
this.qualifiedExpressionResolver = new QualifiedExpressionResolver();
this.flexibleTypeCapabilitiesProvider = new FlexibleTypeCapabilitiesProvider();
@@ -122,7 +122,7 @@ public class InjectorForMacros {
this.expressionTypingServices.setProject(project);
this.expressionTypingServices.setTypeResolver(typeResolver);
this.expressionTypingComponents.setAdditionalCheckerProvider(additionalCheckerProvider);
this.expressionTypingComponents.setAdditionalCheckerProvider(empty);
this.expressionTypingComponents.setCallResolver(callResolver);
this.expressionTypingComponents.setControlStructureTypingUtils(controlStructureTypingUtils);
this.expressionTypingComponents.setDynamicTypesSettings(dynamicTypesSettings);
@@ -25,7 +25,7 @@ import org.jetbrains.jet.lang.types.expressions.ExpressionTypingUtils;
import org.jetbrains.jet.lang.resolve.TypeResolver;
import org.jetbrains.jet.context.GlobalContext;
import org.jetbrains.jet.storage.StorageManager;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider;
import org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider;
import org.jetbrains.jet.lang.resolve.AnnotationResolver;
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
import org.jetbrains.jet.lang.resolve.calls.ArgumentTypeResolver;
@@ -60,7 +60,7 @@ public class InjectorForTests {
private final TypeResolver typeResolver;
private final GlobalContext globalContext;
private final StorageManager storageManager;
private final AdditionalCheckerProvider additionalCheckerProvider;
private final JavaDeclarationCheckerProvider javaDeclarationCheckerProvider;
private final AnnotationResolver annotationResolver;
private final CallResolver callResolver;
private final ArgumentTypeResolver argumentTypeResolver;
@@ -100,7 +100,7 @@ public class InjectorForTests {
this.lazinessToken = new LazinessToken();
this.dynamicTypesSettings = new DynamicTypesSettings();
this.typeResolver = new TypeResolver(annotationResolver, qualifiedExpressionResolver, moduleDescriptor, flexibleTypeCapabilitiesProvider, storageManager, lazinessToken, dynamicTypesSettings);
this.additionalCheckerProvider = org.jetbrains.jet.lang.resolve.kotlin.JavaDeclarationCheckerProvider.INSTANCE$;
this.javaDeclarationCheckerProvider = JavaDeclarationCheckerProvider.INSTANCE$;
this.argumentTypeResolver = new ArgumentTypeResolver();
this.candidateResolver = new CandidateResolver();
this.callCompleter = new CallCompleter(argumentTypeResolver, candidateResolver);
@@ -147,7 +147,7 @@ public class InjectorForTests {
delegatedPropertyResolver.setCallResolver(callResolver);
delegatedPropertyResolver.setExpressionTypingServices(expressionTypingServices);
expressionTypingComponents.setAdditionalCheckerProvider(additionalCheckerProvider);
expressionTypingComponents.setAdditionalCheckerProvider(javaDeclarationCheckerProvider);
expressionTypingComponents.setCallResolver(callResolver);
expressionTypingComponents.setControlStructureTypingUtils(controlStructureTypingUtils);
expressionTypingComponents.setDynamicTypesSettings(dynamicTypesSettings);
@@ -103,8 +103,7 @@ private fun generatorForLazyTopDownAnalyzerBasic() =
publicField<LazyTopDownAnalyzer>()
field<AdditionalCheckerProvider>(
init = GivenExpression(javaClass<AdditionalCheckerProvider.Empty>().getCanonicalName() + ".INSTANCE$"))
field<AdditionalCheckerProvider.Empty>()
}
private fun generatorForLazyBodyResolve() =
@@ -127,8 +126,7 @@ private fun generatorForTopDownAnalyzerForJs() =
publicField<LazyTopDownAnalyzer>()
field<MutablePackageFragmentProvider>()
field<AdditionalCheckerProvider>(
init = GivenExpression(javaClass<KotlinJsDeclarationCheckerProvider>().getName() + ".INSTANCE$"))
field<KotlinJsDeclarationCheckerProvider>()
field<DynamicTypesAllowed>()
}
@@ -195,8 +193,7 @@ private fun generatorForLazyResolveWithJava() =
field<LazyResolveToken>()
field<JavaLazyAnalyzerPostConstruct>()
field<AdditionalCheckerProvider>(
init = GivenExpression(javaClass<JavaDeclarationCheckerProvider>().getName() + ".INSTANCE$"))
field<JavaDeclarationCheckerProvider>()
}
private fun generatorForReplWithJava() =
@@ -217,8 +214,7 @@ private fun generatorForMacro() =
field<GlobalContext>(useAsContext = true,
init = GivenExpression("org.jetbrains.jet.context.ContextPackage.GlobalContext()"))
field<AdditionalCheckerProvider>(
init = GivenExpression(javaClass<AdditionalCheckerProvider.Empty>().getCanonicalName() + ".INSTANCE$"))
field<AdditionalCheckerProvider.Empty>()
}
private fun generatorForTests() =
@@ -234,8 +230,7 @@ private fun generatorForTests() =
field<GlobalContext>(init = GivenExpression("org.jetbrains.jet.context.ContextPackage.GlobalContext()"),
useAsContext = true)
field<AdditionalCheckerProvider>(
init = GivenExpression(javaClass<JavaDeclarationCheckerProvider>().getName() + ".INSTANCE$"))
field<JavaDeclarationCheckerProvider>()
}
private fun generatorForBodyResolve() =
@@ -302,8 +297,7 @@ private fun DependencyInjectorGenerator.commonForJavaTopDownAnalyzer() {
field<JavaLazyAnalyzerPostConstruct>()
field<JavaFlexibleTypeCapabilitiesProvider>()
field<AdditionalCheckerProvider>(
init = GivenExpression(javaClass<JavaDeclarationCheckerProvider>().getName() + ".INSTANCE$"))
field<JavaDeclarationCheckerProvider>()
field<VirtualFileFinder>(init = GivenExpression(javaClass<VirtualFileFinder>().getName() + ".SERVICE.getInstance(project)"))
}
@@ -26,7 +26,7 @@ import org.jetbrains.jet.lang.resolve.lazy.declarations.DeclarationProviderFacto
import org.jetbrains.jet.lang.resolve.lazy.ResolveSession;
import org.jetbrains.jet.lang.resolve.LazyTopDownAnalyzer;
import org.jetbrains.jet.lang.resolve.MutablePackageFragmentProvider;
import org.jetbrains.jet.lang.resolve.AdditionalCheckerProvider;
import org.jetbrains.k2js.resolve.KotlinJsDeclarationCheckerProvider;
import org.jetbrains.jet.lang.types.DynamicTypesAllowed;
import org.jetbrains.jet.lang.resolve.AnnotationResolver;
import org.jetbrains.jet.lang.resolve.calls.CallResolver;
@@ -83,7 +83,7 @@ public class InjectorForTopDownAnalyzerForJs {
private final ResolveSession resolveSession;
private final LazyTopDownAnalyzer lazyTopDownAnalyzer;
private final MutablePackageFragmentProvider mutablePackageFragmentProvider;
private final AdditionalCheckerProvider additionalCheckerProvider;
private final KotlinJsDeclarationCheckerProvider kotlinJsDeclarationCheckerProvider;
private final DynamicTypesAllowed dynamicTypesAllowed;
private final AnnotationResolver annotationResolver;
private final CallResolver callResolver;
@@ -141,7 +141,7 @@ public class InjectorForTopDownAnalyzerForJs {
this.resolveSession = new ResolveSession(project, globalContext, module, declarationProviderFactory, bindingTrace);
this.lazyTopDownAnalyzer = new LazyTopDownAnalyzer();
this.mutablePackageFragmentProvider = new MutablePackageFragmentProvider(module);
this.additionalCheckerProvider = org.jetbrains.k2js.resolve.KotlinJsDeclarationCheckerProvider.INSTANCE$;
this.kotlinJsDeclarationCheckerProvider = KotlinJsDeclarationCheckerProvider.INSTANCE$;
this.dynamicTypesAllowed = new DynamicTypesAllowed();
this.annotationResolver = new AnnotationResolver();
this.callResolver = new CallResolver();
@@ -171,7 +171,7 @@ public class InjectorForTopDownAnalyzerForJs {
this.bodyResolver = new BodyResolver();
this.controlFlowAnalyzer = new ControlFlowAnalyzer();
this.declarationsChecker = new DeclarationsChecker();
this.modifiersChecker = new ModifiersChecker(bindingTrace, additionalCheckerProvider);
this.modifiersChecker = new ModifiersChecker(bindingTrace, kotlinJsDeclarationCheckerProvider);
this.functionAnalyzerExtension = new FunctionAnalyzerExtension();
this.declarationResolver = new DeclarationResolver();
this.importsResolver = new ImportsResolver();
@@ -223,7 +223,7 @@ public class InjectorForTopDownAnalyzerForJs {
expressionTypingServices.setProject(project);
expressionTypingServices.setTypeResolver(typeResolver);
expressionTypingComponents.setAdditionalCheckerProvider(additionalCheckerProvider);
expressionTypingComponents.setAdditionalCheckerProvider(kotlinJsDeclarationCheckerProvider);
expressionTypingComponents.setCallResolver(callResolver);
expressionTypingComponents.setControlStructureTypingUtils(controlStructureTypingUtils);
expressionTypingComponents.setDynamicTypesSettings(dynamicTypesAllowed);