From bfe062383703dc7ac694db5e4331486211cb1d61 Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Fri, 5 Mar 2021 00:28:31 +0300 Subject: [PATCH] [Commonizer] Drop CirModuleFactory --- .../kotlin/descriptors/commonizer/cir/CirModule.kt | 11 ++++++++++- .../commonizer/cir/factory/CirModuleFactory.kt | 13 ------------- .../commonizer/cir/impl/CirModuleImpl.kt | 13 ------------- .../descriptors/commonizer/core/ModuleCommonizer.kt | 3 +-- .../commonizer/mergedtree/CirTreeMerger.kt | 7 ++----- 5 files changed, 13 insertions(+), 34 deletions(-) delete mode 100644 native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/factory/CirModuleFactory.kt delete mode 100644 native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/impl/CirModuleImpl.kt diff --git a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/CirModule.kt b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/CirModule.kt index 8a04f1133c5..712432f8ead 100644 --- a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/CirModule.kt +++ b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/CirModule.kt @@ -5,4 +5,13 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir -interface CirModule : CirDeclaration, CirHasName +interface CirModule : CirDeclaration, CirHasName { + companion object { + @Suppress("NOTHING_TO_INLINE") + inline fun create(name: CirName): CirModule = CirModuleImpl(name) + } +} + +data class CirModuleImpl( + override val name: CirName +) : CirModule diff --git a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/factory/CirModuleFactory.kt b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/factory/CirModuleFactory.kt deleted file mode 100644 index 9f1071b08d3..00000000000 --- a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/factory/CirModuleFactory.kt +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. - * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. - */ - -package org.jetbrains.kotlin.descriptors.commonizer.cir.factory - -import org.jetbrains.kotlin.descriptors.commonizer.cir.CirName -import org.jetbrains.kotlin.descriptors.commonizer.cir.impl.CirModuleImpl - -object CirModuleFactory { - fun create(name: CirName) = CirModuleImpl(name) -} diff --git a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/impl/CirModuleImpl.kt b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/impl/CirModuleImpl.kt deleted file mode 100644 index 7ee8706f4b3..00000000000 --- a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/cir/impl/CirModuleImpl.kt +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. - * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. - */ - -package org.jetbrains.kotlin.descriptors.commonizer.cir.impl - -import org.jetbrains.kotlin.descriptors.commonizer.cir.CirModule -import org.jetbrains.kotlin.descriptors.commonizer.cir.CirName - -data class CirModuleImpl( - override val name: CirName -) : CirModule diff --git a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/core/ModuleCommonizer.kt b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/core/ModuleCommonizer.kt index 636c557c36e..5e81aef357f 100644 --- a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/core/ModuleCommonizer.kt +++ b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/core/ModuleCommonizer.kt @@ -7,12 +7,11 @@ package org.jetbrains.kotlin.descriptors.commonizer.core import org.jetbrains.kotlin.descriptors.commonizer.cir.CirModule import org.jetbrains.kotlin.descriptors.commonizer.cir.CirName -import org.jetbrains.kotlin.descriptors.commonizer.cir.factory.CirModuleFactory class ModuleCommonizer : AbstractStandardCommonizer() { private lateinit var name: CirName - override fun commonizationResult() = CirModuleFactory.create(name = name) + override fun commonizationResult() = CirModule.create(name = name) override fun initialize(first: CirModule) { name = first.name diff --git a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/mergedtree/CirTreeMerger.kt b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/mergedtree/CirTreeMerger.kt index fde56654215..e6c42f2f85a 100644 --- a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/mergedtree/CirTreeMerger.kt +++ b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/mergedtree/CirTreeMerger.kt @@ -14,10 +14,7 @@ import org.jetbrains.kotlin.descriptors.commonizer.CommonizerParameters import org.jetbrains.kotlin.descriptors.commonizer.LeafCommonizerTarget import org.jetbrains.kotlin.descriptors.commonizer.ModulesProvider.ModuleInfo import org.jetbrains.kotlin.descriptors.commonizer.TargetProvider -import org.jetbrains.kotlin.descriptors.commonizer.cir.CirEntityId -import org.jetbrains.kotlin.descriptors.commonizer.cir.CirName -import org.jetbrains.kotlin.descriptors.commonizer.cir.CirPackageName -import org.jetbrains.kotlin.descriptors.commonizer.cir.CirRoot +import org.jetbrains.kotlin.descriptors.commonizer.cir.* import org.jetbrains.kotlin.descriptors.commonizer.cir.factory.* import org.jetbrains.kotlin.descriptors.commonizer.mergedtree.ClassesToProcess.ClassEntry import org.jetbrains.kotlin.descriptors.commonizer.metadata.utils.SerializedMetadataLibraryProvider @@ -149,7 +146,7 @@ class CirTreeMerger( val moduleNode: CirModuleNode = rootNode.modules.getOrPut(moduleName) { buildModuleNode(storageManager, leafTargetsSize) } - moduleNode.targetDeclarations[context.targetIndex] = CirModuleFactory.create(moduleName) + moduleNode.targetDeclarations[context.targetIndex] = CirModule.create(moduleName) val groupedFragments: Map> = module.fragments.foldToMap { fragment -> fragment.fqName?.let(CirPackageName::create) ?: error("A fragment without FQ name in module $moduleName: $fragment")