[Injection] Minor: inline createLazyResolveSession
This commit is contained in:
@@ -17,11 +17,8 @@
|
|||||||
package org.jetbrains.kotlin.frontend.di
|
package org.jetbrains.kotlin.frontend.di
|
||||||
|
|
||||||
import org.jetbrains.kotlin.platform.TargetPlatform
|
import org.jetbrains.kotlin.platform.TargetPlatform
|
||||||
import org.jetbrains.kotlin.analyzer.common.CommonPlatformCompilerServices
|
|
||||||
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
||||||
import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl
|
|
||||||
import org.jetbrains.kotlin.container.StorageComponentContainer
|
import org.jetbrains.kotlin.container.StorageComponentContainer
|
||||||
import org.jetbrains.kotlin.container.get
|
|
||||||
import org.jetbrains.kotlin.container.useImpl
|
import org.jetbrains.kotlin.container.useImpl
|
||||||
import org.jetbrains.kotlin.container.useInstance
|
import org.jetbrains.kotlin.container.useInstance
|
||||||
import org.jetbrains.kotlin.context.ModuleContext
|
import org.jetbrains.kotlin.context.ModuleContext
|
||||||
@@ -178,15 +175,3 @@ fun createContainerForLazyResolve(
|
|||||||
useImpl<LazyTopDownAnalyzer>()
|
useImpl<LazyTopDownAnalyzer>()
|
||||||
useImpl<SubstitutingScopeProviderImpl>()
|
useImpl<SubstitutingScopeProviderImpl>()
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: remove it
|
|
||||||
fun createLazyResolveSession(moduleContext: ModuleContext, files: Collection<KtFile>): ResolveSession =
|
|
||||||
createContainerForLazyResolve(
|
|
||||||
moduleContext,
|
|
||||||
FileBasedDeclarationProviderFactory(moduleContext.storageManager, files),
|
|
||||||
BindingTraceContext(),
|
|
||||||
DefaultBuiltInPlatforms.commonPlatform,
|
|
||||||
CommonPlatformCompilerServices,
|
|
||||||
CompilerEnvironment,
|
|
||||||
LanguageVersionSettingsImpl.DEFAULT
|
|
||||||
).get<ResolveSession>()
|
|
||||||
|
|||||||
@@ -19,19 +19,24 @@ package org.jetbrains.kotlin.types;
|
|||||||
import kotlin.Unit;
|
import kotlin.Unit;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.kotlin.analyzer.AnalysisResult;
|
import org.jetbrains.kotlin.analyzer.AnalysisResult;
|
||||||
|
import org.jetbrains.kotlin.analyzer.common.CommonPlatformCompilerServices;
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
||||||
|
import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl;
|
||||||
|
import org.jetbrains.kotlin.container.DslKt;
|
||||||
|
import org.jetbrains.kotlin.container.StorageComponentContainer;
|
||||||
import org.jetbrains.kotlin.context.ContextKt;
|
import org.jetbrains.kotlin.context.ContextKt;
|
||||||
|
import org.jetbrains.kotlin.context.ModuleContext;
|
||||||
import org.jetbrains.kotlin.descriptors.*;
|
import org.jetbrains.kotlin.descriptors.*;
|
||||||
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl;
|
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl;
|
||||||
import org.jetbrains.kotlin.incremental.components.NoLookupLocation;
|
import org.jetbrains.kotlin.incremental.components.NoLookupLocation;
|
||||||
|
import org.jetbrains.kotlin.platform.CommonPlatforms;
|
||||||
import org.jetbrains.kotlin.psi.*;
|
import org.jetbrains.kotlin.psi.*;
|
||||||
import org.jetbrains.kotlin.resolve.BindingContext;
|
import org.jetbrains.kotlin.resolve.*;
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorResolver;
|
|
||||||
import org.jetbrains.kotlin.resolve.FunctionDescriptorResolver;
|
|
||||||
import org.jetbrains.kotlin.resolve.calls.components.InferenceSession;
|
import org.jetbrains.kotlin.resolve.calls.components.InferenceSession;
|
||||||
import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfoFactory;
|
import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfoFactory;
|
||||||
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
|
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
|
||||||
import org.jetbrains.kotlin.resolve.lazy.ResolveSession;
|
import org.jetbrains.kotlin.resolve.lazy.ResolveSession;
|
||||||
|
import org.jetbrains.kotlin.resolve.lazy.declarations.FileBasedDeclarationProviderFactory;
|
||||||
import org.jetbrains.kotlin.resolve.scopes.*;
|
import org.jetbrains.kotlin.resolve.scopes.*;
|
||||||
import org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt;
|
import org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt;
|
||||||
import org.jetbrains.kotlin.test.ConfigurationKind;
|
import org.jetbrains.kotlin.test.ConfigurationKind;
|
||||||
@@ -40,10 +45,11 @@ import org.jetbrains.kotlin.test.KotlinTestWithEnvironment;
|
|||||||
import org.jetbrains.kotlin.tests.di.ContainerForTests;
|
import org.jetbrains.kotlin.tests.di.ContainerForTests;
|
||||||
import org.jetbrains.kotlin.tests.di.InjectionKt;
|
import org.jetbrains.kotlin.tests.di.InjectionKt;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import static org.jetbrains.kotlin.frontend.di.InjectionKt.createLazyResolveSession;
|
import static org.jetbrains.kotlin.frontend.di.InjectionKt.createContainerForLazyResolve;
|
||||||
|
|
||||||
public class DefaultModalityModifiersTest extends KotlinTestWithEnvironment {
|
public class DefaultModalityModifiersTest extends KotlinTestWithEnvironment {
|
||||||
private final DefaultModalityModifiersTestCase tc = new DefaultModalityModifiersTestCase();
|
private final DefaultModalityModifiersTestCase tc = new DefaultModalityModifiersTestCase();
|
||||||
@@ -103,11 +109,21 @@ public class DefaultModalityModifiersTest extends KotlinTestWithEnvironment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private ClassDescriptorWithResolutionScopes createClassDescriptor(ClassKind kind, KtClass aClass) {
|
private ClassDescriptorWithResolutionScopes createClassDescriptor(ClassKind kind, KtClass aClass) {
|
||||||
ResolveSession resolveSession = createLazyResolveSession(
|
ModuleContext moduleContext = ContextKt.ModuleContext(root, getProject());
|
||||||
ContextKt.ModuleContext(root, getProject()),
|
Collection<KtFile> files = Collections.singleton(aClass.getContainingKtFile());
|
||||||
Collections.singleton(aClass.getContainingKtFile())
|
|
||||||
|
StorageComponentContainer container = createContainerForLazyResolve(
|
||||||
|
moduleContext,
|
||||||
|
new FileBasedDeclarationProviderFactory(moduleContext.getStorageManager(), files),
|
||||||
|
new BindingTraceContext(),
|
||||||
|
CommonPlatforms.INSTANCE.getDefaultCommonPlatform(),
|
||||||
|
CommonPlatformCompilerServices.INSTANCE,
|
||||||
|
CompilerEnvironment.INSTANCE,
|
||||||
|
LanguageVersionSettingsImpl.DEFAULT
|
||||||
);
|
);
|
||||||
|
|
||||||
|
ResolveSession resolveSession = DslKt.getService(container, ResolveSession.class);
|
||||||
|
|
||||||
return (ClassDescriptorWithResolutionScopes) resolveSession.getClassDescriptor(aClass, NoLookupLocation.FROM_TEST);
|
return (ClassDescriptorWithResolutionScopes) resolveSession.getClassDescriptor(aClass, NoLookupLocation.FROM_TEST);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user