diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/CliFe10AnalysisFacade.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/CliFe10AnalysisFacade.kt new file mode 100644 index 00000000000..a898caaafe6 --- /dev/null +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/CliFe10AnalysisFacade.kt @@ -0,0 +1,70 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.analysis.api.descriptors + +import com.intellij.openapi.extensions.AreaInstance +import com.intellij.openapi.project.Project +import com.intellij.openapi.vfs.VirtualFile +import org.jetbrains.kotlin.analysis.api.symbols.KtSymbolOrigin +import org.jetbrains.kotlin.analyzer.AnalysisResult +import org.jetbrains.kotlin.container.ComponentProvider +import org.jetbrains.kotlin.container.get +import org.jetbrains.kotlin.context.ProjectContext +import org.jetbrains.kotlin.descriptors.ModuleDescriptor +import org.jetbrains.kotlin.psi.KtElement +import org.jetbrains.kotlin.psi.KtFile +import org.jetbrains.kotlin.resolve.BindingContext +import org.jetbrains.kotlin.resolve.BindingTrace +import org.jetbrains.kotlin.resolve.deprecation.DeprecationResolver +import org.jetbrains.kotlin.resolve.extensions.AnalysisHandlerExtension +import org.jetbrains.kotlin.resolve.lazy.ResolveSession +import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull + +class CliFe10AnalysisFacade(project: Project) : Fe10AnalysisFacade { + private val handler by lazy { KtFe10AnalysisHandlerExtension.getInstance(project) } + + override val resolveSession: ResolveSession + get() = handler.resolveSession ?: error("Resolution is not performed") + + override val deprecationResolver: DeprecationResolver + get() = handler.deprecationResolver ?: error("Resolution is not performed") + + override fun analyze(element: KtElement, mode: Fe10AnalysisFacade.AnalysisMode): BindingContext { + return resolveSession.bindingContext + } + + override fun getOrigin(file: VirtualFile): KtSymbolOrigin { + return KtSymbolOrigin.LIBRARY + } +} + +class KtFe10AnalysisHandlerExtension : AnalysisHandlerExtension { + internal companion object { + fun getInstance(area: AreaInstance): KtFe10AnalysisHandlerExtension { + return AnalysisHandlerExtension.extensionPointName.getExtensions(area).firstIsInstanceOrNull() + ?: error(KtFe10AnalysisHandlerExtension::class.java.name + " should be registered") + } + } + + var resolveSession: ResolveSession? = null + private set + + var deprecationResolver: DeprecationResolver? = null + private set + + override fun doAnalysis( + project: Project, + module: ModuleDescriptor, + projectContext: ProjectContext, + files: Collection, + bindingTrace: BindingTrace, + componentProvider: ComponentProvider + ): AnalysisResult? { + resolveSession = componentProvider.get() + deprecationResolver = componentProvider.get() + return super.doAnalysis(project, module, projectContext, files, bindingTrace, componentProvider) + } +} \ No newline at end of file diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/Fe10AnalysisFacade.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/Fe10AnalysisFacade.kt new file mode 100644 index 00000000000..039ccc3bf87 --- /dev/null +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/Fe10AnalysisFacade.kt @@ -0,0 +1,28 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.analysis.api.descriptors + +import com.intellij.openapi.vfs.VirtualFile +import org.jetbrains.kotlin.analysis.api.symbols.KtSymbolOrigin +import org.jetbrains.kotlin.psi.KtElement +import org.jetbrains.kotlin.resolve.BindingContext +import org.jetbrains.kotlin.resolve.deprecation.DeprecationResolver +import org.jetbrains.kotlin.resolve.lazy.ResolveSession + +interface Fe10AnalysisFacade { + val resolveSession: ResolveSession + val deprecationResolver: DeprecationResolver + + fun analyze(element: KtElement, mode: AnalysisMode = AnalysisMode.FULL): BindingContext + + fun getOrigin(file: VirtualFile): KtSymbolOrigin + + enum class AnalysisMode { + FULL, + PARTIAL_WITH_DIAGNOSTICS, + PARTIAL + } +} \ No newline at end of file diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/KtFe10AnalysisSession.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/KtFe10AnalysisSession.kt index c0a6c7bcbba..c4e883544c0 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/KtFe10AnalysisSession.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/KtFe10AnalysisSession.kt @@ -5,20 +5,20 @@ package org.jetbrains.kotlin.analysis.api.descriptors -import com.intellij.openapi.vfs.VirtualFile +import com.intellij.openapi.components.ServiceManager +import com.intellij.psi.PsiElement import org.jetbrains.kotlin.analysis.api.KtAnalysisSession import org.jetbrains.kotlin.analysis.api.components.* import org.jetbrains.kotlin.analysis.api.descriptors.components.* -import org.jetbrains.kotlin.analysis.api.symbols.KtSymbolOrigin import org.jetbrains.kotlin.analysis.api.symbols.KtSymbolProvider import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken import org.jetbrains.kotlin.psi.KtElement -import org.jetbrains.kotlin.resolve.BindingContext -import org.jetbrains.kotlin.resolve.deprecation.DeprecationResolver -import org.jetbrains.kotlin.resolve.lazy.ResolveSession +import org.jetbrains.kotlin.psi.KtFile @Suppress("LeakingThis") -abstract class KtFe10AnalysisSession(val contextElement: KtElement, token: ValidityToken) : KtAnalysisSession(token) { +open class KtFe10AnalysisSession( + private val contextElement: PsiElement, token: ValidityToken +) : KtAnalysisSession(token), Fe10AnalysisFacade by ServiceManager.getService(contextElement.project, Fe10AnalysisFacade::class.java) { override val smartCastProviderImpl: KtSmartCastProvider = KtFe10SmartCastProvider(this) override val diagnosticProviderImpl: KtDiagnosticProvider = KtFe10DiagnosticProvider(this) override val scopeProviderImpl: KtScopeProvider = KtFe10ScopeProvider(this) @@ -45,16 +45,7 @@ abstract class KtFe10AnalysisSession(val contextElement: KtElement, token: Valid override val jvmTypeMapperImpl: KtJvmTypeMapper = KtFe10JvmTypeMapper(this) override val symbolInfoProviderImpl: KtSymbolInfoProvider = KtFe10SymbolInfoProvider(this) - abstract val resolveSession: ResolveSession - abstract val deprecationResolver: DeprecationResolver - - abstract fun analyze(element: KtElement, mode: AnalysisMode = AnalysisMode.FULL): BindingContext - - abstract fun getOrigin(file: VirtualFile): KtSymbolOrigin - - enum class AnalysisMode { - FULL, - PARTIAL_WITH_DIAGNOSTICS, - PARTIAL + override fun createContextDependentCopy(originalKtFile: KtFile, elementToReanalyze: KtElement): KtAnalysisSession { + return KtFe10AnalysisSession(elementToReanalyze, token) } } \ No newline at end of file diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10CallResolver.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10CallResolver.kt index 7495c7c0f32..d7f9933a9f5 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10CallResolver.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10CallResolver.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.components import org.jetbrains.kotlin.analysis.api.calls.* +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.KtFe10DescFunctionSymbol import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.KtFe10DescPropertyGetterSymbol @@ -41,7 +42,7 @@ internal class KtFe10CallResolver(override val analysisSession: KtFe10AnalysisSe get() = analysisSession.token override fun resolveAccessorCall(call: KtSimpleNameExpression): KtCall? { - val bindingContext = analysisSession.analyze(call, KtFe10AnalysisSession.AnalysisMode.PARTIAL_WITH_DIAGNOSTICS) + val bindingContext = analysisSession.analyze(call, AnalysisMode.PARTIAL_WITH_DIAGNOSTICS) val resolvedCall = call.getResolvedCall(bindingContext) ?: return null val resultingDescriptor = resolvedCall.resultingDescriptor @@ -114,7 +115,7 @@ internal class KtFe10CallResolver(override val analysisSession: KtFe10AnalysisSe * @param isUsualCall `true` if the call is a usual function call (`foo()` or `foo {}`). */ private fun resolveCall(call: KtElement, isUsualCall: Boolean): KtCall? { - val bindingContext = analysisSession.analyze(call, KtFe10AnalysisSession.AnalysisMode.PARTIAL_WITH_DIAGNOSTICS) + val bindingContext = analysisSession.analyze(call, AnalysisMode.PARTIAL_WITH_DIAGNOSTICS) val resolvedCall = call.getResolvedCall(bindingContext) ?: return getUnresolvedCall(call) val argumentMapping = createArgumentMapping(resolvedCall) diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10DiagnosticProvider.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10DiagnosticProvider.kt index 43ba605a6a7..40fc9f791f7 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10DiagnosticProvider.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10DiagnosticProvider.kt @@ -10,7 +10,7 @@ import com.intellij.psi.PsiElement import org.jetbrains.kotlin.analysis.api.components.KtDiagnosticCheckerFilter import org.jetbrains.kotlin.analysis.api.components.KtDiagnosticProvider import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession -import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession.AnalysisMode +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.diagnostics.KtDiagnosticWithPsi import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken import org.jetbrains.kotlin.analysis.api.withValidityAssertion diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionInfoProvider.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionInfoProvider.kt index 40ee340f6d9..c76257029eb 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionInfoProvider.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionInfoProvider.kt @@ -7,7 +7,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.components import org.jetbrains.kotlin.analysis.api.components.KtExpressionInfoProvider import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession -import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession.AnalysisMode +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.symbols.KtCallableSymbol import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken import org.jetbrains.kotlin.analysis.api.withValidityAssertion diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionTypeProvider.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionTypeProvider.kt index bcfcd171274..ccf05a12d0a 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionTypeProvider.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10ExpressionTypeProvider.kt @@ -8,7 +8,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.components import com.intellij.psi.PsiElement import org.jetbrains.kotlin.analysis.api.components.KtExpressionTypeProvider import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession -import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession.AnalysisMode +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtType import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken import org.jetbrains.kotlin.analysis.api.types.KtType diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10TypeProvider.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10TypeProvider.kt index ad6125f4977..4336a9bb803 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10TypeProvider.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10TypeProvider.kt @@ -8,7 +8,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.components import org.jetbrains.kotlin.analysis.api.components.KtBuiltinTypes import org.jetbrains.kotlin.analysis.api.components.KtTypeProvider import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession -import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession.AnalysisMode +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.classId import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.getSymbolDescriptor import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.isInterfaceLike diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10VisibilityChecker.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10VisibilityChecker.kt index 42daa09fca8..7230d7abed6 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10VisibilityChecker.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/components/KtFe10VisibilityChecker.kt @@ -8,7 +8,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.components import com.intellij.psi.PsiElement import org.jetbrains.kotlin.analysis.api.components.KtVisibilityChecker import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession -import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession.AnalysisMode +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.getSymbolDescriptor import org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased.base.getResolutionScope import org.jetbrains.kotlin.analysis.api.symbols.KtFileSymbol diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ArrayAccessReference.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ArrayAccessReference.kt index 7debbbd017e..ceb7fd3c8a2 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ArrayAccessReference.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ArrayAccessReference.kt @@ -7,6 +7,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.references import com.intellij.psi.PsiElement import org.jetbrains.kotlin.analysis.api.KtAnalysisSession +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.references.base.KtFe10Reference import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtCallableSymbol @@ -19,7 +20,7 @@ internal class KtFe10ArrayAccessReference(expression: KtArrayAccessExpression) : override fun KtAnalysisSession.resolveToSymbols(): Collection { require(this is KtFe10AnalysisSession) - val bindingContext = analyze(expression, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analyze(expression, AnalysisMode.PARTIAL) val descriptor = expression.getResolvedCall(bindingContext)?.resultingDescriptor return listOfNotNull(descriptor?.toKtCallableSymbol(this)) } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10CollectionLiteralReference.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10CollectionLiteralReference.kt index 5693fb6af80..3ff4525f52a 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10CollectionLiteralReference.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10CollectionLiteralReference.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.references import org.jetbrains.kotlin.analysis.api.KtAnalysisSession +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.references.base.KtFe10Reference import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtCallableSymbol @@ -20,7 +21,7 @@ internal class KtFe10CollectionLiteralReference( override fun KtAnalysisSession.resolveToSymbols(): Collection { require(this is KtFe10AnalysisSession) - val bindingContext = analyze(expression, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analyze(expression, AnalysisMode.PARTIAL) val descriptor = bindingContext[BindingContext.COLLECTION_LITERAL_CALL, expression]?.resultingDescriptor return listOfNotNull(descriptor?.toKtCallableSymbol(this)) } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ConstructorDelegationReference.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ConstructorDelegationReference.kt index 3cebf929ce8..6bd9598d3b2 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ConstructorDelegationReference.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10ConstructorDelegationReference.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.references import org.jetbrains.kotlin.analysis.api.KtAnalysisSession +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.references.base.KtFe10Reference import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtCallableSymbol @@ -20,7 +21,7 @@ internal class KtFe10ConstructorDelegationReference( override fun KtAnalysisSession.resolveToSymbols(): Collection { require(this is KtFe10AnalysisSession) - val bindingContext = analyze(expression, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analyze(expression, AnalysisMode.PARTIAL) val descriptor = expression.getResolvedCall(bindingContext)?.resultingDescriptor return listOfNotNull(descriptor?.toKtCallableSymbol(this)) } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10DestructuringDeclarationEntry.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10DestructuringDeclarationEntry.kt index dd62a764967..b4546fc1040 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10DestructuringDeclarationEntry.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10DestructuringDeclarationEntry.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.references import org.jetbrains.kotlin.analysis.api.KtAnalysisSession +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.references.base.KtFe10Reference import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtCallableSymbol @@ -20,7 +21,7 @@ internal class KtFe10DestructuringDeclarationEntry( override fun KtAnalysisSession.resolveToSymbols(): Collection { check(this is KtFe10AnalysisSession) - val bindingContext = analyze(element, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analyze(element, AnalysisMode.PARTIAL) val descriptor = bindingContext[BindingContext.COMPONENT_RESOLVED_CALL, element]?.resultingDescriptor return listOfNotNull(descriptor?.toKtCallableSymbol(this)) } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10InvokeFunctionReference.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10InvokeFunctionReference.kt index cb57f6d5677..4098643bd04 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10InvokeFunctionReference.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10InvokeFunctionReference.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.references import org.jetbrains.kotlin.analysis.api.KtAnalysisSession +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.references.base.KtFe10Reference import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtCallableSymbol @@ -19,7 +20,7 @@ internal class KtFe10InvokeFunctionReference(expression: KtCallExpression) : KtI override fun KtAnalysisSession.resolveToSymbols(): Collection { require(this is KtFe10AnalysisSession) - val bindingContext = analyze(expression, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analyze(expression, AnalysisMode.PARTIAL) val descriptor = expression.getResolvedCall(bindingContext)?.resultingDescriptor return listOfNotNull(descriptor?.toKtCallableSymbol(this)) } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10SimpleNameReference.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10SimpleNameReference.kt index b3242352c37..f0e7e7d1f2c 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10SimpleNameReference.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/KtFe10SimpleNameReference.kt @@ -7,6 +7,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.references import com.intellij.psi.PsiElement import org.jetbrains.kotlin.analysis.api.KtAnalysisSession +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.references.base.KtFe10Reference import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtSymbol @@ -22,7 +23,7 @@ internal class KtFe10SimpleNameReference(expression: KtSimpleNameExpression) : K override fun KtAnalysisSession.resolveToSymbols(): Collection { require(this is KtFe10AnalysisSession) - val bindingContext = analyze(expression, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analyze(expression, AnalysisMode.PARTIAL) val descriptor = bindingContext[BindingContext.REFERENCE_TARGET, expression] ?: expression.getResolvedCall(bindingContext)?.resultingDescriptor diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/base/KtFe10PolyVariantResolver.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/base/KtFe10PolyVariantResolver.kt index c4024e4879d..07186cfa735 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/base/KtFe10PolyVariantResolver.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/references/base/KtFe10PolyVariantResolver.kt @@ -9,6 +9,7 @@ import com.intellij.psi.PsiElementResolveResult import com.intellij.psi.ResolveResult import com.intellij.psi.impl.source.resolve.ResolveCache import org.jetbrains.kotlin.analysis.api.analyse +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.impl.base.util.runInPossiblyEdtThread import org.jetbrains.kotlin.analysis.api.tokens.HackToForceAllowRunningAnalyzeOnEDT @@ -28,7 +29,7 @@ object KtFe10PolyVariantResolver : ResolveCache.PolyVariantResolver val expression = reference.expression analyse(reference.expression) { val session = this as KtFe10AnalysisSession - val bindingContext = session.analyze(expression, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = session.analyze(expression, AnalysisMode.PARTIAL) val descriptor = when (expression) { is KtReferenceExpression -> bindingContext[BindingContext.REFERENCE_TARGET, expression] else -> expression.getResolvedCall(bindingContext)?.resultingDescriptor diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousFunctionSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousFunctionSymbol.kt index 23c3f9f5da5..0bdba1980db 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousFunctionSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousFunctionSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtTypeAndAnnotations import org.jetbrains.kotlin.analysis.api.descriptors.symbols.pointers.KtFe10NeverRestoringSymbolPointer @@ -27,7 +28,7 @@ internal class KtFe10PsiAnonymousFunctionSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtAnonymousFunctionSymbol(), KtFe10PsiSymbol { override val descriptor: FunctionDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.FUNCTION, psi] } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousObjectSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousObjectSymbol.kt index 832f04a4e3f..0061a6b5ed3 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousObjectSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiAnonymousObjectSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtTypeAndAnnotations import org.jetbrains.kotlin.analysis.api.descriptors.symbols.pointers.KtFe10NeverRestoringSymbolPointer @@ -24,7 +25,7 @@ internal class KtFe10PsiAnonymousObjectSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtAnonymousObjectSymbol(), KtFe10PsiSymbol { override val descriptor: ClassDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.CLASS, psi] } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiConstructorSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiConstructorSymbol.kt index a6c9a0f5db9..5aedeb1b889 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiConstructorSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiConstructorSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.ktVisibility import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtType @@ -36,7 +37,7 @@ internal class KtFe10PsiConstructorSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtConstructorSymbol(), KtFe10PsiSymbol, ConstructorDescriptor> { override val descriptor: ConstructorDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.CONSTRUCTOR, psi] } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiDefaultSetterParameterSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiDefaultSetterParameterSymbol.kt index 35ba6379a25..d32976e46c4 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiDefaultSetterParameterSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiDefaultSetterParameterSymbol.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased import com.intellij.psi.PsiElement +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.base.KtFe10Symbol import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtTypeAndAnnotations @@ -29,7 +30,7 @@ internal class KtFe10PsiDefaultSetterParameterSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtValueParameterSymbol(), KtFe10Symbol { private val descriptor: VariableDescriptor? by cached { - val bindingContext = analysisSession.analyze(accessorPsi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(accessorPsi, AnalysisMode.PARTIAL) bindingContext[BindingContext.PROPERTY_ACCESSOR, accessorPsi]?.valueParameters?.single() } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiEnumEntrySymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiEnumEntrySymbol.kt index baf7603860e..a6a40bf0487 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiEnumEntrySymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiEnumEntrySymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtTypeAndAnnotations import org.jetbrains.kotlin.analysis.api.descriptors.symbols.pointers.KtFe10NeverRestoringSymbolPointer @@ -30,7 +31,7 @@ internal class KtFe10PsiEnumEntrySymbol( override val analysisSession: KtFe10AnalysisSession ) : KtEnumEntrySymbol(), KtFe10PsiSymbol { override val descriptor: ClassDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.CLASS, psi] } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiFunctionSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiFunctionSymbol.kt index 8c4d8ded502..6917403f425 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiFunctionSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiFunctionSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.ktVisibility import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtType @@ -39,7 +40,7 @@ internal class KtFe10PsiFunctionSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtFunctionSymbol(), KtFe10PsiSymbol { override val descriptor: FunctionDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.FUNCTION, psi] } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt index bb3ea853bec..aca19f92607 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.ktVisibility import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtConstantValue @@ -39,7 +40,7 @@ internal class KtFe10PsiKotlinPropertySymbol( override val analysisSession: KtFe10AnalysisSession ) : KtKotlinPropertySymbol(), KtFe10PsiSymbol { override val descriptor: PropertyDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.VARIABLE, psi] as? PropertyDescriptor } @@ -69,7 +70,7 @@ internal class KtFe10PsiKotlinPropertySymbol( override val hasBackingField: Boolean get() = withValidityAssertion { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.BACKING_FIELD_REQUIRED, descriptor] == true } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiLocalVariableSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiLocalVariableSymbol.kt index 7006fd23ff3..a041bf0ddfa 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiLocalVariableSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiLocalVariableSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtTypeAndAnnotations import org.jetbrains.kotlin.analysis.api.descriptors.symbols.pointers.KtFe10NeverRestoringSymbolPointer @@ -27,7 +28,7 @@ internal class KtFe10PsiLocalVariableSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtLocalVariableSymbol(), KtFe10PsiSymbol { override val descriptor: VariableDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.VARIABLE, psi] } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiNamedClassOrObjectSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiNamedClassOrObjectSymbol.kt index 189466791dd..1b5cf9eca79 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiNamedClassOrObjectSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiNamedClassOrObjectSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.getSupertypesWithAny import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.ktVisibility @@ -41,7 +42,7 @@ internal class KtFe10PsiNamedClassOrObjectSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtNamedClassOrObjectSymbol(), KtFe10PsiSymbol { override val descriptor: ClassDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.CLASS, psi] } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertyGetterSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertyGetterSymbol.kt index 789d6753a65..09b312727d0 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertyGetterSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertyGetterSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.ktVisibility import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtType @@ -33,7 +34,7 @@ internal class KtFe10PsiPropertyGetterSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtPropertyGetterSymbol(), KtFe10PsiSymbol { override val descriptor: PropertyGetterDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.PROPERTY_ACCESSOR, psi] as? PropertyGetterDescriptor } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertySetterSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertySetterSymbol.kt index 3998b2d9cd9..e2971440379 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertySetterSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiPropertySetterSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.ktVisibility import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtType @@ -34,7 +35,7 @@ internal class KtFe10PsiPropertySetterSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtPropertySetterSymbol(), KtFe10PsiSymbol { override val descriptor: PropertySetterDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.PROPERTY_ACCESSOR, psi] as? PropertySetterDescriptor } diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiValueParameterSymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiValueParameterSymbol.kt index 170fbce011b..deedbe8ef4e 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiValueParameterSymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiValueParameterSymbol.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.analysis.api.descriptors.symbols.psiBased +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade.AnalysisMode import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSession import org.jetbrains.kotlin.analysis.api.descriptors.symbols.descriptorBased.base.toKtTypeAndAnnotations import org.jetbrains.kotlin.analysis.api.descriptors.symbols.pointers.KtFe10NeverRestoringSymbolPointer @@ -27,7 +28,7 @@ internal class KtFe10PsiValueParameterSymbol( override val analysisSession: KtFe10AnalysisSession ) : KtValueParameterSymbol(), KtFe10PsiSymbol { override val descriptor: VariableDescriptor? by cached { - val bindingContext = analysisSession.analyze(psi, KtFe10AnalysisSession.AnalysisMode.PARTIAL) + val bindingContext = analysisSession.analyze(psi, AnalysisMode.PARTIAL) bindingContext[BindingContext.VALUE_PARAMETER, psi] } diff --git a/analysis/analysis-api-fe10/tests/org/jetbrains/kotlin/analysis/api/descriptors/test/KtFe10FrontendApiTestConfiguratorService.kt b/analysis/analysis-api-fe10/tests/org/jetbrains/kotlin/analysis/api/descriptors/test/KtFe10FrontendApiTestConfiguratorService.kt index c72b22ab517..c6448f5afdd 100644 --- a/analysis/analysis-api-fe10/tests/org/jetbrains/kotlin/analysis/api/descriptors/test/KtFe10FrontendApiTestConfiguratorService.kt +++ b/analysis/analysis-api-fe10/tests/org/jetbrains/kotlin/analysis/api/descriptors/test/KtFe10FrontendApiTestConfiguratorService.kt @@ -10,8 +10,10 @@ import com.intellij.mock.MockProject import com.intellij.openapi.Disposable import org.jetbrains.kotlin.analysis.api.InvalidWayOfUsingAnalysisSession import org.jetbrains.kotlin.analysis.api.KtAnalysisSessionProvider +import org.jetbrains.kotlin.analysis.api.descriptors.CliFe10AnalysisFacade +import org.jetbrains.kotlin.analysis.api.descriptors.Fe10AnalysisFacade import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisHandlerExtension -import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10CliAnalysisSessionProvider +import org.jetbrains.kotlin.analysis.api.descriptors.KtFe10AnalysisSessionProvider import org.jetbrains.kotlin.analysis.api.descriptors.references.base.KtFe10KotlinReferenceProviderContributor import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService import org.jetbrains.kotlin.analysis.api.impl.base.references.HLApiReferenceProviderService @@ -33,7 +35,8 @@ object KtFe10FrontendApiTestConfiguratorService : FrontendApiTestConfiguratorSer @OptIn(InvalidWayOfUsingAnalysisSession::class) override fun registerProjectServices(project: MockProject) { - project.registerService(KtAnalysisSessionProvider::class.java, KtFe10CliAnalysisSessionProvider(project)) + project.registerService(KtAnalysisSessionProvider::class.java, KtFe10AnalysisSessionProvider()) + project.registerService(Fe10AnalysisFacade::class.java, CliFe10AnalysisFacade(project)) AnalysisHandlerExtension.registerExtension(project, KtFe10AnalysisHandlerExtension()) }