amend! [AA, LL] 6/n Suppress CONTEXT_RECEIVERS_DEPRECATED in Analysis API
[AA, LL, ObjCExport, aa-klib-reader] 6/n Suppress CONTEXT_RECEIVERS_DEPRECATED
KT-67119
Review: https://jetbrains.team/p/kt/reviews/16519/timeline
Otherwise bootstrap build fails because of `-Werror`
diff --git a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/scopeProvider/TestScopeRenderer.kt b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/scopeProvider/TestScopeRenderer.kt
index c66d5e5..adbfca0 100644
--- a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/scopeProvider/TestScopeRenderer.kt
+++ b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/scopeProvider/TestScopeRenderer.kt
@@ -61,7 +61,8 @@
renderScopeMembers(scope, printer, printPretty, additionalSymbolInfo)
}
- context (KaSession)
+ context(KaSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun renderType(
type: KaType,
printPretty: Boolean
diff --git a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/services/TypeParser.kt b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/services/TypeParser.kt
index c7dcaf2..81b04ff 100644
--- a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/services/TypeParser.kt
+++ b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/services/TypeParser.kt
@@ -15,7 +15,8 @@
import org.jetbrains.kotlin.psi.*
object TypeParser {
- context (KaSession)
+ context(KaSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun parseTypeFromString(
stringType: String,
contextElement: KtElement,
@@ -25,7 +26,8 @@
return convertType(type.typeElement ?: incorrectType(type), scopeForTypeParameters)
}
- context (KaSession)
+ context(KaSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun convertType(type: KtTypeElement, scopeForTypeParameters: KtElement): KaType =
when (type) {
is KtUserType -> {
diff --git a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/assertions/filesAssertions.kt b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/assertions/filesAssertions.kt
index 88b3247..f233f0b 100644
--- a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/assertions/filesAssertions.kt
+++ b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/assertions/filesAssertions.kt
@@ -18,16 +18,19 @@
* Equivalent to [assertNoCompiledSources] with an empty array/set
*/
context(Module)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertNoCompiledSources() {
assertCompiledSources()
}
context(Module)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertCompiledSources(vararg expectedCompiledSources: String) {
assertCompiledSources(expectedCompiledSources.toSet())
}
context(Module)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertCompiledSources(expectedCompiledSources: Set<String>) {
requireLogLevel(LogLevel.DEBUG)
val actualCompiledSources = logLines.getValue(LogLevel.DEBUG)
@@ -45,11 +48,13 @@
}
context(Module)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertOutputs(vararg expectedOutputs: String) {
assertOutputs(expectedOutputs.toSet())
}
context(Module)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertOutputs(expectedOutputs: Set<String>) {
val filesLeft = expectedOutputs.map { outputDirectory.resolve(it).relativeTo(outputDirectory) }
.toMutableSet()
diff --git a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/AbstractModule.kt b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/AbstractModule.kt
index b8d13ef..3a30038 100644
--- a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/AbstractModule.kt
+++ b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/AbstractModule.kt
@@ -80,6 +80,7 @@
override val scenarioDslCacheKey = AbstractModuleCacheKey(moduleName, dependencies.map { it.scenarioDslCacheKey }, additionalCompilationArguments)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
override fun compile(
strategyConfig: CompilerExecutionStrategyConfiguration,
forceOutput: LogLevel?,
diff --git a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/JvmModule.kt b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/JvmModule.kt
index f7b5b74..2ac257c 100644
--- a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/JvmModule.kt
+++ b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/JvmModule.kt
@@ -77,6 +77,7 @@
return snapshotFile
}
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
override fun compileIncrementally(
sourcesChanges: SourcesChanges,
strategyConfig: CompilerExecutionStrategyConfiguration,
diff --git a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/Module.kt b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/Module.kt
index cb0b3b0d..7dc322a 100644
--- a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/Module.kt
+++ b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/model/Module.kt
@@ -48,6 +48,7 @@
val defaultStrategyConfig: CompilerExecutionStrategyConfiguration
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun compile(
strategyConfig: CompilerExecutionStrategyConfiguration = defaultStrategyConfig,
forceOutput: LogLevel? = null,
@@ -55,6 +56,7 @@
assertions: context(Module) CompilationOutcome.() -> Unit = {},
): CompilationResult
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun compileIncrementally(
sourcesChanges: SourcesChanges,
strategyConfig: CompilerExecutionStrategyConfiguration = defaultStrategyConfig,
diff --git a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/ScenarioModule.kt b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/ScenarioModule.kt
index 54642fb..cf72336 100644
--- a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/ScenarioModule.kt
+++ b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/ScenarioModule.kt
@@ -49,6 +49,7 @@
*/
fun createPredefinedFile(fileName: String, version: String)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun compile(
forceOutput: LogLevel? = null,
assertions: context(Module, ScenarioModule) CompilationOutcome.() -> Unit = {},
diff --git a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/filesScenarioAssertions.kt b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/filesScenarioAssertions.kt
index 4b3ee3b..4e0570b 100644
--- a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/filesScenarioAssertions.kt
+++ b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/filesScenarioAssertions.kt
@@ -14,6 +14,7 @@
* If you decided to start using it, don't mix it with regular [assertOutputs]
*/
context(Module, ScenarioModule)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertAddedOutputs(vararg addedOutputs: String) {
assertAddedOutputs(addedOutputs.toSet())
}
@@ -23,6 +24,7 @@
* If you decided to start using it, don't mix it with regular [assertOutputs]
*/
context(Module, ScenarioModule)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertAddedOutputs(addedOutputs: Set<String>) {
val outputs = requireScenarioModuleImpl().outputs
outputs.addAll(addedOutputs)
@@ -34,6 +36,7 @@
* If you decided to start using it, don't mix it with regular [assertOutputs]
*/
context(Module, ScenarioModule)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertRemovedOutputs(vararg removedOutputs: String) {
assertRemovedOutputs(removedOutputs.toSet())
}
@@ -43,6 +46,7 @@
* If you decided to start using it, don't mix it with regular [assertOutputs]
*/
context(Module, ScenarioModule)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertRemovedOutputs(removedOutputs: Set<String>) {
val outputs = requireScenarioModuleImpl().outputs
val notPresentOutputs = removedOutputs - outputs
@@ -54,11 +58,13 @@
}
context(Module, ScenarioModule)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun CompilationOutcome.assertNoOutputSetChanges() {
val outputs = requireScenarioModuleImpl().outputs
assertOutputs(outputs)
}
context(ScenarioModule)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun requireScenarioModuleImpl() =
(this@ScenarioModule as? ScenarioModuleImpl ?: error("Expected an instance of ScenarioModuleImpl"))
\ No newline at end of file
diff --git a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/scenarioDsl.kt b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/scenarioDsl.kt
index 1ee2b5c..dc4809d 100644
--- a/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/scenarioDsl.kt
+++ b/compiler/build-tools/kotlin-build-tools-api-tests/src/main/kotlin/compilation/scenario/scenarioDsl.kt
@@ -79,6 +79,7 @@
private var sourcesChanges = SourcesChanges.Known(emptyList(), emptyList())
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
override fun compile(
forceOutput: LogLevel?,
assertions: context(Module, ScenarioModule) CompilationOutcome.() -> Unit,
diff --git a/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/getSymbols.kt b/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/getSymbols.kt
index 8569cb4..8e530a6 100644
--- a/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/getSymbols.kt
+++ b/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/getSymbols.kt
@@ -26,6 +26,7 @@
* @see [getPropertySymbols]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
public fun KlibDeclarationAddress.getSymbols(): Sequence<KtSymbol> {
return when (this) {
is KlibClassAddress -> getClassOrObjectSymbol()?.let { symbol -> sequenceOf(symbol) } ?: emptySequence()
@@ -39,12 +40,14 @@
* @see [getSymbols]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
public fun KlibClassAddress.getClassOrObjectSymbol(): KtClassOrObjectSymbol? {
return getClassOrObjectSymbolByClassId(classId)
?.takeIf { symbol -> symbol in this }
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
public fun KlibTypeAliasAddress.getTypeAliasSymbol(): KtTypeAliasSymbol? {
return getTypeAliasByClassId(classId)
?.takeIf { symbol -> symbol in this }
@@ -54,6 +57,7 @@
* @see [getSymbols]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
public fun KlibCallableAddress.getCallableSymbols(): Sequence<KtCallableSymbol> {
return when (this) {
is KlibFunctionAddress -> getFunctionSymbols()
@@ -65,6 +69,7 @@
* @see [getSymbols]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
public fun KlibFunctionAddress.getFunctionSymbols(): Sequence<KtFunctionSymbol> {
return getTopLevelCallableSymbols(packageFqName, callableName)
.filterIsInstance<KtFunctionSymbol>()
@@ -75,6 +80,7 @@
* @see [getSymbols]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
public fun KlibPropertyAddress.getPropertySymbols(): Sequence<KtPropertySymbol> {
return getTopLevelCallableSymbols(packageFqName, callableName)
.filterIsInstance<KtPropertySymbol>()
@@ -82,6 +88,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private operator fun KlibDeclarationAddress.contains(symbol: KtDeclarationSymbol): Boolean {
val symbolKlibSourceFileName = symbol.getKlibSourceFileName()
val symbolLibraryModule = symbol.getContainingModule() as? KtLibraryModule ?: return false
diff --git a/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/readKlibDeclarationAddresses.kt b/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/readKlibDeclarationAddresses.kt
index 2c2d4e6..eeeb650 100644
--- a/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/readKlibDeclarationAddresses.kt
+++ b/native/analysis-api-klib-reader/src/org/jetbrains/kotlin/native/analysis/api/readKlibDeclarationAddresses.kt
@@ -83,6 +83,7 @@
}
context(PackageFragmentReadingContext)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun ProtoBuf.PackageFragment.readKlibClassAddresses(): Set<KlibClassAddress> {
return class_List.mapNotNull { classProto ->
val classId = ClassId.fromString(nameResolver.getQualifiedClassName(classProto.fqName))
@@ -99,6 +100,7 @@
}
context(PackageFragmentReadingContext)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun ProtoBuf.PackageFragment.readKlibTypeAliasAddresses(): Set<KlibTypeAliasAddress> {
return this.`package`.typeAliasList.map { typeAliasProto ->
val name = Name.identifier(nameResolver.getString(typeAliasProto.name))
@@ -111,6 +113,7 @@
}
context(PackageFragmentReadingContext)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun ProtoBuf.PackageFragment.readKlibPropertyAddresses(): Set<KlibPropertyAddress> {
return `package`.propertyList.map { propertyProto ->
KlibPropertyAddress(
@@ -125,6 +128,7 @@
}
context(PackageFragmentReadingContext)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun ProtoBuf.PackageFragment.readKlibFunctionAddresses(): Set<KlibFunctionAddress> {
return `package`.functionList.map { functionProto ->
KlibFunctionAddress(
diff --git a/native/analysis-api-klib-reader/test/org/jetbrains/kotlin/analysis/api/klib/reader/tests/GetSymbolsTest.kt b/native/analysis-api-klib-reader/test/org/jetbrains/kotlin/analysis/api/klib/reader/tests/GetSymbolsTest.kt
index 500f46e..68d5cca 100644
--- a/native/analysis-api-klib-reader/test/org/jetbrains/kotlin/analysis/api/klib/reader/tests/GetSymbolsTest.kt
+++ b/native/analysis-api-klib-reader/test/org/jetbrains/kotlin/analysis/api/klib/reader/tests/GetSymbolsTest.kt
@@ -190,6 +190,7 @@
/**
* Runs the given [block] in an analysis session that will have the built library as [KtAnalysisSession.useSiteModule]
*/
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun <T> withTestProjectLibraryAnalysisSession(block: context(KtAnalysisSession) () -> T): T {
val session = buildStandaloneAnalysisAPISession {
val currentArchitectureTarget = HostManager.host
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportFile.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportFile.kt
index ee06daf8..3acb5c0 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportFile.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportFile.kt
@@ -21,6 +21,7 @@
val packageFqName: FqName
context(KtAnalysisSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun resolve(): KtResolvedObjCExportFile
}
@@ -88,6 +89,7 @@
* See [KtResolvedObjCExportFile]
*/
context(KtAnalysisSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
override fun resolve(): KtResolvedObjCExportFile {
val symbol = file.getFileSymbol()
return KtResolvedObjCExportFile(
@@ -122,6 +124,7 @@
}
context(KtAnalysisSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
override fun resolve(): KtResolvedObjCExportFile {
val classifierAddresses = addresses.filterIsInstance<KlibClassAddress>()
val callableAddresses = addresses.filterIsInstance<KlibCallableAddress>()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportModuleNaming.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportModuleNaming.kt
index 02543b3..6bfbcff 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportModuleNaming.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportModuleNaming.kt
@@ -19,6 +19,7 @@
interface KtObjCExportModuleNaming {
context(KtAnalysisSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun getModuleName(module: KtModule): String?
companion object {
@@ -27,6 +28,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtModule.getObjCKotlinModuleName(): String? {
return cached(GetObjCKotlinModuleNameCacheKey(this)) {
internal.moduleNaming.getModuleName(this)
@@ -45,6 +47,7 @@
internal object KtKlibObjCExportModuleNaming : KtObjCExportModuleNaming {
context(KtAnalysisSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
override fun getModuleName(module: KtModule): String? {
/*
In this implementation, we're actually looking into the klib file, trying to resolve
@@ -63,6 +66,7 @@
internal object KtSimpleObjCExportModuleNaming : KtObjCExportModuleNaming {
context(KtAnalysisSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
override fun getModuleName(module: KtModule): String? {
return when (module) {
is KtSourceModule -> module.stableModuleName ?: module.moduleName
@@ -73,7 +77,9 @@
}
internal class KtCompositeObjCExportModuleNaming(private val implementations: List<KtObjCExportModuleNaming>) : KtObjCExportModuleNaming {
- context(KtAnalysisSession) override fun getModuleName(module: KtModule): String? {
+ context(KtAnalysisSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
+ override fun getModuleName(module: KtModule): String? {
return implementations.firstNotNullOfOrNull { implementation -> implementation.getModuleName(module) }
}
}
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportSession.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportSession.kt
index 29575e7..327fce3 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportSession.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/KtObjCExportSession.kt
@@ -79,6 +79,7 @@
* ```
*/
context(KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal inline fun <reified T> cached(key: Any, noinline computation: () -> T): T {
return cached(T::class.java, key, computation)
}
@@ -87,6 +88,7 @@
* @see cached
*/
context(KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun <T> cached(typeOfT: Class<T>, key: Any, computation: () -> T): T {
val value = private.cache.getOrPutNullable(key) {
computation()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/definedThrows.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/definedThrows.kt
index 7df8288..aa16640 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/definedThrows.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/definedThrows.kt
@@ -15,6 +15,7 @@
* See K1: org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.getDefinedThrows
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtFunctionLikeSymbol.definedThrows: List<ClassId>
get() {
if (isSuspend) return listOf(ClassId.topLevel(KonanFqNames.cancellationException))
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/effectiveThrows.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/effectiveThrows.kt
index 060122e..eb90b08 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/effectiveThrows.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/effectiveThrows.kt
@@ -30,6 +30,7 @@
* See K1: [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.getEffectiveThrows]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtFunctionLikeSymbol.effectiveThrows: List<ClassId>
get() {
getAllOverriddenSymbols().firstOrNull()?.let { return (it as KtFunctionLikeSymbol).effectiveThrows }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/errors.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/errors.kt
index ddacf82..fd6d622 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/errors.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/errors.kt
@@ -32,6 +32,7 @@
internal const val errorClassName = "ERROR"
context(KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val errorInterface
get() = ObjCInterfaceImpl(
name = errorClassName,
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getAllClassOrObjectSymbols.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getAllClassOrObjectSymbols.kt
index fe9b4b2..2872355 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getAllClassOrObjectSymbols.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getAllClassOrObjectSymbols.kt
@@ -20,6 +20,7 @@
* returns `sequenceOf(A, B, C)`
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtFileSymbol.getAllClassOrObjectSymbols(): List<KtClassOrObjectSymbol> {
return getFileScope().getClassifierSymbols()
.filterIsInstance<KtClassOrObjectSymbol>()
@@ -28,6 +29,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.getAllClassOrObjectSymbols(): Sequence<KtClassOrObjectSymbol> {
return sequence {
val nestedClasses = getMemberScope().getClassifierSymbols().filterIsInstance<KtClassOrObjectSymbol>()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDeclaredSuperInterfaceSymbols.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDeclaredSuperInterfaceSymbols.kt
index d32cb3d..272e831 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDeclaredSuperInterfaceSymbols.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDeclaredSuperInterfaceSymbols.kt
@@ -14,6 +14,7 @@
* @return The **declared** super interfaces (**not the transitive closure**)
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.getDeclaredSuperInterfaceSymbols(): List<KtClassOrObjectSymbol> {
return superTypes
.asSequence()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDefaultSuperClassOrProtocolName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDefaultSuperClassOrProtocolName.kt
index 5e2eb40..1528921 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDefaultSuperClassOrProtocolName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getDefaultSuperClassOrProtocolName.kt
@@ -12,6 +12,7 @@
* @end
*/
context(KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun getDefaultSuperClassOrProtocolName(): ObjCExportClassOrProtocolName {
return "Base".getObjCKotlinStdlibClassOrProtocolName()
}
\ No newline at end of file
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getFileName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getFileName.kt
index 45b2c52..f6bc5b7 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getFileName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getFileName.kt
@@ -8,6 +8,7 @@
import org.jetbrains.kotlin.psi.KtFile
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtFileSymbol.getFileName(): String? {
val ktFile = this.psi as? KtFile ?: return null
return NameUtils.getPackagePartClassNamePrefix(FileUtil.getNameWithoutExtension(ktFile.name))
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getInlineTargetTypeOrNull.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getInlineTargetTypeOrNull.kt
index a48cef7..2c50383 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getInlineTargetTypeOrNull.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getInlineTargetTypeOrNull.kt
@@ -15,6 +15,7 @@
import org.jetbrains.kotlin.backend.konan.KonanFqNames
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.getInlineTargetTypeOrNull(): KtType? {
if (this !is KtNonErrorClassType) return null
val classSymbol = symbol as? KtNamedClassOrObjectSymbol ?: return null
@@ -22,6 +23,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtNamedClassOrObjectSymbol.getInlineTargetTypeOrNull(): KtType? {
if (!isInlineIncludingKotlinNativeSpecialClasses()) return null
@@ -47,6 +49,7 @@
* despite no modifier being present. This is considered a 'special Kotlin Native' class in the context of this function.
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtNamedClassOrObjectSymbol.isInlineIncludingKotlinNativeSpecialClasses(): Boolean {
if (this.isInline) return true
val classId = classId ?: return false
@@ -66,12 +69,14 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtType.markNullable(): KtType {
if (this.nullability == KtTypeNullability.NULLABLE) return this
return this.withNullability(KtTypeNullability.NULLABLE)
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtType.markNullableIf(shouldMarkNullable: Boolean): KtType {
return if (shouldMarkNullable) markNullable() else this
}
\ No newline at end of file
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getMethodBridge.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getMethodBridge.kt
index 8e41067..300e83b 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getMethodBridge.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getMethodBridge.kt
@@ -17,6 +17,7 @@
* See K1 implementation [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportMapperKt.bridgeMethodImpl]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtFunctionLikeSymbol.getFunctionMethodBridge(): MethodBridge {
val valueParameters = mutableListOf<MethodBridgeValueParameter>()
@@ -52,6 +53,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtCallableSymbol.bridgeReceiverType: MethodBridgeReceiver
get() {
return if (isArrayConstructor) {
@@ -67,6 +69,7 @@
* [ObjCExportMapper.bridgeParameter]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun bridgeParameter(type: KtType): MethodBridgeValueParameter {
return MethodBridgeValueParameter.Mapped(bridgeType(type))
}
@@ -75,6 +78,7 @@
* [ObjCExportMapper.bridgeType]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun bridgeType(
type: KtType,
): TypeBridge {
@@ -117,6 +121,7 @@
* [ObjCExportMapper.bridgeFunctionType]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun bridgeFunctionType(type: KtType): TypeBridge {
val numberOfParameters: Int
@@ -138,6 +143,7 @@
* [ObjCExportMapper.bridgeReturnType]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtCallableSymbol.bridgeReturnType(): MethodBridge.ReturnValue {
if (isArrayConstructor) {
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getObjCDocumentedAnnotations.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getObjCDocumentedAnnotations.kt
index f180e95..e23bc0c 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getObjCDocumentedAnnotations.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getObjCDocumentedAnnotations.kt
@@ -20,6 +20,7 @@
* documentation.
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtAnnotatedSymbol.getObjCDocumentedAnnotations(): List<KtAnnotationApplicationWithArgumentsInfo> {
return annotations.getObjCDocumentedAnnotations()
}
@@ -28,6 +29,7 @@
* See [getObjCDocumentedAnnotations]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtAnnotationsList.getObjCDocumentedAnnotations(): List<KtAnnotationApplicationWithArgumentsInfo> {
return this
.filter { annotation ->
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getPropertySymbol.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getPropertySymbol.kt
index d78309f..2edff50 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getPropertySymbol.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getPropertySymbol.kt
@@ -12,6 +12,7 @@
import org.jetbrains.kotlin.tooling.core.linearClosure
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtPropertyAccessorSymbol.getPropertySymbol(): KtPropertySymbol {
return this.linearClosure<KtSymbol> { it.getContainingSymbol() }.filterIsInstance<KtPropertySymbol>().firstOrNull()
?: error("Missing '${KtPropertySymbol::class} on ${this.render()}")
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getSuperClassNotAny.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getSuperClassNotAny.kt
index cc9f23f..74d9957 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getSuperClassNotAny.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/getSuperClassNotAny.kt
@@ -25,6 +25,7 @@
* ```
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.getSuperClassSymbolNotAny(): KtClassOrObjectSymbol? {
return getSuperClassTypeNotAny()?.expandedSymbol
}
@@ -43,6 +44,7 @@
* ```
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.getSuperClassTypeNotAny(): KtNonErrorClassType? {
return superTypes.firstNotNullOfOrNull find@{ superType ->
if (superType.isAny || superType.isError) return@find null
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isArrayConstructor.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isArrayConstructor.kt
index a8636bc..4b8c08e 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isArrayConstructor.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isArrayConstructor.kt
@@ -12,6 +12,7 @@
import org.jetbrains.kotlin.backend.konan.descriptors.arrayTypes
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtCallableSymbol.isArrayConstructor: Boolean
get() = this is KtConstructorSymbol && getContainingSymbol()
?.let { containingSymbol -> containingSymbol as? KtClassOrObjectSymbol }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isCloneable.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isCloneable.kt
index 5706b41..4cfe75d 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isCloneable.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isCloneable.kt
@@ -11,12 +11,14 @@
import org.jetbrains.kotlin.name.StandardClassIds
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtDeclarationSymbol?.implementsCloneable: Boolean
get() {
return (this as? KtClassOrObjectSymbol)?.implementsCloneable ?: false
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtClassOrObjectSymbol.implementsCloneable: Boolean
get() {
return superTypes.any {
@@ -35,6 +37,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtFunctionSymbol.isClone: Boolean
get() {
val cloneCallableId = CallableId(StandardClassIds.Cloneable, Name.identifier("clone"))
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isHashCode.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isHashCode.kt
index 57758c8..eeabf6b 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isHashCode.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isHashCode.kt
@@ -14,6 +14,7 @@
private val hashCodeCallableId = CallableId(StandardClassIds.Any, Name.identifier("hashCode"))
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtCallableSymbol.isHashCode: Boolean
get() = this.callableId == hashCodeCallableId ||
getAllOverriddenSymbols().any { overriddenSymbol -> overriddenSymbol.callableId == hashCodeCallableId }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCBaseCallable.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCBaseCallable.kt
index 128a0da..e3ff543 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCBaseCallable.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCBaseCallable.kt
@@ -25,6 +25,7 @@
* Interface `I` is not exposed to the generated header, so C#f is considered to be a base method even though it has an "override" keyword.
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtCallableSymbol.isObjCBaseCallable(): Boolean {
return getAllOverriddenSymbols().none { overriddenSymbol ->
overriddenSymbol.isVisibleInObjC()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCObjectType.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCObjectType.kt
index 5cf3acf..0ff9899 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCObjectType.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isObjCObjectType.kt
@@ -12,6 +12,7 @@
import org.jetbrains.kotlin.name.NativeStandardInteropNames
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.isObjCObjectType(): Boolean {
val symbol = this.symbol
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isThrowable.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isThrowable.kt
index 90ebb89..b01d708 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isThrowable.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isThrowable.kt
@@ -6,6 +6,7 @@
import org.jetbrains.kotlin.name.ClassId
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtClassOrObjectSymbol.isThrowable: Boolean
get() {
val classId = classId ?: return false
@@ -13,6 +14,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val ClassId.isThrowable: Boolean
get() {
return StandardNames.FqNames.throwable == this.asSingleFqName()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isVisibleInObjC.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isVisibleInObjC.kt
index 7f7306b..a14ff8c 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isVisibleInObjC.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/analysisApiUtils/isVisibleInObjC.kt
@@ -21,6 +21,7 @@
import kotlin.contracts.contract
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtSymbol.isVisibleInObjC(): Boolean = when (this) {
is KtCallableSymbol -> this.isVisibleInObjC()
is KtClassOrObjectSymbol -> this.isVisibleInObjC()
@@ -28,6 +29,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtCallableSymbol.isVisibleInObjC(): Boolean {
if (this is KtSymbolWithVisibility && !isPublicApi(this)) return false
if (this is KtPossibleMultiplatformSymbol && isExpect) return false
@@ -41,6 +43,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.isVisibleInObjC(): Boolean {
// TODO if(specialMapped()) return false
// TODO if(!defaultType.isObjCObjectType()) return false
@@ -60,6 +63,7 @@
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtSymbol.isSealedClassConstructor(): Boolean {
if (this !is KtConstructorSymbol) return false
val containingSymbol = this.getContainingSymbol() as? KtSymbolWithModality ?: return false
@@ -67,6 +71,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
@OptIn(ExperimentalContracts::class)
private fun KtSymbol.isComponentNMethod(): Boolean {
contract {
@@ -81,6 +86,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtCallableSymbol.isHiddenFromObjCByAnnotation(): Boolean {
val overwrittenSymbols = getDirectlyOverriddenSymbols()
if (overwrittenSymbols.isNotEmpty()) return overwrittenSymbols.first().isHiddenFromObjCByAnnotation()
@@ -88,6 +94,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.isHiddenFromObjCByAnnotation(): Boolean {
val containingSymbol = getContainingSymbol()
if (containingSymbol is KtClassOrObjectSymbol && containingSymbol.isHiddenFromObjCByAnnotation()) return true
@@ -114,6 +121,7 @@
*
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtAnnotatedSymbol.containsHidesFromObjCAnnotation(): Boolean {
return annotations.any { annotation ->
val annotationClassId = annotation.classId ?: return@any false
@@ -123,6 +131,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtCallableSymbol.isHiddenFromObjCByDeprecation(): Boolean {
/*
Note: ObjCExport generally expect overrides of exposed methods to be exposed.
@@ -143,6 +152,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.isHiddenFromObjCByDeprecation(): Boolean {
if (this.deprecationStatus?.deprecationLevel == DeprecationLevelValue.HIDDEN) return true
@@ -165,6 +175,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.isInlined(): Boolean {
if (this !is KtNamedClassOrObjectSymbol) return false
if (this.isInline) return true
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/baseMethod.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/baseMethod.kt
index 4d96699..3b165bd 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/baseMethod.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/baseMethod.kt
@@ -14,6 +14,7 @@
* - [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportMapperKt.isBaseMethod]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtFunctionSymbol.baseMethod: KtFunctionSymbol
get() {
val overriddenSymbols = getAllOverriddenSymbols().filter { symbol -> symbol.isVisibleInObjC() }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/buildCompanionProperty.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/buildCompanionProperty.kt
index b86ffc6..d08d236 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/buildCompanionProperty.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/buildCompanionProperty.kt
@@ -15,6 +15,7 @@
* To check whether class has companion object see [needsCompanionProperty]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.buildCompanionProperty(): ObjCProperty {
val companion = this.getStaticMemberScope().getClassifierSymbols().toList()
.firstOrNull { (it as? KtClassOrObjectSymbol)?.isCompanion == true }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCExportStubExtras.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCExportStubExtras.kt
index 0841285..feb6f68 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCExportStubExtras.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCExportStubExtras.kt
@@ -10,6 +10,7 @@
/**
* Convenience function for building extras for [ObjCExportStub]
*/
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun objCExportStubExtras(builder: context(ObjCExportStubExtrasBuilderContext) MutableExtras.() -> Unit): Extras {
return mutableExtrasOf().also { extras -> builder(ObjCExportStubExtrasBuilderContext, extras) }
}
\ No newline at end of file
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCTypeExtras.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCTypeExtras.kt
index 06e9ea6..200b3a1 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCTypeExtras.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/objCTypeExtras.kt
@@ -21,6 +21,7 @@
/**
* Convenience function for building extras for [ObjCType]
*/
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun objCTypeExtras(builder: context(ObjCTypeExtrasBuilderContext) MutableExtras.() -> Unit): Extras {
return mutableExtrasOf().also { extras -> builder(ObjCTypeExtrasBuilderContext, extras) }
}
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/originClassId.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/originClassId.kt
index 62a4bb0..a0c0a53 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/originClassId.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/originClassId.kt
@@ -34,6 +34,7 @@
* See [ObjCType.originClassId]
*/
context(ObjCTypeExtrasBuilderContext)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal var MutableExtras.originClassId: ClassId?
get() = this[originClassIdKey]
set(value) {
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/requiresForwardDeclaration.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/requiresForwardDeclaration.kt
index 000ac88..b926d9f 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/requiresForwardDeclaration.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/requiresForwardDeclaration.kt
@@ -31,6 +31,7 @@
* @see ObjCReferenceType.requiresForwardDeclaration
*/
context(ObjCTypeExtrasBuilderContext)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal var MutableExtras.requiresForwardDeclaration: Boolean
get() = this[requiresForwardDeclarationKey] ?: false
set(value) {
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/throwsAnnotationClassIds.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/throwsAnnotationClassIds.kt
index ab94974..1a5d199 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/throwsAnnotationClassIds.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/extras/throwsAnnotationClassIds.kt
@@ -18,6 +18,7 @@
}
context(ObjCExportStubExtrasBuilderContext)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal var MutableExtras.throwsAnnotationClassIds: List<ClassId>?
get() = this[throwsAnnotationClassIdsKey]
set(value) {
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCClassOrProtocolName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCClassOrProtocolName.kt
index 4a94e86..007da49 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCClassOrProtocolName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCClassOrProtocolName.kt
@@ -32,6 +32,7 @@
*
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtClassLikeSymbol.getObjCClassOrProtocolName(bareName: Boolean = false): ObjCExportClassOrProtocolName {
val resolvedObjCNameAnnotation = resolveObjCNameAnnotation()
@@ -42,6 +43,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassLikeSymbol.getObjCName(
resolvedObjCNameAnnotation: KtResolvedObjCNameAnnotation? = resolveObjCNameAnnotation(),
bareName: Boolean = false,
@@ -65,6 +67,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassLikeSymbol.getSwiftName(
resolvedObjCNameAnnotation: KtResolvedObjCNameAnnotation? = resolveObjCNameAnnotation(),
bareName: Boolean = false,
@@ -102,6 +105,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassLikeSymbol.canBeInnerSwift(): Boolean {
if (configuration.objcGenerics && this.typeParameters.isNotEmpty()) {
// Swift compiler doesn't seem to handle this case properly.
@@ -119,6 +123,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassLikeSymbol.canBeOuterSwift(): Boolean {
if (configuration.objcGenerics && this.typeParameters.isNotEmpty()) {
// Swift nested classes are static but capture outer's generics.
@@ -139,6 +144,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtSymbol.getObjCModuleNamePrefix(): String? {
val module = getContainingModule()
val moduleName = module.getObjCKotlinModuleName() ?: return null
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCDeprecationStatus.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCDeprecationStatus.kt
index 71bbe40..a11ca3c 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCDeprecationStatus.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCDeprecationStatus.kt
@@ -17,6 +17,7 @@
* See K1 [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportMapper.getDeprecation]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KaSymbol.getObjCDeprecationStatus(): String? {
return deprecationStatus?.toDeprecationAttribute() ?: if (this.isConstructor) {
this.getContainingSymbol()?.deprecationStatus?.toDeprecationAttribute()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCExportStubOrigin.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCExportStubOrigin.kt
index 19bae04..e584479 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCExportStubOrigin.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCExportStubOrigin.kt
@@ -15,6 +15,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportStubFactoriesKt.ObjCExportStubOrigin]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtSymbol.getObjCExportStubOrigin(): ObjCExportStubOrigin {
// TODO: Differentiate origins
// TODO: Extract kdoc from deserialized symbols
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileClassOrProtocolName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileClassOrProtocolName.kt
index d941355..e492a2b 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileClassOrProtocolName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileClassOrProtocolName.kt
@@ -8,6 +8,7 @@
private const val PART_CLASS_NAME_SUFFIX = "Kt"
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtResolvedObjCExportFile.getObjCFileClassOrProtocolName(): ObjCExportFileName {
return (NameUtils.getPackagePartClassNamePrefix(fileName) + PART_CLASS_NAME_SUFFIX).toIdentifier().getObjCFileName()
}
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileName.kt
index e986dd6..1d25075 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFileName.kt
@@ -4,6 +4,7 @@
context(KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun String.getObjCFileName(): ObjCExportFileName {
return ObjCExportFileName(
swiftName = this,
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFunctionName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFunctionName.kt
index 5c8dbe7..cf7929e 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFunctionName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCFunctionName.kt
@@ -6,6 +6,7 @@
import org.jetbrains.kotlin.objcexport.analysisApiUtils.getPropertySymbol
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtFunctionLikeSymbol.getObjCFunctionName(): ObjCExportFunctionName {
val annotationName =
if (this is KtPropertyAccessorSymbol) this.getContainingSymbol()?.resolveObjCNameAnnotation()
@@ -17,6 +18,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtFunctionLikeSymbol.getObjCFunctionName(annotationName: String?): String {
return if (annotationName != null) {
if (this is KtPropertyAccessorSymbol) formatPropertyName(annotationName) else annotationName
@@ -24,6 +26,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private val KtFunctionLikeSymbol.translationName: String
get() {
return when (this) {
@@ -36,6 +39,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtPropertyAccessorSymbol.formatPropertyName(annotationName: String? = null): String {
val propertySymbol = this.getPropertySymbol()
val name = annotationName ?: propertySymbol.name.asString()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCKotlinStdlibClassOrProtocolName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCKotlinStdlibClassOrProtocolName.kt
index d8a5e64..810d22e 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCKotlinStdlibClassOrProtocolName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCKotlinStdlibClassOrProtocolName.kt
@@ -7,6 +7,7 @@
* @receiver The name of the Kotlin class or protocol
*/
context(KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun String.getObjCKotlinStdlibClassOrProtocolName() = ObjCExportClassOrProtocolName(
swiftName = "Kotlin$this",
objCName = "${configuration.frameworkName.orEmpty()}$this"
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCPropertyName.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCPropertyName.kt
index 81e1e63..eb598c0 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCPropertyName.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/getObjCPropertyName.kt
@@ -11,6 +11,7 @@
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtVariableLikeSymbol.getObjCPropertyName(): ObjCExportPropertyName {
val resolveObjCNameAnnotation = resolveObjCNameAnnotation()
val stringName = name.asString()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCNothing.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCNothing.kt
index ae640e4..bfc95c4 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCNothing.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCNothing.kt
@@ -8,5 +8,6 @@
* See K1 usage [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportMapper.bridgeReturnType]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
val KaType.isObjCNothing: Boolean
get() = isNothing && !canBeNull
\ No newline at end of file
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCProperty.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCProperty.kt
index 3a02d95..e3c160d 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCProperty.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/isObjCProperty.kt
@@ -13,6 +13,7 @@
* See K1 [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportMapperKt.isObjCProperty]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtPropertySymbol.isObjCProperty: Boolean
get() {
val isMappedReceiver = receiverParameter?.type?.isMappedObjCType == true
@@ -22,6 +23,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private val KtPropertySymbol.isPropertyInInnerClass: Boolean
get() = linearClosure<KtSymbol> { symbol -> symbol.getContainingSymbol() }
.any { it is KtNamedClassOrObjectSymbol && it.isInner }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/needsCompanionProperty.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/needsCompanionProperty.kt
index 5584fa6..154bdd9 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/needsCompanionProperty.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/needsCompanionProperty.kt
@@ -8,6 +8,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslator.needCompanionObjectProperty]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtClassOrObjectSymbol.needsCompanionProperty: Boolean
get() {
return this.getStaticMemberScope().getClassifierSymbols()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/resolveObjCNameAnnotation.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/resolveObjCNameAnnotation.kt
index c510671..3ad70f2 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/resolveObjCNameAnnotation.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/resolveObjCNameAnnotation.kt
@@ -45,6 +45,7 @@
)
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtAnnotatedSymbol.resolveObjCNameAnnotation(): KtResolvedObjCNameAnnotation? {
val annotation = annotations.find { it.classId?.asSingleFqName() == KonanFqNames.objCName } ?: return null
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateEnumMembers.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateEnumMembers.kt
index a75c0d5..5b080aa 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateEnumMembers.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateEnumMembers.kt
@@ -14,12 +14,14 @@
* the Analysis API by requesting the combined member scope and looking for [KtSymbolOrigin.SOURCE_MEMBER_GENERATED].
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.translateEnumMembers(): List<ObjCExportStub> {
if (classKind != KtClassKind.ENUM_CLASS) return emptyList()
return getEnumEntries() + listOf(getEnumValuesMethod(), getEnumEntriesProperty())
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.getEnumEntries(): List<ObjCProperty> {
val staticMembers = this.getStaticDeclaredMemberScope().getCallableSymbols().toList()
return staticMembers.filterIsInstance<KtEnumEntrySymbol>().map { entry ->
@@ -41,6 +43,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.buildEnumValuesMethod]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.getEnumValuesMethod(): ObjCMethod {
val valuesFunctionSymbol = getStaticMemberScope().getCallableSymbols(Name.identifier("values")).firstOrNull()
return ObjCMethod(
@@ -58,6 +61,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.buildEnumEntriesProperty]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.getEnumEntriesProperty(): ObjCProperty {
val entriesSymbol = getStaticMemberScope().getCallableSymbols(Name.identifier("entries")).firstOrNull()
@@ -74,6 +78,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtEnumEntrySymbol.getEnumEntryName(forSwift: Boolean): String {
val propertyName: String = getObjCPropertyName().run {
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateSuperClass.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateSuperClass.kt
index 255f525..82619e7 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateSuperClass.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateSuperClass.kt
@@ -19,6 +19,7 @@
)
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.translateSuperClass(): KtObjCSuperClassTranslation {
val superClassType = getSuperClassTypeNotAny()
val superClassName = superClassType?.getSuperClassName() ?: getDefaultSuperClassOrProtocolName()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToMappedObjCType.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToMappedObjCType.kt
index 2546d00..15a1838 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToMappedObjCType.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToMappedObjCType.kt
@@ -23,6 +23,7 @@
* Returns `null` if the type is not mapped to any ObjC equivalent
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.translateToMappedObjCTypeOrNull(): ObjCClassType? {
return listOf(this).plus(this.getAllSuperTypes()).firstNotNullOfOrNull find@{ type ->
val classId = type.expandedSymbol?.classId ?: return@find null
@@ -46,6 +47,7 @@
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val mappedObjCTypeNames: Map<ClassId, String>
get() = cached("mappedObjCTypeNames") {
buildMap {
@@ -78,5 +80,6 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtType.isMappedObjCType: Boolean
get() = mappedObjCTypes.contains(expandedSymbol?.classId)
\ No newline at end of file
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCClass.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCClass.kt
index 0a0f45c..5e42dfe 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCClass.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCClass.kt
@@ -10,6 +10,7 @@
import org.jetbrains.kotlin.objcexport.analysisApiUtils.isVisibleInObjC
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtClassOrObjectSymbol.translateToObjCClass(): ObjCClass? {
require(classKind == KtClassKind.CLASS || classKind == KtClassKind.ENUM_CLASS)
if (!isVisibleInObjC()) return null
@@ -99,6 +100,7 @@
* @see [Predefined]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.getCallableSymbolsForObjCMemberTranslation(): Set<KtCallableSymbol> {
val generatedCallableSymbols = getMemberScope()
.getCallableSymbols()
@@ -113,6 +115,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtNonErrorClassType.getSuperClassName(): ObjCExportClassOrProtocolName? {
val symbol = expandedSymbol ?: return null
return symbol.getObjCClassOrProtocolName()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCComment.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCComment.kt
index b564481..103c5f9 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCComment.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCComment.kt
@@ -27,6 +27,7 @@
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtAnnotationsList.translateToObjCComment(): ObjCComment? {
val annotations = getObjCDocumentedAnnotations()
.mapNotNull { annotation -> renderAnnotation(annotation) }
@@ -39,6 +40,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.buildComment]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtFunctionLikeSymbol.translateToObjCComment(bridge: MethodBridge, parameters: List<ObjCParameter>): ObjCComment? {
val throwsComments = if (isSuspend || bridge.returnsError) {
val effectiveThrows = effectiveThrows.toSet()
@@ -79,6 +81,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.mustBeDocumentedParamAttributeList]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun ObjCParameter.renderedObjCDocumentedParamAnnotations(parameterSymbol: KtValueParameterSymbol): String? {
val renderedAnnotationsString = parameterSymbol.getObjCDocumentedAnnotations()
.mapNotNull { annotation -> renderAnnotation(annotation) }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCConstructor.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCConstructor.kt
index 84af2d2..e07933e 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCConstructor.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCConstructor.kt
@@ -14,6 +14,7 @@
import org.jetbrains.kotlin.objcexport.analysisApiUtils.isVisibleInObjC
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtClassOrObjectSymbol.translateToObjCConstructors(): List<ObjCMethod> {
/* Translate declared constructors */
@@ -74,6 +75,7 @@
* Additional primary constructor which goes always after primary constructor ([ObjCMethod.name] == "init")
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun buildNewInitConstructor(constructor: KtFunctionLikeSymbol): ObjCMethod {
return ObjCMethod(
comment = null,
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExportStub.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExportStub.kt
index 18be1c9..47d044c 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExportStub.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExportStub.kt
@@ -7,6 +7,7 @@
import org.jetbrains.kotlin.utils.addIfNotNull
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtCallableSymbol.translateToObjCExportStub(): List<ObjCExportStub> {
val result = mutableListOf<ObjCExportStub>()
when (this) {
@@ -25,6 +26,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.translateToObjCExportStub(): ObjCClass? = when (classKind) {
KtClassKind.INTERFACE -> translateToObjCProtocol()
KtClassKind.CLASS -> translateToObjCClass()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExtensionFacades.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExtensionFacades.kt
index 6db2519..e271b75 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExtensionFacades.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCExtensionFacades.kt
@@ -47,6 +47,7 @@
* See related [translateToObjCTopLevelFacade]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtResolvedObjCExportFile.translateToObjCExtensionFacades(): List<ObjCInterface> {
val extensions = callableSymbols
.filter { it.isExtension }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCFunctionType.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCFunctionType.kt
index 36312d8..43c9213e 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCFunctionType.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCFunctionType.kt
@@ -6,6 +6,7 @@
import org.jetbrains.kotlin.backend.konan.objcexport.*
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.translateToObjCFunctionType(typeBridge: BlockPointerBridge): ObjCReferenceType {
if (this !is KtFunctionalType) return ObjCIdType
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCHeader.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCHeader.kt
index 235f309..b373b4b 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCHeader.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCHeader.kt
@@ -16,6 +16,7 @@
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun translateToObjCHeader(
files: List<KtObjCExportFile>,
withObjCBaseDeclarations: Boolean = true,
@@ -70,6 +71,7 @@
private val objCClassForwardDeclarations = mutableSetOf<String>()
context(KtAnalysisSession, KtObjCExportSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun translateAll(files: List<KtObjCExportFile>) {
/**
* Step 1: Translate classifiers (class, interface, object, ...)
@@ -96,12 +98,14 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun translateClass(classId: ClassId) {
val classOrObjectSymbol = getClassOrObjectSymbolByClassId(classId) ?: return
translateClassOrObjectSymbol(classOrObjectSymbol)
}
context(KtAnalysisSession, KtObjCExportSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun translateFileClassifiers(file: KtObjCExportFile) {
val resolvedFile = file.resolve()
resolvedFile.classifierSymbols.sortedWith(StableClassifierOrder).forEach { classOrObjectSymbol ->
@@ -110,6 +114,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun translateFileFacades(file: KtObjCExportFile) {
val resolvedFile = file.resolve()
@@ -126,6 +131,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun translateClassOrObjectSymbol(symbol: KtClassOrObjectSymbol): ObjCClass? {
/* No classId, no stubs ¯\_(ツ)_/¯ */
val classId = symbol.classId ?: return null
@@ -224,6 +230,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+ @Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun buildObjCHeader(): ObjCHeader {
val hasErrorTypes = objCStubs.hasErrorTypes()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCMethod.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCMethod.kt
index 8acd812..2772b7b 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCMethod.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCMethod.kt
@@ -21,6 +21,7 @@
get() = this is KtConstructorSymbol
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtFunctionLikeSymbol.translateToObjCMethod(): ObjCMethod? {
if (!isVisibleInObjC()) return null
if (isFakeOverride) return null
@@ -32,6 +33,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.buildMethod]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtFunctionLikeSymbol.buildObjCMethod(
unavailable: Boolean = false,
): ObjCMethod {
@@ -112,6 +114,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtFunctionLikeSymbol.getSwiftName(methodBridge: MethodBridge): String {
//assert(mapper.isBaseMethod(method)) //TODO: implement isBaseMethod
if (this is KtNamedSymbol) {
@@ -208,6 +211,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportNamerImpl.getSelector]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtFunctionLikeSymbol.getSelector(methodBridge: MethodBridge): String {
if (this is KtNamedSymbol) {
@@ -265,6 +269,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportNamerImpl.getMangledName]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtFunctionLikeSymbol.getMangledName(forSwift: Boolean): String {
return if (this.isConstructor) {
if (isArrayConstructor && !forSwift) "array" else "init"
@@ -290,6 +295,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.mapReturnType]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtFunctionLikeSymbol.mapReturnType(returnBridge: MethodBridge.ReturnValue): ObjCType {
return when (returnBridge) {
MethodBridge.ReturnValue.Suspend,
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObject.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObject.kt
index 8af7898..3896f21 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObject.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObject.kt
@@ -12,6 +12,7 @@
import org.jetbrains.kotlin.objcexport.extras.requiresForwardDeclaration
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtClassOrObjectSymbol.translateToObjCObject(): ObjCClass? {
require(classKind == KtClassKind.OBJECT || classKind == KtClassKind.COMPANION_OBJECT)
if (!isVisibleInObjC()) return null
@@ -49,6 +50,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.getDefaultMembers(): List<ObjCExportStub> {
val result = mutableListOf<ObjCExportStub>()
@@ -85,6 +87,7 @@
* See also: [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.mapReferenceType]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.toPropertyType() = ObjCClassType(
className = getObjCClassOrProtocolName().objCName,
typeArguments = emptyList(),
@@ -98,6 +101,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportNamerImpl.getObjectInstanceSelector]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun getObjectInstanceSelector(objectSymbol: KtClassOrObjectSymbol): String {
return objectSymbol.getObjCClassOrProtocolName(bareName = true)
.objCName
@@ -109,6 +113,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportNamerImpl.getObjectPropertySelector]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun getObjectPropertySelector(descriptor: KtClassOrObjectSymbol): String {
val collides = ObjCPropertyNames.objectPropertyName == getObjectInstanceSelector(descriptor)
return ObjCPropertyNames.objectPropertyName + (if (collides) "_" else "")
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObjectType.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObjectType.kt
index 1f018ae..2e2cd3d 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObjectType.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCObjectType.kt
@@ -41,6 +41,7 @@
* `@ExternalObjCClass` annotation. (See [org.jetbrains.kotlin.objcexport.analysisApiUtils.isObjCObjectType]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.translateToObjCObjectType(): ObjCNonNullReferenceType {
if (this !is KtNonErrorClassType) return objCErrorType
val classSymbol = this.symbol as? KtClassOrObjectSymbol ?: return ObjCIdType
@@ -48,6 +49,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.translateToObjCObjectType(): ObjCNonNullReferenceType {
if (isObjCMetaClass()) return ObjCMetaClassType
if (isObjCProtocolClass()) return ObjCClassType("Protocol", extras = objCTypeExtras {
@@ -70,23 +72,27 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.isObjCMetaClass(): Boolean {
if (classId == objCClassClassId) return true
return getDeclaredSuperInterfaceSymbols().any { superInterfaceSymbol -> superInterfaceSymbol.isObjCMetaClass() }
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.isObjCProtocolClass(): Boolean {
if (classId == objCProtocolClassId) return true
return getDeclaredSuperInterfaceSymbols().any { superInterfaceSymbol -> superInterfaceSymbol.isObjCProtocolClass() }
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.isExternalObjCClass(): Boolean {
return NativeStandardInteropNames.externalObjCClassClassId in annotations
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun KtClassOrObjectSymbol.isObjCForwardDeclaration(): Boolean {
val classId = classId ?: return false
return when (NativeForwardDeclarationKind.packageFqNameToKind[classId.packageFqName]) {
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCParameters.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCParameters.kt
index 3266ae3..a0b5383 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCParameters.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCParameters.kt
@@ -10,6 +10,7 @@
import org.jetbrains.kotlin.name.StandardClassIds
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtFunctionLikeSymbol.translateToObjCParameters(baseMethodBridge: MethodBridge): List<ObjCParameter> {
fun unifyName(initialName: String, usedNames: Set<String>): String {
var unique = initialName.toValidObjCSwiftIdentifier()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProperty.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProperty.kt
index 17ad307..bec55a7 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProperty.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProperty.kt
@@ -17,6 +17,7 @@
import org.jetbrains.kotlin.utils.addIfNotNull
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtPropertySymbol.translateToObjCProperty(): ObjCProperty? {
if (!isVisibleInObjC()) return null
return buildProperty()
@@ -26,6 +27,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.buildProperty]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtPropertySymbol.buildProperty(): ObjCProperty {
val propertyName = getObjCPropertyName()
val name = propertyName.objCName
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProtocol.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProtocol.kt
index 6df816b..9e8bc98 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProtocol.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCProtocol.kt
@@ -17,6 +17,7 @@
import org.jetbrains.kotlin.objcexport.analysisApiUtils.isVisibleInObjC
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtClassOrObjectSymbol.translateToObjCProtocol(): ObjCProtocol? {
// TODO: check if this symbol shall be exposed in the first place
require(classKind == KtClassKind.INTERFACE)
@@ -43,6 +44,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtClassOrObjectSymbol.superProtocols(): List<String> {
return getDeclaredSuperInterfaceSymbols()
.filter { it.isVisibleInObjC() }
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCTopLevelFacade.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCTopLevelFacade.kt
index abfcae9..ab0dded 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCTopLevelFacade.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCTopLevelFacade.kt
@@ -46,6 +46,7 @@
* See related [translateToObjCExtensionFacades]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtResolvedObjCExportFile.translateToObjCTopLevelFacade(): ObjCInterface? {
val extensions = callableSymbols
.filter { !it.isExtension || it.isExtensionOfMappedObjCType }
@@ -70,5 +71,6 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtCallableSymbol.isExtensionOfMappedObjCType: Boolean
get() = isExtension && receiverParameter?.type?.isMappedObjCType == true
\ No newline at end of file
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCType.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCType.kt
index ad4b486..893c91d 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCType.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/translateToObjCType.kt
@@ -28,6 +28,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.mapType]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.translateToObjCType(typeBridge: TypeBridge): ObjCType {
return when (typeBridge) {
is ReferenceBridge -> this.translateToObjCReferenceType()
@@ -55,6 +56,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.mapReferenceType]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.translateToObjCReferenceType(): ObjCReferenceType {
return mapToReferenceTypeIgnoringNullability().withNullabilityOf(this)
}
@@ -63,6 +65,7 @@
* [org.jetbrains.kotlin.backend.konan.objcexport.ObjCExportTranslatorImpl.mapReferenceTypeIgnoringNullability]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.mapToReferenceTypeIgnoringNullability(): ObjCNonNullReferenceType {
val fullyExpandedType = fullyExpandedType
val classId = (fullyExpandedType as? KtNonErrorClassType)?.classId
@@ -149,6 +152,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private val KtNonErrorClassType.objCTypeName: String
get() {
return getClassOrObjectSymbolByClassId(classId)?.getObjCClassOrProtocolName()?.objCName
@@ -156,6 +160,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.translateTypeArgumentsToObjC(): List<ObjCNonNullReferenceType> {
if (this !is KtNonErrorClassType) return emptyList()
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/valueParametersAssociated.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/valueParametersAssociated.kt
index ca4e45e..7362edb 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/valueParametersAssociated.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/valueParametersAssociated.kt
@@ -14,6 +14,7 @@
* See K1 implementation [org.jetbrains.kotlin.backend.konan.objcexport.MethodBrideExtensionsKt.valueParametersAssociated]
*/
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun MethodBridge.valueParametersAssociated(
function: KtFunctionLikeSymbol,
): List<Pair<MethodBridgeValueParameter, KtObjCParameterData?>> {
@@ -51,6 +52,7 @@
}
context(KtAnalysisSession, KtObjCExportSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun MutableList<Pair<MethodBridgeValueParameter, KtObjCParameterData?>>.addReceiver(
parameters: List<MethodBridgeValueParameter>,
function: KtFunctionLikeSymbol,
@@ -107,6 +109,7 @@
* Also see [isObjCProperty]
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal val KtFunctionLikeSymbol.objCReceiverType: KtType?
get() {
return if (isConstructor) {
diff --git a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/withNullabilityOf.kt b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/withNullabilityOf.kt
index 4f88820..b37b78b 100644
--- a/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/withNullabilityOf.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/src/org/jetbrains/kotlin/objcexport/withNullabilityOf.kt
@@ -13,6 +13,7 @@
* So types could be marked with "_Nullable" in Objective-C
*/
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun ObjCNonNullReferenceType.withNullabilityOf(kotlinType: KtType): ObjCReferenceType {
return if (kotlinType.isBinaryRepresentationNullable()) {
ObjCNullableReferenceType(this)
@@ -22,6 +23,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal fun KtType.isBinaryRepresentationNullable(): Boolean {
/* Convention to match K1 implementation */
if (this is KtErrorType) return false
diff --git a/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/AnalysisApiAssertions.kt b/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/AnalysisApiAssertions.kt
index de46f9f..5b84c12 100644
--- a/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/AnalysisApiAssertions.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/AnalysisApiAssertions.kt
@@ -16,11 +16,13 @@
import kotlin.test.fail
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtFile.getClassOrFail(name: String): KtNamedClassOrObjectSymbol {
return getFileSymbol().getFileScope().getClassOrFail(name)
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtScope.getClassOrFail(name: String): KtNamedClassOrObjectSymbol {
val allSymbols = getClassifierSymbols(Name.identifier(name)).toList()
if (allSymbols.isEmpty()) fail("Missing class '$name'")
@@ -31,16 +33,19 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtFile.getFunctionOrFail(name: String): KtFunctionSymbol {
return getFileSymbol().getFileScope().getFunctionOrFail(name)
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtFile.getPropertyOrFail(name: String): KtPropertySymbol {
return getFileSymbol().getFileScope().getPropertyOrFail(name)
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtScope.getFunctionOrFail(name: String): KtFunctionSymbol {
val allSymbols = getCallableSymbols(Name.identifier(name)).toList()
if (allSymbols.isEmpty()) fail("Missing function '$name'")
@@ -51,6 +56,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtScope.getPropertyOrFail(name: String): KtPropertySymbol {
val allSymbols = getCallableSymbols(Name.identifier(name)).toList()
if (allSymbols.isEmpty()) fail("Missing property '$name'")
@@ -61,6 +67,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
fun KtClassOrObjectSymbol.getFunctionOrFail(name: String): KtFunctionSymbol {
return this.getMemberScope().getFunctionOrFail(name)
}
\ No newline at end of file
diff --git a/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/ObjCExportSessionUtil.kt b/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/ObjCExportSessionUtil.kt
index 9b261b9..fd8f214 100644
--- a/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/ObjCExportSessionUtil.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/testUtils/ObjCExportSessionUtil.kt
@@ -12,6 +12,7 @@
import org.jetbrains.kotlin.objcexport.withKtObjCExportSession
import org.jetbrains.kotlin.psi.KtElement
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
inline fun <T> analyzeWithObjCExport(
useSiteKtElement: KtElement,
configuration: KtObjCExportConfiguration = KtObjCExportConfiguration(),
diff --git a/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/tests/HasExportForCompilerAnnotationTest.kt b/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/tests/HasExportForCompilerAnnotationTest.kt
index e553e41..7b0fc28 100644
--- a/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/tests/HasExportForCompilerAnnotationTest.kt
+++ b/native/objcexport-header-generator/impl/analysis-api/test/org/jetbrains/kotlin/objcexport/tests/HasExportForCompilerAnnotationTest.kt
@@ -40,6 +40,7 @@
}
context(KtAnalysisSession)
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
private fun verifyHasExportForCompilerAnnotation(property: KtPropertySymbol): Boolean {
return property
.returnType
diff --git a/native/swift/sir-light-classes/src/org/jetbrains/sir/lightclasses/extensions/lazyWithSessions.kt b/native/swift/sir-light-classes/src/org/jetbrains/sir/lightclasses/extensions/lazyWithSessions.kt
index c3bb975..4c6ee96 100644
--- a/native/swift/sir-light-classes/src/org/jetbrains/sir/lightclasses/extensions/lazyWithSessions.kt
+++ b/native/swift/sir-light-classes/src/org/jetbrains/sir/lightclasses/extensions/lazyWithSessions.kt
@@ -11,6 +11,7 @@
import org.jetbrains.kotlin.sir.providers.SirSession
import org.jetbrains.sir.lightclasses.SirFromKtSymbol
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal inline fun <reified S : KaDeclarationSymbol, reified R> SirFromKtSymbol<S>.lazyWithSessions(
crossinline block: context(SirSession, KaSession) () -> R
): Lazy<R> {
@@ -19,6 +20,7 @@
}
}
+@Suppress("CONTEXT_RECEIVERS_DEPRECATED")
internal inline fun <reified S : KaDeclarationSymbol, reified R> SirFromKtSymbol<S>.withSessions(
crossinline block: context(SirSession, KaSession) () -> R,
): R {