Remove declarations already contained in kotlin-compiler.jar

This commit is contained in:
Dmitriy Dolovov
2020-03-26 19:51:48 +07:00
committed by Dmitriy Dolovov
parent 3334b9b3ad
commit 3a1e33c27b
7 changed files with 5 additions and 82 deletions
@@ -1,19 +0,0 @@
package org.jetbrains.kotlin.builtins.konan
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
import org.jetbrains.kotlin.descriptors.findClassAcrossModuleDependencies
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.resolve.DescriptorUtils.COROUTINES_PACKAGE_FQ_NAME_RELEASE
import org.jetbrains.kotlin.storage.StorageManager
class KonanBuiltIns(storageManager: StorageManager) : KotlinBuiltIns(storageManager) {
override fun getSuspendFunction(parameterCount: Int) =
builtInsModule.findClassAcrossModuleDependencies(
ClassId(
COROUTINES_PACKAGE_FQ_NAME_RELEASE,
Name.identifier("SuspendFunction$parameterCount")
)
)!!
}
@@ -4,7 +4,7 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor
import org.jetbrains.kotlin.konan.library.KONAN_STDLIB_NAME
import org.jetbrains.kotlin.name.Name
//TODO: this is should be reverted!!!
private val STDLIB_MODULE_NAME = Name.special("<stdlib>")
private val STDLIB_MODULE_NAME = Name.special("<$KONAN_STDLIB_NAME>")
// TODO: consider using ModuleDescriptorImpl.isStdlibModule instead
fun ModuleDescriptor.isKonanStdlib() = name == STDLIB_MODULE_NAME
@@ -4,10 +4,8 @@ import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns
import org.jetbrains.kotlin.konan.util.KlibMetadataFactories
import org.jetbrains.kotlin.library.metadata.NativeTypeTransformer
import org.jetbrains.kotlin.library.metadata.NullFlexibleTypeDeserializer
import org.jetbrains.kotlin.storage.StorageManager
fun createKonanBuiltIns(storageManager: StorageManager) = KonanBuiltIns(storageManager)
/**
* The default Kotlin/Native factories.
*/
object KonanFactories : KlibMetadataFactories(::createKonanBuiltIns, NullFlexibleTypeDeserializer, NativeTypeTransformer())
object KonanFactories : KlibMetadataFactories({ KonanBuiltIns(it) }, NullFlexibleTypeDeserializer, NativeTypeTransformer())
@@ -1,29 +0,0 @@
package org.jetbrains.kotlin.resolve.konan.platform
import org.jetbrains.kotlin.container.StorageComponentContainer
import org.jetbrains.kotlin.container.useInstance
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
import org.jetbrains.kotlin.psi.KtCallableDeclaration
import org.jetbrains.kotlin.resolve.BindingContext
import org.jetbrains.kotlin.resolve.ModuleStructureOracle
import org.jetbrains.kotlin.resolve.PlatformConfiguratorBase
import org.jetbrains.kotlin.resolve.checkers.ExpectedActualDeclarationChecker
import org.jetbrains.kotlin.resolve.inline.ReasonableInlineRule
import org.jetbrains.kotlin.resolve.jvm.checkers.SuperCallWithDefaultArgumentsChecker
object KonanPlatformConfigurator : PlatformConfiguratorBase(
additionalDeclarationCheckers = listOf(ExpectedActualDeclarationChecker(ModuleStructureOracle.SingleModule, emptyList())),
additionalCallCheckers = listOf(SuperCallWithDefaultArgumentsChecker())
) {
override fun configureModuleComponents(container: StorageComponentContainer) {
container.useInstance(NativeInliningRule)
}
}
object NativeInliningRule : ReasonableInlineRule {
override fun isInlineReasonable(
descriptor: CallableMemberDescriptor,
declaration: KtCallableDeclaration,
context: BindingContext
): Boolean = true
}
@@ -1,25 +0,0 @@
/*
* Copyright 2010-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.resolve.konan.platform
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.resolve.ImportPath
import org.jetbrains.kotlin.resolve.PlatformConfigurator
import org.jetbrains.kotlin.resolve.PlatformDependentAnalyzerServices
import org.jetbrains.kotlin.storage.StorageManager
object NativePlatformAnalyzerServices : PlatformDependentAnalyzerServices() {
override fun computePlatformSpecificDefaultImports(storageManager: StorageManager, result: MutableList<ImportPath>) {
result.add(ImportPath.fromString("kotlin.native.*"))
}
override val platformConfigurator: PlatformConfigurator = KonanPlatformConfigurator
override val excludedImports: List<FqName> =
listOf("identityHashCode").map {
FqName("kotlin.native.$it")
}
}
@@ -18,8 +18,8 @@ import org.jetbrains.kotlin.konan.target.PlatformManager
import org.jetbrains.kotlin.konan.util.DependencyProcessor
import org.jetbrains.kotlin.library.unpackZippedKonanLibraryTo
import org.jetbrains.kotlin.konan.util.KlibMetadataFactories
import org.jetbrains.kotlin.konan.utils.createKonanBuiltIns
import org.jetbrains.kotlin.backend.common.serialization.metadata.DynamicTypeDeserializer
import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns
import org.jetbrains.kotlin.descriptors.deserialization.PlatformDependentTypeTransformer
import org.jetbrains.kotlin.util.Logger
import org.jetbrains.kotlin.library.metadata.KlibMetadataProtoBuf
@@ -30,7 +30,7 @@ import org.jetbrains.kotlin.storage.LockBasedStorageManager
import java.lang.System.out
import kotlin.system.exitProcess
object KlibFactories : KlibMetadataFactories(::createKonanBuiltIns, DynamicTypeDeserializer, PlatformDependentTypeTransformer.None)
object KlibFactories : KlibMetadataFactories(::KonanBuiltIns, DynamicTypeDeserializer, PlatformDependentTypeTransformer.None)
fun printUsage() {
println("Usage: klib <command> <library> <options>")
@@ -11,8 +11,6 @@ import org.jetbrains.kotlin.library.impl.createKotlinLibrary
import org.jetbrains.kotlin.util.DummyLogger
import org.jetbrains.kotlin.util.Logger
const val KONAN_STDLIB_NAME = "stdlib"
interface SearchPathResolverWithTarget<L: KotlinLibrary>: SearchPathResolverWithAttributes<L> {
val target: KonanTarget
}