diff --git a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractMultiModuleResolveCallTest.kt b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractMultiModuleResolveCallTest.kt index 2511f77e02f..824b6c56818 100644 --- a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractMultiModuleResolveCallTest.kt +++ b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractMultiModuleResolveCallTest.kt @@ -27,16 +27,9 @@ abstract class AbstractMultiModuleResolveCallTest : AbstractAnalysisApiBasedTest val actual = executeOnPooledThreadInReadAction { analyseForTest(expression) { - resolveCall(expression)?.let { stringRepresentation(it) } + expression.resolveCall()?.let { stringRepresentation(it) } } } ?: "null" testServices.assertions.assertEqualsToTestDataFileSibling(actual) } - - private fun KtAnalysisSession.resolveCall(element: PsiElement): KtCallInfo? = when (element) { - is KtCallElement -> element.resolveCall() - is KtElement -> element.resolveCall() - else -> error("Selected element type (${element::class.simpleName}) is not supported for resolveCall()") - } - } diff --git a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractResolveCallTest.kt b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractResolveCallTest.kt index 4934bffa4a2..5ea9a3e6788 100644 --- a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractResolveCallTest.kt +++ b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/callResolver/AbstractResolveCallTest.kt @@ -30,7 +30,7 @@ abstract class AbstractResolveCallTest : AbstractAnalysisApiBasedSingleModuleTes testServices.assertions.assertEqualsToTestDataFileSibling(actual) } - private fun KtAnalysisSession.resolveCall(element: PsiElement): KtCallInfo? = when (element) { + private fun KtAnalysisSession.resolveCall(element: KtElement): KtCallInfo? = when (element) { is KtValueArgument -> element.getArgumentExpression()?.resolveCall() is KtDeclarationModifierList -> { val annotationEntry = element.annotationEntries.singleOrNull() @@ -42,9 +42,7 @@ abstract class AbstractResolveCallTest : AbstractAnalysisApiBasedSingleModuleTes ?: error("Only single annotation entry is supported for now") annotationEntry.resolveCall() } - is KtCallElement -> element.resolveCall() - is KtElement -> element.resolveCall() - else -> error("Selected element type (${element::class.simpleName}) is not supported for resolveCall()") + else -> element.resolveCall() } } diff --git a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtCallResolver.kt b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtCallResolver.kt index 90615820040..b1242829f6c 100644 --- a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtCallResolver.kt +++ b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtCallResolver.kt @@ -9,10 +9,7 @@ import org.jetbrains.kotlin.analysis.api.KtAnalysisApiInternals import org.jetbrains.kotlin.analysis.api.calls.KtCallCandidateInfo import org.jetbrains.kotlin.analysis.api.calls.KtCallInfo import org.jetbrains.kotlin.analysis.api.lifetime.withValidityAssertion -import org.jetbrains.kotlin.psi.KtArrayAccessExpression -import org.jetbrains.kotlin.psi.KtCallElement import org.jetbrains.kotlin.psi.KtElement -import org.jetbrains.kotlin.psi.KtUnaryExpression public abstract class KtCallResolver : KtAnalysisSessionComponent() { public abstract fun resolveCall(psi: KtElement): KtCallInfo? @@ -26,19 +23,6 @@ public interface KtCallResolverMixIn : KtAnalysisSessionMixIn { public fun KtElement.resolveCall(): KtCallInfo? = withValidityAssertion { analysisSession.callResolver.resolveCall(this) } - public fun KtCallElement.resolveCall(): KtCallInfo? = withValidityAssertion { - analysisSession.callResolver.resolveCall(this) - } - - public fun KtUnaryExpression.resolveCall(): KtCallInfo? = withValidityAssertion { - analysisSession.callResolver.resolveCall(this) - } - - - public fun KtArrayAccessExpression.resolveCall(): KtCallInfo? = withValidityAssertion { - analysisSession.callResolver.resolveCall(this) - } - /** * Returns all the candidates considered during [overload resolution](https://kotlinlang.org/spec/overload-resolution.html) for the call * corresponding to this [KtElement].