Refactoring: remove unnecessary constructors (prepare for injectors)

This commit is contained in:
Nikolay Krasko
2014-01-22 13:11:02 +04:00
parent 9aac846798
commit 36d5e580b4
4 changed files with 16 additions and 47 deletions
@@ -1,5 +1,5 @@
/*
* Copyright 2010-2013 JetBrains s.r.o.
* Copyright 2010-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,7 +32,6 @@ import org.jetbrains.jet.lang.descriptors.*;
import org.jetbrains.jet.lang.psi.*;
import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.jet.lang.resolve.BindingTrace;
import org.jetbrains.jet.lang.resolve.BindingTraceContext;
import org.jetbrains.jet.lang.resolve.lazy.data.JetClassLikeInfo;
import org.jetbrains.jet.lang.resolve.lazy.declarations.DeclarationProviderFactory;
import org.jetbrains.jet.lang.resolve.lazy.declarations.PackageMemberDeclarationProvider;
@@ -79,59 +78,23 @@ public class ResolveSession implements KotlinCodeAnalyzer {
private final MemoizedFunctionToNullable<FqName, LazyPackageDescriptor> packages;
private final PackageFragmentProvider packageFragmentProvider;
public ResolveSession(
@NotNull Project project,
@NotNull LockBasedStorageManagerWithExceptionTracking storageManager,
@NotNull ModuleDescriptorImpl rootDescriptor,
@NotNull DeclarationProviderFactory declarationProviderFactory
) {
this(project,
storageManager,
storageManager.getTracker(),
rootDescriptor,
declarationProviderFactory,
NO_ALIASES,
Predicates.<FqNameUnsafe>alwaysFalse(),
new BindingTraceContext());
}
public ResolveSession(
@NotNull Project project,
@NotNull LockBasedStorageManagerWithExceptionTracking storageManager,
@NotNull ModuleDescriptorImpl rootDescriptor,
@NotNull DeclarationProviderFactory declarationProviderFactory,
@NotNull BindingTrace delegationTrace
) {
this(project,
storageManager,
storageManager.getTracker(),
rootDescriptor,
declarationProviderFactory,
NO_ALIASES,
Predicates.<FqNameUnsafe>alwaysFalse(),
delegationTrace);
}
@Deprecated // Internal use only
public ResolveSession(
@NotNull Project project,
@NotNull LockBasedStorageManager storageManager,
@NotNull ExceptionTracker exceptionTracker,
@NotNull ModuleDescriptorImpl rootDescriptor,
@NotNull DeclarationProviderFactory declarationProviderFactory,
@NotNull Function<FqName, Name> classifierAliases,
@NotNull Predicate<FqNameUnsafe> specialClasses,
@NotNull BindingTrace delegationTrace
) {
LockBasedLazyResolveStorageManager lockBasedLazyResolveStorageManager = new LockBasedLazyResolveStorageManager(storageManager);
this.storageManager = lockBasedLazyResolveStorageManager;
this.exceptionTracker = exceptionTracker;
this.classifierAliases = classifierAliases;
this.specialClasses = specialClasses;
this.exceptionTracker = storageManager.getTracker();
this.trace = lockBasedLazyResolveStorageManager.createSafeTrace(delegationTrace);
this.injector = new InjectorForLazyResolve(project, this, rootDescriptor);
this.module = rootDescriptor;
this.classifierAliases = NO_ALIASES;
this.specialClasses = Predicates.alwaysFalse();
this.packages = storageManager.createMemoizedFunctionWithNullableValues(new MemoizedFunctionToNullable<FqName, LazyPackageDescriptor>() {
@Nullable
@Override