di: store everything in fields
needed to implement @PreDestroy
This commit is contained in:
@@ -34,17 +34,26 @@ import org.jetbrains.annotations.NotNull;
|
||||
/* This file is generated by org.jetbrains.jet.di.AllInjectorsGenerator. DO NOT EDIT! */
|
||||
public class InjectorForJetTypeMapper {
|
||||
|
||||
private final JetStandardLibrary jetStandardLibrary;
|
||||
private final BindingContext bindingContext;
|
||||
private final List<JetFile> listOfJetFile;
|
||||
private JetTypeMapper jetTypeMapper;
|
||||
private CompilerSpecialMode compilerSpecialMode;
|
||||
private ClassBuilderMode classBuilderMode;
|
||||
private ClosureAnnotator closureAnnotator;
|
||||
|
||||
public InjectorForJetTypeMapper(
|
||||
@NotNull JetStandardLibrary jetStandardLibrary,
|
||||
@NotNull BindingContext bindingContext,
|
||||
@NotNull List<JetFile> listOfJetFile
|
||||
) {
|
||||
this.jetStandardLibrary = jetStandardLibrary;
|
||||
this.bindingContext = bindingContext;
|
||||
this.listOfJetFile = listOfJetFile;
|
||||
this.jetTypeMapper = new JetTypeMapper();
|
||||
CompilerSpecialMode compilerSpecialMode = CompilerSpecialMode.REGULAR;
|
||||
ClassBuilderMode classBuilderMode = ClassBuilderMode.FULL;
|
||||
ClosureAnnotator closureAnnotator = new ClosureAnnotator();
|
||||
this.compilerSpecialMode = CompilerSpecialMode.REGULAR;
|
||||
this.classBuilderMode = ClassBuilderMode.FULL;
|
||||
this.closureAnnotator = new ClosureAnnotator();
|
||||
|
||||
this.jetTypeMapper.setBindingContext(bindingContext);
|
||||
this.jetTypeMapper.setClassBuilderMode(classBuilderMode);
|
||||
|
||||
@@ -45,10 +45,17 @@ import org.jetbrains.annotations.NotNull;
|
||||
public class InjectorForJvmCodegen {
|
||||
|
||||
private final JetStandardLibrary jetStandardLibrary;
|
||||
private final BindingContext bindingContext;
|
||||
private final List<JetFile> listOfJetFile;
|
||||
private final Project project;
|
||||
private final CompilerSpecialMode compilerSpecialMode;
|
||||
private final ClassBuilderMode classBuilderMode;
|
||||
private final GenerationState generationState;
|
||||
private final ClassBuilderFactory classBuilderFactory;
|
||||
private JetTypeMapper jetTypeMapper;
|
||||
private IntrinsicMethods intrinsics;
|
||||
private ClassFileFactory classFileFactory;
|
||||
private ClosureAnnotator closureAnnotator;
|
||||
|
||||
public InjectorForJvmCodegen(
|
||||
@NotNull JetStandardLibrary jetStandardLibrary,
|
||||
@@ -61,11 +68,17 @@ public class InjectorForJvmCodegen {
|
||||
@NotNull ClassBuilderFactory classBuilderFactory
|
||||
) {
|
||||
this.jetStandardLibrary = jetStandardLibrary;
|
||||
this.bindingContext = bindingContext;
|
||||
this.listOfJetFile = listOfJetFile;
|
||||
this.project = project;
|
||||
this.compilerSpecialMode = compilerSpecialMode;
|
||||
this.classBuilderMode = classBuilderMode;
|
||||
this.generationState = generationState;
|
||||
this.classBuilderFactory = classBuilderFactory;
|
||||
this.jetTypeMapper = new JetTypeMapper();
|
||||
this.intrinsics = new IntrinsicMethods();
|
||||
this.classFileFactory = new ClassFileFactory();
|
||||
ClosureAnnotator closureAnnotator = new ClosureAnnotator();
|
||||
this.closureAnnotator = new ClosureAnnotator();
|
||||
|
||||
this.jetTypeMapper.setBindingContext(bindingContext);
|
||||
this.jetTypeMapper.setClassBuilderMode(classBuilderMode);
|
||||
|
||||
+12
-5
@@ -38,8 +38,14 @@ public class InjectorForJavaSemanticServices {
|
||||
private JavaSemanticServices javaSemanticServices;
|
||||
private JavaDescriptorResolver javaDescriptorResolver;
|
||||
private BindingTrace bindingTrace;
|
||||
private JavaBridgeConfiguration javaBridgeConfiguration;
|
||||
private PsiClassFinderForJvm psiClassFinderForJvm;
|
||||
private ModuleDescriptor moduleDescriptor;
|
||||
private final CompilerDependencies compilerDependencies;
|
||||
private CompilerSpecialMode compilerSpecialMode;
|
||||
private final Project project;
|
||||
private JavaTypeTransformer javaTypeTransformer;
|
||||
private NamespaceFactoryImpl namespaceFactoryImpl;
|
||||
|
||||
public InjectorForJavaSemanticServices(
|
||||
@NotNull CompilerDependencies compilerDependencies,
|
||||
@@ -48,13 +54,14 @@ public class InjectorForJavaSemanticServices {
|
||||
this.javaSemanticServices = new JavaSemanticServices();
|
||||
this.javaDescriptorResolver = new JavaDescriptorResolver();
|
||||
this.bindingTrace = new org.jetbrains.jet.lang.resolve.BindingTraceContext();
|
||||
JavaBridgeConfiguration javaBridgeConfiguration = new JavaBridgeConfiguration();
|
||||
this.javaBridgeConfiguration = new JavaBridgeConfiguration();
|
||||
this.psiClassFinderForJvm = new PsiClassFinderForJvm();
|
||||
ModuleDescriptor moduleDescriptor = new org.jetbrains.jet.lang.descriptors.ModuleDescriptor("<dummy>");
|
||||
CompilerSpecialMode compilerSpecialMode = compilerDependencies.getCompilerSpecialMode();
|
||||
this.moduleDescriptor = new org.jetbrains.jet.lang.descriptors.ModuleDescriptor("<dummy>");
|
||||
this.compilerDependencies = compilerDependencies;
|
||||
this.compilerSpecialMode = compilerDependencies.getCompilerSpecialMode();
|
||||
this.project = project;
|
||||
JavaTypeTransformer javaTypeTransformer = new JavaTypeTransformer();
|
||||
NamespaceFactoryImpl namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
this.javaTypeTransformer = new JavaTypeTransformer();
|
||||
this.namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
|
||||
this.javaSemanticServices.setDescriptorResolver(javaDescriptorResolver);
|
||||
this.javaSemanticServices.setPsiClassFinder(psiClassFinderForJvm);
|
||||
|
||||
+42
-18
@@ -68,7 +68,28 @@ public class InjectorForTopDownAnalyzerForJvm {
|
||||
private final Project project;
|
||||
private final TopDownAnalysisParameters topDownAnalysisParameters;
|
||||
private final ObservableBindingTrace observableBindingTrace;
|
||||
private final ModuleDescriptor moduleDescriptor;
|
||||
private final JetControlFlowDataTraceFactory jetControlFlowDataTraceFactory;
|
||||
private final CompilerDependencies compilerDependencies;
|
||||
private CompilerSpecialMode compilerSpecialMode;
|
||||
private JavaBridgeConfiguration javaBridgeConfiguration;
|
||||
private PsiClassFinderForJvm psiClassFinderForJvm;
|
||||
private DeclarationResolver declarationResolver;
|
||||
private AnnotationResolver annotationResolver;
|
||||
private CallResolver callResolver;
|
||||
private ExpressionTypingServices expressionTypingServices;
|
||||
private TypeResolver typeResolver;
|
||||
private QualifiedExpressionResolver qualifiedExpressionResolver;
|
||||
private OverloadingConflictResolver overloadingConflictResolver;
|
||||
private ImportsResolver importsResolver;
|
||||
private DelegationResolver delegationResolver;
|
||||
private NamespaceFactoryImpl namespaceFactoryImpl;
|
||||
private OverloadResolver overloadResolver;
|
||||
private OverrideResolver overrideResolver;
|
||||
private TypeHierarchyResolver typeHierarchyResolver;
|
||||
private JavaSemanticServices javaSemanticServices;
|
||||
private JavaDescriptorResolver javaDescriptorResolver;
|
||||
private JavaTypeTransformer javaTypeTransformer;
|
||||
|
||||
public InjectorForTopDownAnalyzerForJvm(
|
||||
@NotNull Project project,
|
||||
@@ -87,25 +108,28 @@ public class InjectorForTopDownAnalyzerForJvm {
|
||||
this.project = project;
|
||||
this.topDownAnalysisParameters = topDownAnalysisParameters;
|
||||
this.observableBindingTrace = observableBindingTrace;
|
||||
CompilerSpecialMode compilerSpecialMode = compilerDependencies.getCompilerSpecialMode();
|
||||
this.moduleDescriptor = moduleDescriptor;
|
||||
this.jetControlFlowDataTraceFactory = jetControlFlowDataTraceFactory;
|
||||
this.compilerDependencies = compilerDependencies;
|
||||
this.compilerSpecialMode = compilerDependencies.getCompilerSpecialMode();
|
||||
this.javaBridgeConfiguration = new JavaBridgeConfiguration();
|
||||
PsiClassFinderForJvm psiClassFinderForJvm = new PsiClassFinderForJvm();
|
||||
DeclarationResolver declarationResolver = new DeclarationResolver();
|
||||
AnnotationResolver annotationResolver = new AnnotationResolver();
|
||||
CallResolver callResolver = new CallResolver();
|
||||
ExpressionTypingServices expressionTypingServices = new ExpressionTypingServices();
|
||||
TypeResolver typeResolver = new TypeResolver();
|
||||
QualifiedExpressionResolver qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
OverloadingConflictResolver overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
ImportsResolver importsResolver = new ImportsResolver();
|
||||
DelegationResolver delegationResolver = new DelegationResolver();
|
||||
NamespaceFactoryImpl namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
OverloadResolver overloadResolver = new OverloadResolver();
|
||||
OverrideResolver overrideResolver = new OverrideResolver();
|
||||
TypeHierarchyResolver typeHierarchyResolver = new TypeHierarchyResolver();
|
||||
JavaSemanticServices javaSemanticServices = new JavaSemanticServices();
|
||||
JavaDescriptorResolver javaDescriptorResolver = new JavaDescriptorResolver();
|
||||
JavaTypeTransformer javaTypeTransformer = new JavaTypeTransformer();
|
||||
this.psiClassFinderForJvm = new PsiClassFinderForJvm();
|
||||
this.declarationResolver = new DeclarationResolver();
|
||||
this.annotationResolver = new AnnotationResolver();
|
||||
this.callResolver = new CallResolver();
|
||||
this.expressionTypingServices = new ExpressionTypingServices();
|
||||
this.typeResolver = new TypeResolver();
|
||||
this.qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
this.overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
this.importsResolver = new ImportsResolver();
|
||||
this.delegationResolver = new DelegationResolver();
|
||||
this.namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
this.overloadResolver = new OverloadResolver();
|
||||
this.overrideResolver = new OverrideResolver();
|
||||
this.typeHierarchyResolver = new TypeHierarchyResolver();
|
||||
this.javaSemanticServices = new JavaSemanticServices();
|
||||
this.javaDescriptorResolver = new JavaDescriptorResolver();
|
||||
this.javaTypeTransformer = new JavaTypeTransformer();
|
||||
|
||||
this.topDownAnalyzer.setBodyResolver(bodyResolver);
|
||||
this.topDownAnalyzer.setContext(topDownAnalysisContext);
|
||||
|
||||
@@ -33,18 +33,24 @@ public class InjectorForMacros {
|
||||
|
||||
private ExpressionTypingServices expressionTypingServices;
|
||||
private final Project project;
|
||||
private CallResolver callResolver;
|
||||
private DescriptorResolver descriptorResolver;
|
||||
private AnnotationResolver annotationResolver;
|
||||
private TypeResolver typeResolver;
|
||||
private QualifiedExpressionResolver qualifiedExpressionResolver;
|
||||
private OverloadingConflictResolver overloadingConflictResolver;
|
||||
|
||||
public InjectorForMacros(
|
||||
@NotNull Project project
|
||||
) {
|
||||
this.expressionTypingServices = new ExpressionTypingServices();
|
||||
this.project = project;
|
||||
CallResolver callResolver = new CallResolver();
|
||||
DescriptorResolver descriptorResolver = new DescriptorResolver();
|
||||
AnnotationResolver annotationResolver = new AnnotationResolver();
|
||||
TypeResolver typeResolver = new TypeResolver();
|
||||
QualifiedExpressionResolver qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
OverloadingConflictResolver overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
this.callResolver = new CallResolver();
|
||||
this.descriptorResolver = new DescriptorResolver();
|
||||
this.annotationResolver = new AnnotationResolver();
|
||||
this.typeResolver = new TypeResolver();
|
||||
this.qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
this.overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
|
||||
this.expressionTypingServices.setCallResolver(callResolver);
|
||||
this.expressionTypingServices.setDescriptorResolver(descriptorResolver);
|
||||
|
||||
@@ -62,6 +62,22 @@ public class InjectorForTopDownAnalyzerBasic {
|
||||
private final Project project;
|
||||
private final TopDownAnalysisParameters topDownAnalysisParameters;
|
||||
private final ObservableBindingTrace observableBindingTrace;
|
||||
private final ModuleDescriptor moduleDescriptor;
|
||||
private final JetControlFlowDataTraceFactory jetControlFlowDataTraceFactory;
|
||||
private final ModuleConfiguration moduleConfiguration;
|
||||
private DeclarationResolver declarationResolver;
|
||||
private AnnotationResolver annotationResolver;
|
||||
private CallResolver callResolver;
|
||||
private ExpressionTypingServices expressionTypingServices;
|
||||
private TypeResolver typeResolver;
|
||||
private QualifiedExpressionResolver qualifiedExpressionResolver;
|
||||
private OverloadingConflictResolver overloadingConflictResolver;
|
||||
private ImportsResolver importsResolver;
|
||||
private DelegationResolver delegationResolver;
|
||||
private NamespaceFactoryImpl namespaceFactoryImpl;
|
||||
private OverloadResolver overloadResolver;
|
||||
private OverrideResolver overrideResolver;
|
||||
private TypeHierarchyResolver typeHierarchyResolver;
|
||||
|
||||
public InjectorForTopDownAnalyzerBasic(
|
||||
@NotNull Project project,
|
||||
@@ -80,19 +96,22 @@ public class InjectorForTopDownAnalyzerBasic {
|
||||
this.project = project;
|
||||
this.topDownAnalysisParameters = topDownAnalysisParameters;
|
||||
this.observableBindingTrace = observableBindingTrace;
|
||||
DeclarationResolver declarationResolver = new DeclarationResolver();
|
||||
AnnotationResolver annotationResolver = new AnnotationResolver();
|
||||
CallResolver callResolver = new CallResolver();
|
||||
ExpressionTypingServices expressionTypingServices = new ExpressionTypingServices();
|
||||
TypeResolver typeResolver = new TypeResolver();
|
||||
QualifiedExpressionResolver qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
OverloadingConflictResolver overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
ImportsResolver importsResolver = new ImportsResolver();
|
||||
DelegationResolver delegationResolver = new DelegationResolver();
|
||||
NamespaceFactoryImpl namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
OverloadResolver overloadResolver = new OverloadResolver();
|
||||
OverrideResolver overrideResolver = new OverrideResolver();
|
||||
TypeHierarchyResolver typeHierarchyResolver = new TypeHierarchyResolver();
|
||||
this.moduleDescriptor = moduleDescriptor;
|
||||
this.jetControlFlowDataTraceFactory = jetControlFlowDataTraceFactory;
|
||||
this.moduleConfiguration = moduleConfiguration;
|
||||
this.declarationResolver = new DeclarationResolver();
|
||||
this.annotationResolver = new AnnotationResolver();
|
||||
this.callResolver = new CallResolver();
|
||||
this.expressionTypingServices = new ExpressionTypingServices();
|
||||
this.typeResolver = new TypeResolver();
|
||||
this.qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
this.overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
this.importsResolver = new ImportsResolver();
|
||||
this.delegationResolver = new DelegationResolver();
|
||||
this.namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
this.overloadResolver = new OverloadResolver();
|
||||
this.overrideResolver = new OverrideResolver();
|
||||
this.typeHierarchyResolver = new TypeHierarchyResolver();
|
||||
|
||||
this.topDownAnalyzer.setBodyResolver(bodyResolver);
|
||||
this.topDownAnalyzer.setContext(topDownAnalysisContext);
|
||||
|
||||
@@ -38,6 +38,9 @@ public class InjectorForTests {
|
||||
private CallResolver callResolver;
|
||||
private JetStandardLibrary jetStandardLibrary;
|
||||
private final Project project;
|
||||
private AnnotationResolver annotationResolver;
|
||||
private QualifiedExpressionResolver qualifiedExpressionResolver;
|
||||
private OverloadingConflictResolver overloadingConflictResolver;
|
||||
|
||||
public InjectorForTests(
|
||||
@NotNull Project project
|
||||
@@ -48,9 +51,9 @@ public class InjectorForTests {
|
||||
this.callResolver = new CallResolver();
|
||||
this.jetStandardLibrary = JetStandardLibrary.getInstance();
|
||||
this.project = project;
|
||||
AnnotationResolver annotationResolver = new AnnotationResolver();
|
||||
QualifiedExpressionResolver qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
OverloadingConflictResolver overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
this.annotationResolver = new AnnotationResolver();
|
||||
this.qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
this.overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
|
||||
this.descriptorResolver.setAnnotationResolver(annotationResolver);
|
||||
this.descriptorResolver.setExpressionTypingServices(expressionTypingServices);
|
||||
|
||||
@@ -233,10 +233,8 @@ public class DependencyInjectorGenerator {
|
||||
|
||||
private void generateFields(PrintStream out) {
|
||||
for (Field field : fields) {
|
||||
if (lazy || field.isPublic()) {
|
||||
String _final = backsParameter.contains(field) ? "final " : "";
|
||||
out.println(" private " + _final + field.getType().getSimpleName() + " " + field.getName() + ";");
|
||||
}
|
||||
String _final = backsParameter.contains(field) ? "final " : "";
|
||||
out.println(" private " + _final + field.getType().getSimpleName() + " " + field.getName() + ";");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -272,10 +270,10 @@ public class DependencyInjectorGenerator {
|
||||
else {
|
||||
// Initialize fields
|
||||
for (Field field : fields) {
|
||||
if (!backsParameter.contains(field) || field.isPublic()) {
|
||||
String prefix = field.isPublic() ? "this." : field.getTypeName() + " ";
|
||||
//if (!backsParameter.contains(field) || field.isPublic()) {
|
||||
String prefix = "this.";
|
||||
out.println(indent + prefix + field.getName() + " = " + field.getInitialization() + ";");
|
||||
}
|
||||
//}
|
||||
}
|
||||
out.println();
|
||||
|
||||
|
||||
@@ -62,6 +62,22 @@ public class InjectorForTopDownAnalyzerForJs {
|
||||
private final Project project;
|
||||
private final TopDownAnalysisParameters topDownAnalysisParameters;
|
||||
private final ObservableBindingTrace observableBindingTrace;
|
||||
private final ModuleDescriptor moduleDescriptor;
|
||||
private final JetControlFlowDataTraceFactory jetControlFlowDataTraceFactory;
|
||||
private final ModuleConfiguration moduleConfiguration;
|
||||
private DeclarationResolver declarationResolver;
|
||||
private AnnotationResolver annotationResolver;
|
||||
private CallResolver callResolver;
|
||||
private ExpressionTypingServices expressionTypingServices;
|
||||
private TypeResolver typeResolver;
|
||||
private QualifiedExpressionResolver qualifiedExpressionResolver;
|
||||
private OverloadingConflictResolver overloadingConflictResolver;
|
||||
private ImportsResolver importsResolver;
|
||||
private DelegationResolver delegationResolver;
|
||||
private NamespaceFactoryImpl namespaceFactoryImpl;
|
||||
private OverloadResolver overloadResolver;
|
||||
private OverrideResolver overrideResolver;
|
||||
private TypeHierarchyResolver typeHierarchyResolver;
|
||||
|
||||
public InjectorForTopDownAnalyzerForJs(
|
||||
@NotNull Project project,
|
||||
@@ -80,19 +96,22 @@ public class InjectorForTopDownAnalyzerForJs {
|
||||
this.project = project;
|
||||
this.topDownAnalysisParameters = topDownAnalysisParameters;
|
||||
this.observableBindingTrace = observableBindingTrace;
|
||||
DeclarationResolver declarationResolver = new DeclarationResolver();
|
||||
AnnotationResolver annotationResolver = new AnnotationResolver();
|
||||
CallResolver callResolver = new CallResolver();
|
||||
ExpressionTypingServices expressionTypingServices = new ExpressionTypingServices();
|
||||
TypeResolver typeResolver = new TypeResolver();
|
||||
QualifiedExpressionResolver qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
OverloadingConflictResolver overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
ImportsResolver importsResolver = new ImportsResolver();
|
||||
DelegationResolver delegationResolver = new DelegationResolver();
|
||||
NamespaceFactoryImpl namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
OverloadResolver overloadResolver = new OverloadResolver();
|
||||
OverrideResolver overrideResolver = new OverrideResolver();
|
||||
TypeHierarchyResolver typeHierarchyResolver = new TypeHierarchyResolver();
|
||||
this.moduleDescriptor = moduleDescriptor;
|
||||
this.jetControlFlowDataTraceFactory = jetControlFlowDataTraceFactory;
|
||||
this.moduleConfiguration = moduleConfiguration;
|
||||
this.declarationResolver = new DeclarationResolver();
|
||||
this.annotationResolver = new AnnotationResolver();
|
||||
this.callResolver = new CallResolver();
|
||||
this.expressionTypingServices = new ExpressionTypingServices();
|
||||
this.typeResolver = new TypeResolver();
|
||||
this.qualifiedExpressionResolver = new QualifiedExpressionResolver();
|
||||
this.overloadingConflictResolver = new OverloadingConflictResolver();
|
||||
this.importsResolver = new ImportsResolver();
|
||||
this.delegationResolver = new DelegationResolver();
|
||||
this.namespaceFactoryImpl = new NamespaceFactoryImpl();
|
||||
this.overloadResolver = new OverloadResolver();
|
||||
this.overrideResolver = new OverrideResolver();
|
||||
this.typeHierarchyResolver = new TypeHierarchyResolver();
|
||||
|
||||
this.topDownAnalyzer.setBodyResolver(bodyResolver);
|
||||
this.topDownAnalyzer.setContext(topDownAnalysisContext);
|
||||
|
||||
Reference in New Issue
Block a user