Rename: KonanPlatform, KonanPlatforms -> NativePlatform, NativePlatforms

This commit is contained in:
Dmitriy Dolovov
2020-03-26 13:21:41 +07:00
parent dfbbae3991
commit 9bbfe9c1ac
20 changed files with 69 additions and 71 deletions
@@ -5,12 +5,12 @@
package org.jetbrains.kotlin.platform
import org.jetbrains.kotlin.platform.js.JsPlatforms
import org.jetbrains.kotlin.platform.js.JsPlatforms.allJsPlatforms
import org.jetbrains.kotlin.platform.js.JsPlatforms.defaultJsPlatform
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms.allJvmPlatforms
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms.unspecifiedJvmPlatform
import org.jetbrains.kotlin.platform.konan.KonanPlatforms
import org.jetbrains.kotlin.platform.konan.KonanPlatforms.defaultKonanPlatform
import org.jetbrains.kotlin.platform.konan.NativePlatforms.allNativePlatforms
import org.jetbrains.kotlin.platform.konan.NativePlatforms.defaultNativePlatform
@Suppress("DEPRECATION_ERROR")
object CommonPlatforms {
@@ -23,7 +23,7 @@ object CommonPlatforms {
setOf(
unspecifiedJvmPlatform.single(),
defaultJsPlatform.single(),
defaultKonanPlatform.single()
defaultNativePlatform.single()
)
), org.jetbrains.kotlin.analyzer.common.CommonPlatform {
override val platformName: String
@@ -36,9 +36,9 @@ object CommonPlatforms {
val allSimplePlatforms: List<TargetPlatform>
// TODO(auskov): migrate to SimplePlatform?
get() = sequence {
yieldAll(JvmPlatforms.allJvmPlatforms)
yieldAll(KonanPlatforms.allKonanPlatforms)
yieldAll(JsPlatforms.allJsPlatforms)
yieldAll(allJvmPlatforms)
yieldAll(allNativePlatforms)
yieldAll(allJsPlatforms)
// TODO(dsavvinov): extensions points?
}.toList()
@@ -7,32 +7,31 @@ package org.jetbrains.kotlin.platform.konan
import org.jetbrains.kotlin.platform.SimplePlatform
import org.jetbrains.kotlin.platform.TargetPlatform
import org.jetbrains.kotlin.platform.toTargetPlatform
abstract class KonanPlatform : SimplePlatform("Native") {
abstract class NativePlatform : SimplePlatform("Native") {
override val oldFashionedDescription: String
get() = "Native "
}
@Suppress("DEPRECATION_ERROR")
object KonanPlatforms {
private object DefaultSimpleKonanPlatform : KonanPlatform()
object NativePlatforms {
private object DefaultSimpleNativePlatform : NativePlatform()
@Deprecated(
message = "Should be accessed only by compatibility layer, other clients should use 'defaultKonanPlatform'",
message = "Should be accessed only by compatibility layer, other clients should use 'defaultNativePlatform'",
level = DeprecationLevel.ERROR
)
object CompatKonanPlatform : TargetPlatform(setOf(DefaultSimpleKonanPlatform)),
object CompatNativePlatform : TargetPlatform(setOf(DefaultSimpleNativePlatform)),
// Needed for backward compatibility, because old code uses INSTANCEOF checks instead of calling extensions
org.jetbrains.kotlin.resolve.konan.platform.KonanPlatform {
override val platformName: String
get() = "Native"
}
val defaultKonanPlatform: TargetPlatform
get() = CompatKonanPlatform
val defaultNativePlatform: TargetPlatform
get() = CompatNativePlatform
val allKonanPlatforms: List<TargetPlatform> = listOf(defaultKonanPlatform)
val allNativePlatforms: List<TargetPlatform> = listOf(defaultNativePlatform)
}
fun TargetPlatform?.isNative(): Boolean = this?.singleOrNull() is KonanPlatform
fun TargetPlatform?.isNative(): Boolean = this?.singleOrNull() is NativePlatform
@@ -7,17 +7,17 @@
package org.jetbrains.kotlin.resolve.konan.platform
import org.jetbrains.kotlin.platform.konan.KonanPlatforms
import org.jetbrains.kotlin.platform.konan.NativePlatforms
import org.jetbrains.kotlin.resolve.TargetPlatform
@Deprecated(
message = "This class is deprecated and will be removed soon, use API from 'org.jetbrains.kotlin.platform.*' packages instead",
replaceWith = ReplaceWith("KonanPlatforms.defaultKonanPlatform", "org.jetbrains.kotlin.platform.konan.KonanPlatforms"),
replaceWith = ReplaceWith("NativePlatforms.defaultNativePlatform", "org.jetbrains.kotlin.platform.konan.NativePlatforms"),
level = DeprecationLevel.ERROR
)
interface KonanPlatform : TargetPlatform {
companion object {
@JvmField
val INSTANCE: KonanPlatform = KonanPlatforms.CompatKonanPlatform
val INSTANCE: KonanPlatform = NativePlatforms.CompatNativePlatform
}
}
@@ -17,7 +17,7 @@ import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl
import org.jetbrains.kotlin.frontend.di.configureModule
import org.jetbrains.kotlin.frontend.di.configureStandardResolveComponents
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.platform.konan.KonanPlatforms
import org.jetbrains.kotlin.platform.konan.NativePlatforms
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.resolve.*
import org.jetbrains.kotlin.resolve.konan.platform.NativePlatformAnalyzerServices
@@ -93,7 +93,7 @@ private fun createFakeTopDownAnalyzerForNative(
): LazyTopDownAnalyzer = createContainer("FakeTopDownAnalyzerForNative", NativePlatformAnalyzerServices) {
configureModule(
moduleContext,
KonanPlatforms.defaultKonanPlatform,
NativePlatforms.defaultNativePlatform,
NativePlatformAnalyzerServices,
bindingTrace,
languageVersionSettings
@@ -46,7 +46,7 @@ import org.jetbrains.kotlin.platform.CommonPlatforms
import org.jetbrains.kotlin.platform.TargetPlatform
import org.jetbrains.kotlin.platform.js.JsPlatforms
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
import org.jetbrains.kotlin.platform.konan.KonanPlatforms
import org.jetbrains.kotlin.platform.konan.NativePlatforms
import org.jetbrains.kotlin.psi.KtDeclaration
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.resolve.BindingContext
@@ -506,7 +506,7 @@ abstract class BaseDiagnosticsTest : KotlinMultiFileTestWithJava<TestModule, Tes
nameSuffix == "COMMON" -> CommonPlatforms.defaultCommonPlatform
nameSuffix == "JVM" -> JvmPlatforms.unspecifiedJvmPlatform // TODO(dsavvinov): determine JvmTarget precisely
nameSuffix == "JS" -> JsPlatforms.defaultJsPlatform
nameSuffix == "NATIVE" -> KonanPlatforms.defaultKonanPlatform
nameSuffix == "NATIVE" -> NativePlatforms.defaultNativePlatform
nameSuffix.isEmpty() -> null // TODO(dsavvinov): this leads to 'null'-platform in ModuleDescriptor
else -> throw IllegalStateException("Can't determine platform by name $nameSuffix")
}
@@ -11,7 +11,7 @@ import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl
import org.jetbrains.kotlin.descriptors.konan.*
import org.jetbrains.kotlin.descriptors.konan.isInteropLibrary
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.platform.konan.KonanPlatforms
import org.jetbrains.kotlin.platform.konan.NativePlatforms
import org.jetbrains.kotlin.resolve.ImplicitIntegerCoercion
import org.jetbrains.kotlin.storage.StorageManager
@@ -31,7 +31,7 @@ internal class KlibModuleDescriptorFactoryImpl(val createBuiltIns: (StorageManag
KlibModuleOrigin.CAPABILITY to origin,
ImplicitIntegerCoercion.MODULE_CAPABILITY to origin.isInteropLibrary()
),
platform = KonanPlatforms.defaultKonanPlatform
platform = NativePlatforms.defaultNativePlatform
)
override fun createDescriptorAndNewBuiltIns(