Change kotlinx- to kotlin- in kotlin-metadata-jvm and related projects

Change package, artifact group, artifact name, and Gradle module name to
kotlin-metadata and kotlin-metadata-jvm, respectively.

In Kotlin 2.0, kotlin-metadata-jvm library is promoted to stable, and is
a part of Kotlin distribution now.

Note that kotlinx-metadata-klib is left with org.jetbrains.kotlinx group, artifact name and package
because -klib part is considered not stable and for internal use. Since it is still published via Sonatype,
it should have kotlinx group. Therefore, it will have both classes from kotlin.metadata and kotlinx.metadata packages. This is not a problem, because we already had kotlinx.metadata split package between -jvm and -klib before.

#KT-63219 Fixed
This commit is contained in:
Leonid Startsev
2023-11-29 17:48:43 +01:00
committed by Space Team
parent c78d3edd24
commit 09e89db82f
138 changed files with 2070 additions and 2049 deletions
+1 -1
View File
@@ -722,7 +722,7 @@ tasks {
(coreLibProjects + listOfNotNull( (coreLibProjects + listOfNotNull(
":kotlin-stdlib:samples", ":kotlin-stdlib:samples",
":kotlin-test:kotlin-test-js-it".takeIf { !kotlinBuildProperties.isInJpsBuildIdeaSync }, ":kotlin-test:kotlin-test-js-it".takeIf { !kotlinBuildProperties.isInJpsBuildIdeaSync },
":kotlinx-metadata-jvm", ":kotlin-metadata-jvm",
":tools:binary-compatibility-validator", ":tools:binary-compatibility-validator",
":tools:jdk-api-validator", ":tools:jdk-api-validator",
)).forEach { )).forEach {
@@ -4,9 +4,11 @@
*/ */
package org.jetbrains.kotlin.native.interop.gen package org.jetbrains.kotlin.native.interop.gen
import kotlinx.metadata.* import kotlinx.metadata.klib.KlibEnumEntry
import kotlinx.metadata.klib.KlibModuleMetadata
import kotlin.metadata.*
import kotlinx.metadata.klib.* import kotlinx.metadata.klib.*
import kotlinx.metadata.internal.common.* import kotlin.metadata.internal.common.*
import org.jetbrains.kotlin.metadata.serialization.Interner import org.jetbrains.kotlin.metadata.serialization.Interner
import org.jetbrains.kotlin.utils.addIfNotNull import org.jetbrains.kotlin.utils.addIfNotNull
@@ -4,8 +4,8 @@
*/ */
package org.jetbrains.kotlin.native.interop.gen.jvm package org.jetbrains.kotlin.native.interop.gen.jvm
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragment import kotlin.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.klib.KlibModuleFragmentWriteStrategy import kotlinx.metadata.klib.KlibModuleFragmentWriteStrategy
import kotlinx.metadata.klib.KlibModuleMetadata import kotlinx.metadata.klib.KlibModuleMetadata
import kotlinx.metadata.klib.className import kotlinx.metadata.klib.className
@@ -24,17 +24,17 @@ import org.jetbrains.kotlin.library.metadata.KlibMetadataVersion
import java.util.* import java.util.*
fun createInteropLibrary( fun createInteropLibrary(
metadata: KlibModuleMetadata, metadata: KlibModuleMetadata,
outputPath: String, outputPath: String,
moduleName: String, moduleName: String,
libraryVersion: String, libraryVersion: String,
nativeBitcodeFiles: List<String>, nativeBitcodeFiles: List<String>,
target: KonanTarget, target: KonanTarget,
manifest: Properties, manifest: Properties,
dependencies: List<KotlinLibrary>, dependencies: List<KotlinLibrary>,
nopack: Boolean, nopack: Boolean,
shortName: String?, shortName: String?,
staticLibraries: List<String> staticLibraries: List<String>
) { ) {
val version = KotlinLibraryVersioning( val version = KotlinLibraryVersioning(
libraryVersion = libraryVersion, libraryVersion = libraryVersion,
@@ -1,8 +1,8 @@
package org.jetbrains.kotlin.native.interop.gen package org.jetbrains.kotlin.native.interop.gen
import kotlinx.metadata.KmAnnotationArgument import kotlin.metadata.KmAnnotationArgument
import kotlinx.metadata.KmClassifier import kotlin.metadata.KmClassifier
import kotlinx.metadata.internal.common.KmModuleFragment import kotlin.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.klib.compileTimeValue import kotlinx.metadata.klib.compileTimeValue
import org.jetbrains.kotlin.native.interop.indexer.FunctionDecl import org.jetbrains.kotlin.native.interop.indexer.FunctionDecl
import org.jetbrains.kotlin.native.interop.indexer.IntegerConstantDef import org.jetbrains.kotlin.native.interop.indexer.IntegerConstantDef
@@ -18,4 +18,7 @@ dependencies {
kotlin { kotlin {
explicitApi() explicitApi()
compilerOptions {
freeCompilerArgs.add("-Xallow-kotlin-package")
}
} }
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+15 -12
View File
@@ -11,16 +11,16 @@ plugins {
} }
/* /*
* To publish this library use `:kotlinx-metadata-jvm:publish` task and specify the following parameters * To publish this library use `:kotlin-metadata-jvm:publish` task and specify the following parameters
* *
* - `-PdeployVersion=1.2.nn`: the version of the standard library dependency to put into .pom * - `-PdeployVersion=1.2.nn`: the version of the standard library dependency to put into .pom
* - `-PkotlinxMetadataDeployVersion=0.0.n`: the version of the library itself * - `-PkotlinxMetadataDeployVersion=0.0.n`: the version of the library itself
* - `-PdeployRepoUrl=repository_url`: (optional) the url of repository to deploy to; * - `-Pdeploy-url=repository_url`: (optional) the url of repository to deploy to;
* if not specified, the local directory repository `build/repo` will be used * if not specified, the local directory repository `build/repo` will be used
* - `-PdeployRepoUsername=username`: (optional) the username to authenticate in the deployment repository * - `-Pkotlin.build.deploy-username=username`: (optional) the username to authenticate in the deployment repository
* - `-PdeployRepoPassword=password`: (optional) the password to authenticate in the deployment repository * - `-Pkotlin.build.deploy-password=password`: (optional) the password to authenticate in the deployment repository
*/ */
group = "org.jetbrains.kotlinx" group = "org.jetbrains.kotlin"
val deployVersion = findProperty("kotlinxMetadataDeployVersion") as String? val deployVersion = findProperty("kotlinxMetadataDeployVersion") as String?
version = deployVersion ?: "0.1-SNAPSHOT" version = deployVersion ?: "0.1-SNAPSHOT"
@@ -40,7 +40,7 @@ configurations.getByName("testApi").extendsFrom(embedded)
dependencies { dependencies {
api(kotlinStdlib()) api(kotlinStdlib())
embedded(project(":kotlinx-metadata")) embedded(project(":kotlin-metadata"))
embedded(project(":core:metadata")) embedded(project(":core:metadata"))
embedded(project(":core:metadata.jvm")) embedded(project(":core:metadata.jvm"))
embedded(protobufLite()) embedded(protobufLite())
@@ -52,6 +52,9 @@ dependencies {
kotlin { kotlin {
explicitApi() explicitApi()
compilerOptions {
freeCompilerArgs.add("-Xallow-kotlin-package")
}
} }
if (deployVersion != null) { if (deployVersion != null) {
@@ -61,7 +64,7 @@ if (deployVersion != null) {
val runtimeJar = runtimeJarWithRelocation { val runtimeJar = runtimeJarWithRelocation {
from(mainSourceSet.output) from(mainSourceSet.output)
exclude("**/*.proto") exclude("**/*.proto")
relocate("org.jetbrains.kotlin", "kotlinx.metadata.internal") relocate("org.jetbrains.kotlin", "kotlin.metadata.internal")
} }
tasks.apiBuild { tasks.apiBuild {
@@ -69,11 +72,11 @@ tasks.apiBuild {
} }
apiValidation { apiValidation {
ignoredPackages.add("kotlinx.metadata.internal") ignoredPackages.add("kotlin.metadata.internal")
nonPublicMarkers.addAll( nonPublicMarkers.addAll(
listOf( listOf(
"kotlinx.metadata.internal.IgnoreInApiDump", "kotlin.metadata.internal.IgnoreInApiDump",
"kotlinx.metadata.jvm.internal.IgnoreInApiDump" "kotlin.metadata.jvm.internal.IgnoreInApiDump"
) )
) )
} }
@@ -90,14 +93,14 @@ tasks.dokkaHtml.configure {
dokkaSourceSets.configureEach { dokkaSourceSets.configureEach {
includes.from(project.file("dokka/moduledoc.md").path) includes.from(project.file("dokka/moduledoc.md").path)
sourceRoots.from(project(":kotlinx-metadata").getSources()) sourceRoots.from(project(":kotlin-metadata").getSources())
skipDeprecated.set(true) skipDeprecated.set(true)
reportUndocumented.set(true) reportUndocumented.set(true)
failOnWarning.set(true) failOnWarning.set(true)
perPackageOption { perPackageOption {
matchingRegex.set("kotlinx\\.metadata\\.internal(\$|\\.).*") matchingRegex.set("kotlin\\.metadata\\.internal(\$|\\.).*")
suppress.set(true) suppress.set(true)
reportUndocumented.set(false) reportUndocumented.set(false)
} }
@@ -0,0 +1 @@
kotlin.metadata.jvm.internal.JvmMetadataExtensions
@@ -1 +0,0 @@
kotlinx.metadata.jvm.internal.JvmMetadataExtensions
@@ -6,12 +6,10 @@
@file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually @file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually
@file:JvmName("JvmAttributes") @file:JvmName("JvmAttributes")
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import kotlinx.metadata.KmClass import kotlin.metadata.*
import kotlinx.metadata.KmProperty import kotlin.metadata.internal.*
import kotlinx.metadata.internal.BooleanFlagDelegate
import kotlinx.metadata.internal.FlagImpl
import org.jetbrains.kotlin.metadata.deserialization.Flags import org.jetbrains.kotlin.metadata.deserialization.Flags
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmFlags as JF import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmFlags as JF
@@ -1,12 +1,12 @@
/* /*
* Copyright 2010-2018 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") // delegate implementation @file:Suppress("DEPRECATION_ERROR") // delegate implementation
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import kotlinx.metadata.* import kotlin.metadata.*
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil
/** /**
@@ -1,15 +1,15 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("unused") @file:Suppress("unused")
@file:JvmName("JvmExtensionsKt") // for stability. Probably we should drop Kt ending for easier calls from Java @file:JvmName("JvmExtensionsKt") // for stability. Probably we should drop Kt ending for easier calls from Java
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.jvm.internal.jvm import kotlin.metadata.jvm.internal.jvm
/** /**
* Metadata of local delegated properties used somewhere inside this class (but not in a nested class). * Metadata of local delegated properties used somewhere inside this class (but not in a nested class).
@@ -1,13 +1,13 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") @file:Suppress("DEPRECATION_ERROR")
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import kotlinx.metadata.Flag import kotlin.metadata.Flag
import org.jetbrains.kotlin.metadata.deserialization.Flags as F import org.jetbrains.kotlin.metadata.deserialization.Flags as F
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmFlags as JF import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmFlags as JF
@@ -3,7 +3,7 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMemberSignature as JvmMemberSignatureImpl import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMemberSignature as JvmMemberSignatureImpl
@@ -5,10 +5,10 @@
@file:JvmName("JvmMetadataUtil") @file:JvmName("JvmMetadataUtil")
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import kotlinx.metadata.ClassName import kotlin.metadata.ClassName
import kotlinx.metadata.isLocalClassName import kotlin.metadata.isLocalClassName
/** /**
* Converts [this] to a JVM internal name of the class, where package names are separated by '/', and class names are separated by '$', * Converts [this] to a JVM internal name of the class, where package names are separated by '/', and class names are separated by '$',
@@ -3,7 +3,7 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion
@@ -1,9 +1,9 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm; package kotlin.metadata.jvm;
import kotlin.DeprecationLevel; import kotlin.DeprecationLevel;
import kotlin.Metadata; import kotlin.Metadata;
@@ -8,12 +8,12 @@
"UNUSED_PARAMETER" // For deprecated Writer.write "UNUSED_PARAMETER" // For deprecated Writer.write
) )
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.* import kotlin.metadata.internal.*
import kotlinx.metadata.jvm.internal.* import kotlin.metadata.jvm.internal.*
import kotlinx.metadata.jvm.internal.JvmReadUtils.readMetadataImpl import kotlin.metadata.jvm.internal.JvmReadUtils.readMetadataImpl
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion
import org.jetbrains.kotlin.metadata.jvm.serialization.JvmStringTable import org.jetbrains.kotlin.metadata.jvm.serialization.JvmStringTable
import java.util.* import java.util.*
@@ -9,14 +9,14 @@
"UNUSED_PARAMETER" // For deprecated Writer.write "UNUSED_PARAMETER" // For deprecated Writer.write
) )
package kotlinx.metadata.jvm package kotlin.metadata.jvm
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.jvm.KotlinClassMetadata.Companion.COMPATIBLE_METADATA_VERSION import kotlin.metadata.jvm.KotlinClassMetadata.Companion.COMPATIBLE_METADATA_VERSION
import kotlinx.metadata.jvm.internal.JvmReadUtils.readModuleMetadataImpl import kotlin.metadata.jvm.internal.JvmReadUtils.readModuleMetadataImpl
import kotlinx.metadata.jvm.internal.JvmReadUtils.throwIfNotCompatible import kotlin.metadata.jvm.internal.JvmReadUtils.throwIfNotCompatible
import kotlinx.metadata.jvm.internal.wrapIntoMetadataExceptionWhenNeeded import kotlin.metadata.jvm.internal.wrapIntoMetadataExceptionWhenNeeded
import kotlinx.metadata.jvm.internal.wrapWriteIntoIAE import kotlin.metadata.jvm.internal.wrapWriteIntoIAE
import org.jetbrains.kotlin.metadata.jvm.JvmModuleProtoBuf import org.jetbrains.kotlin.metadata.jvm.JvmModuleProtoBuf
import org.jetbrains.kotlin.metadata.jvm.deserialization.ModuleMapping import org.jetbrains.kotlin.metadata.jvm.deserialization.ModuleMapping
import org.jetbrains.kotlin.metadata.jvm.deserialization.PackageParts import org.jetbrains.kotlin.metadata.jvm.deserialization.PackageParts
@@ -3,7 +3,7 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm package kotlin.metadata.jvm
/** /**
* Marks an API that is still in development and not feature-complete or finalized. * Marks an API that is still in development and not feature-complete or finalized.
@@ -1,9 +1,9 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm.internal package kotlin.metadata.jvm.internal
/** /**
* Workaround for https://github.com/Kotlin/binary-compatibility-validator/issues/104: * Workaround for https://github.com/Kotlin/binary-compatibility-validator/issues/104:
@@ -4,9 +4,9 @@
*/ */
@file:Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") // InconsistentKotlinMetadataException @file:Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") // InconsistentKotlinMetadataException
package kotlinx.metadata.jvm.internal package kotlin.metadata.jvm.internal
import kotlinx.metadata.InconsistentKotlinMetadataException import kotlin.metadata.InconsistentKotlinMetadataException
internal fun Metadata.requireNotEmpty(): Array<String> = data1.takeIf(Array<*>::isNotEmpty) internal fun Metadata.requireNotEmpty(): Array<String> = data1.takeIf(Array<*>::isNotEmpty)
?: throw InconsistentKotlinMetadataException("Metadata is missing: kotlin.Metadata.data1 must not be an empty array") ?: throw InconsistentKotlinMetadataException("Metadata is missing: kotlin.Metadata.data1 must not be an empty array")
@@ -1,14 +1,14 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION","DEPRECATION_ERROR") // inheritance of deprecated visitors will be removed with visitors @file:Suppress("DEPRECATION","DEPRECATION_ERROR") // inheritance of deprecated visitors will be removed with visitors
package kotlinx.metadata.jvm.internal package kotlin.metadata.jvm.internal
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.extensions.* import kotlin.metadata.internal.extensions.*
import kotlinx.metadata.jvm.* import kotlin.metadata.jvm.*
internal val KmClass.jvm: JvmClassExtension internal val KmClass.jvm: JvmClassExtension
get() = visitExtensions(JvmClassExtensionVisitor.TYPE) as JvmClassExtension get() = visitExtensions(JvmClassExtensionVisitor.TYPE) as JvmClassExtension
@@ -3,17 +3,20 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm.internal package kotlin.metadata.jvm.internal
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.* import kotlin.metadata.internal.*
import kotlinx.metadata.internal.common.* import kotlin.metadata.internal.common.*
import kotlinx.metadata.internal.extensions.* import kotlin.metadata.internal.extensions.*
import kotlinx.metadata.jvm.* import kotlin.metadata.jvm.*
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import org.jetbrains.kotlin.metadata.deserialization.getExtensionOrNull import org.jetbrains.kotlin.metadata.deserialization.getExtensionOrNull
import org.jetbrains.kotlin.metadata.jvm.JvmProtoBuf import org.jetbrains.kotlin.metadata.jvm.JvmProtoBuf
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil
import kotlin.metadata.jvm.JvmMemberSignature
import kotlin.metadata.jvm.JvmMethodSignature
import kotlin.metadata.jvm.wrapAsPublic
internal class JvmMetadataExtensions : MetadataExtensions { internal class JvmMetadataExtensions : MetadataExtensions {
override fun readClassExtensions(kmClass: KmClass, proto: ProtoBuf.Class, c: ReadContext) { override fun readClassExtensions(kmClass: KmClass, proto: ProtoBuf.Class, c: ReadContext) {
@@ -3,16 +3,16 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm.internal package kotlin.metadata.jvm.internal
import kotlinx.metadata.KmAnnotation import kotlin.metadata.KmAnnotation
import kotlinx.metadata.KmClass import kotlin.metadata.KmClass
import kotlinx.metadata.KmLambda import kotlin.metadata.KmLambda
import kotlinx.metadata.KmPackage import kotlin.metadata.KmPackage
import kotlinx.metadata.internal.toKmClass import kotlin.metadata.internal.toKmClass
import kotlinx.metadata.internal.toKmLambda import kotlin.metadata.internal.toKmLambda
import kotlinx.metadata.internal.toKmPackage import kotlin.metadata.internal.toKmPackage
import kotlinx.metadata.jvm.* import kotlin.metadata.jvm.*
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil
import org.jetbrains.kotlin.metadata.jvm.deserialization.ModuleMapping import org.jetbrains.kotlin.metadata.jvm.deserialization.ModuleMapping
@@ -97,7 +97,7 @@ internal object JvmReadUtils {
// Kotlin 1.0 produces classfiles with metadataVersion = 1.1.0, while 1.0.0 represents unsupported pre-1.0 Kotlin (see JvmMetadataVersion.kt:39) // Kotlin 1.0 produces classfiles with metadataVersion = 1.1.0, while 1.0.0 represents unsupported pre-1.0 Kotlin (see JvmMetadataVersion.kt:39)
val postfix = val postfix =
if (!isAtLeast110) "while minimum supported version is 1.1.0 (Kotlin 1.0)." if (!isAtLeast110) "while minimum supported version is 1.1.0 (Kotlin 1.0)."
else "while maximum supported version is ${if (jvmMetadataVersion.isStrictSemantics) CompilerMetadataVersion.INSTANCE else CompilerMetadataVersion.INSTANCE_NEXT}. To support newer versions, update the kotlinx-metadata-jvm library." else "while maximum supported version is ${if (jvmMetadataVersion.isStrictSemantics) CompilerMetadataVersion.INSTANCE else CompilerMetadataVersion.INSTANCE_NEXT}. To support newer versions, update the kotlin-metadata-jvm library."
throw IllegalArgumentException("Provided Metadata instance has version $jvmMetadataVersion, $postfix") throw IllegalArgumentException("Provided Metadata instance has version $jvmMetadataVersion, $postfix")
} }
} }
@@ -1,11 +1,11 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.jvm.internal package kotlin.metadata.jvm.internal
import kotlinx.metadata.internal.WriteContext import kotlin.metadata.internal.WriteContext
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil
import org.jetbrains.kotlin.metadata.jvm.serialization.JvmStringTable import org.jetbrains.kotlin.metadata.jvm.serialization.JvmStringTable
import org.jetbrains.kotlin.protobuf.MessageLite import org.jetbrains.kotlin.protobuf.MessageLite
@@ -3,11 +3,11 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.KmAnnotation import kotlin.metadata.KmAnnotation
import kotlinx.metadata.KmAnnotationArgument import kotlin.metadata.KmAnnotationArgument
import kotlinx.metadata.jvm.annotations import kotlin.metadata.jvm.annotations
import org.junit.Test import org.junit.Test
import kotlin.reflect.KClass import kotlin.reflect.KClass
import kotlin.test.assertEquals import kotlin.test.assertEquals
@@ -92,11 +92,11 @@ class AnnotationsStringFormTest {
val md = Holder::class.java.readMetadataAsKmClass() val md = Holder::class.java.readMetadataAsKmClass()
val annotation = md.properties.first().returnType.annotations.single() val annotation = md.properties.first().returnType.annotations.single()
assertEquals( assertEquals(
"@kotlinx/metadata/test/MyAnn(" + "@kotlin/metadata/test/MyAnn(" +
"s = StringValue(\"foo\"), " + "s = StringValue(\"foo\"), " +
"nested = AnnotationValue(@kotlinx/metadata/test/MyAnnNested(e = EnumValue(kotlinx/metadata/test/E.B), " + "nested = AnnotationValue(@kotlin/metadata/test/MyAnnNested(e = EnumValue(kotlin/metadata/test/E.B), " +
"a = ArrayValue([StringValue(\"a\"), StringValue(\"b\"), StringValue(\"c\")]))), " + "a = ArrayValue([StringValue(\"a\"), StringValue(\"b\"), StringValue(\"c\")]))), " +
"kClass = AnnotationValue(@kotlinx/metadata/test/WithKClass(kClass = KClassValue(kotlinx/metadata/test/E)))" + "kClass = AnnotationValue(@kotlin/metadata/test/WithKClass(kClass = KClassValue(kotlin/metadata/test/E)))" +
")", ")",
annotation.toString() annotation.toString()
) )
@@ -108,6 +108,6 @@ class AnnotationsStringFormTest {
val md = Holder::class.java.readMetadataAsKmClass() val md = Holder::class.java.readMetadataAsKmClass()
val annotation = md.properties.first().returnType.annotations.single() val annotation = md.properties.first().returnType.annotations.single()
assertEquals("@kotlinx/metadata/test/WithKClass(kClass = ArrayKClassValue(kotlin/Array<kotlinx/metadata/test/E>))", annotation.toString()) assertEquals("@kotlin/metadata/test/WithKClass(kClass = ArrayKClassValue(kotlin/Array<kotlin/metadata/test/E>))", annotation.toString())
} }
} }
@@ -3,9 +3,9 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion
import org.junit.Ignore import org.junit.Ignore
import org.junit.Test import org.junit.Test
@@ -3,9 +3,9 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.* import kotlin.metadata.*
import org.junit.Test import org.junit.Test
import kotlin.reflect.KMutableProperty0 import kotlin.reflect.KMutableProperty0
import kotlin.test.* import kotlin.test.*
@@ -1,9 +1,9 @@
/* /*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmNameResolverBase import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmNameResolverBase
import org.jetbrains.org.objectweb.asm.ClassReader import org.jetbrains.org.objectweb.asm.ClassReader
@@ -13,6 +13,7 @@ import org.jetbrains.org.objectweb.asm.ClassVisitor
import org.jetbrains.org.objectweb.asm.MethodVisitor import org.jetbrains.org.objectweb.asm.MethodVisitor
import org.jetbrains.org.objectweb.asm.Opcodes.API_VERSION import org.jetbrains.org.objectweb.asm.Opcodes.API_VERSION
import org.junit.Assert.* import org.junit.Assert.*
import org.junit.Ignore
import org.junit.Test import org.junit.Test
import java.io.File import java.io.File
import java.util.zip.ZipFile import java.util.zip.ZipFile
@@ -44,6 +45,8 @@ class JarContentTest {
} }
for (constant in loadedConstants) { for (constant in loadedConstants) {
// Do not report our own declarations
if (constant.startsWith("kotlin/metadata")) continue
// kotlin/Array appears as constant because it is used in ArrayKClassValue.toString() // kotlin/Array appears as constant because it is used in ArrayKClassValue.toString()
if (constant == "kotlin/Array<") continue if (constant == "kotlin/Array<") continue
// Explicitly checking types that are programmatically built don't appear as string constants. // Explicitly checking types that are programmatically built don't appear as string constants.
@@ -1,15 +1,15 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test; package kotlin.metadata.test;
import kotlin.Metadata; import kotlin.Metadata;
import kotlinx.metadata.KmClass; import kotlin.metadata.KmClass;
import kotlinx.metadata.jvm.JvmMetadataVersion; import kotlin.metadata.jvm.JvmMetadataVersion;
import kotlinx.metadata.jvm.KotlinClassHeader; import kotlin.metadata.jvm.KotlinClassHeader;
import kotlinx.metadata.jvm.KotlinClassMetadata; import kotlin.metadata.jvm.KotlinClassMetadata;
import org.junit.Test; import org.junit.Test;
import java.util.Objects; import java.util.Objects;
@@ -3,9 +3,9 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.jvm.JvmMetadataVersion import kotlin.metadata.jvm.JvmMetadataVersion
import kotlin.test.* import kotlin.test.*
class JvmMetadataVersionTest { class JvmMetadataVersionTest {
@@ -3,12 +3,12 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.KmClass import kotlin.metadata.KmClass
import kotlinx.metadata.jvm.JvmMetadataVersion import kotlin.metadata.jvm.JvmMetadataVersion
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import kotlinx.metadata.jvm.Metadata import kotlin.metadata.jvm.Metadata
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmMetadataVersion as CompilerMetadataVersion
import org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException import org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException
import org.junit.Test import org.junit.Test
@@ -3,10 +3,10 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.jvm.* import kotlin.metadata.jvm.*
import org.jetbrains.org.objectweb.asm.ClassWriter import org.jetbrains.org.objectweb.asm.ClassWriter
import org.jetbrains.org.objectweb.asm.Opcodes import org.jetbrains.org.objectweb.asm.Opcodes
import org.junit.Test import org.junit.Test
@@ -127,8 +127,8 @@ class MetadataSmokeTest {
class L class L
val l = (KotlinClassMetadata.readStrict(L::class.java.getMetadata()) as KotlinClassMetadata.Class).kmClass.name val l = (KotlinClassMetadata.readStrict(L::class.java.getMetadata()) as KotlinClassMetadata.Class).kmClass.name
assertEquals(".kotlinx/metadata/test/MetadataSmokeTest\$jvmInternalName\$L", l) assertEquals(".kotlin/metadata/test/MetadataSmokeTest\$jvmInternalName\$L", l)
assertEquals("kotlinx/metadata/test/MetadataSmokeTest\$jvmInternalName\$L", l.toJvmInternalName()) assertEquals("kotlin/metadata/test/MetadataSmokeTest\$jvmInternalName\$L", l.toJvmInternalName())
val coroutineContextKey = val coroutineContextKey =
(KotlinClassMetadata.readStrict(CoroutineContext.Key::class.java.getMetadata()) as KotlinClassMetadata.Class).kmClass.name (KotlinClassMetadata.readStrict(CoroutineContext.Key::class.java.getMetadata()) as KotlinClassMetadata.Class).kmClass.name
@@ -214,7 +214,7 @@ class MetadataSmokeTest {
val b: (Int) -> Int = @JvmSerializableLambda fun(x: Int) = x val b: (Int) -> Int = @JvmSerializableLambda fun(x: Int) = x
assertEquals("Class .kotlinx/metadata/test/MetadataSmokeTest\$testDisplayNameSample\$A", displayName(A::class.java.getMetadata())) assertEquals("Class .kotlin/metadata/test/MetadataSmokeTest\$testDisplayNameSample\$A", displayName(A::class.java.getMetadata()))
assertEquals("Lambda <no name provided>", displayName(b::class.java.getMetadata())) assertEquals("Lambda <no name provided>", displayName(b::class.java.getMetadata()))
} }
@@ -3,14 +3,14 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.KmClass import kotlin.metadata.KmClass
import kotlinx.metadata.internal.ClassWriter import kotlin.metadata.internal.ClassWriter
import kotlinx.metadata.jvm.JvmMetadataVersion import kotlin.metadata.jvm.JvmMetadataVersion
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import kotlinx.metadata.jvm.Metadata import kotlin.metadata.jvm.Metadata
import kotlinx.metadata.jvm.internal.writeProtoBufData import kotlin.metadata.jvm.internal.writeProtoBufData
import org.jetbrains.kotlin.metadata.jvm.serialization.JvmStringTable import org.jetbrains.kotlin.metadata.jvm.serialization.JvmStringTable
import org.junit.Test import org.junit.Test
import kotlin.test.assertEquals import kotlin.test.assertEquals
@@ -3,10 +3,10 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.KmClass import kotlin.metadata.KmClass
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
internal fun Class<*>.getMetadata(): Metadata { internal fun Class<*>.getMetadata(): Metadata {
return getAnnotation(Metadata::class.java) return getAnnotation(Metadata::class.java)
@@ -3,11 +3,11 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.test package kotlin.metadata.test
import kotlinx.metadata.jvm.JvmMetadataVersion import kotlin.metadata.jvm.JvmMetadataVersion
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import kotlinx.metadata.jvm.Metadata import kotlin.metadata.jvm.Metadata
import org.junit.Test import org.junit.Test
import kotlin.test.assertContentEquals import kotlin.test.assertContentEquals
import kotlin.test.assertEquals import kotlin.test.assertEquals
@@ -17,9 +17,9 @@ class WritersContractTest {
val classMd = WritersContractTest::class.java.getMetadata() val classMd = WritersContractTest::class.java.getMetadata()
val l: () -> Unit = @JvmSerializableLambda {} val l: () -> Unit = @JvmSerializableLambda {}
val lambdaMd = l::class.java.getMetadata() val lambdaMd = l::class.java.getMetadata()
val fileFacadeMd = Class.forName("kotlinx.metadata.test.testdata.FileFacade").getMetadata() val fileFacadeMd = Class.forName("kotlin.metadata.test.testdata.FileFacade").getMetadata()
val multiFileFacadeMd = Class.forName("kotlinx.metadata.test.testdata.MultiFileClassFacade").getMetadata() val multiFileFacadeMd = Class.forName("kotlin.metadata.test.testdata.MultiFileClassFacade").getMetadata()
val multiFilePartMd = Class.forName("kotlinx.metadata.test.testdata.MultiFileClassFacade__MultiFileClassFacade1Kt").getMetadata() val multiFilePartMd = Class.forName("kotlin.metadata.test.testdata.MultiFileClassFacade__MultiFileClassFacade1Kt").getMetadata()
val unknown = Metadata(99, metadataVersion = intArrayOf(2, 0, 0), extraString = "blabla") val unknown = Metadata(99, metadataVersion = intArrayOf(2, 0, 0), extraString = "blabla")
@@ -4,6 +4,6 @@
*/ */
@file:JvmName("FileFacade") @file:JvmName("FileFacade")
package kotlinx.metadata.test.testdata package kotlin.metadata.test.testdata
fun insideFileFacade() {} fun insideFileFacade() {}
@@ -5,6 +5,6 @@
@file:JvmMultifileClass @file:JvmMultifileClass
@file:JvmName("MultiFileClassFacade") @file:JvmName("MultiFileClassFacade")
package kotlinx.metadata.test.testdata package kotlin.metadata.test.testdata
fun partOne() {} fun partOne() {}
@@ -5,6 +5,6 @@
@file:JvmMultifileClass @file:JvmMultifileClass
@file:JvmName("MultiFileClassFacade") @file:JvmName("MultiFileClassFacade")
package kotlinx.metadata.test.testdata package kotlin.metadata.test.testdata
fun partTwo() {} fun partTwo() {}
@@ -23,7 +23,7 @@ configurations.getByName("testApi").extendsFrom(embedded)
dependencies { dependencies {
api(kotlinStdlib()) api(kotlinStdlib())
embedded(project(":kotlinx-metadata")) embedded(project(":kotlin-metadata"))
embedded(project(":core:compiler.common")) embedded(project(":core:compiler.common"))
embedded(project(":core:metadata")) embedded(project(":core:metadata"))
embedded(project(":core:deserialization")) embedded(project(":core:deserialization"))
@@ -42,9 +42,15 @@ if (deployVersion != null) {
runtimeJarWithRelocation { runtimeJarWithRelocation {
from(mainSourceSet.output) from(mainSourceSet.output)
exclude("**/*.proto") exclude("**/*.proto")
relocate("org.jetbrains.kotlin", "kotlinx.metadata.internal") relocate("org.jetbrains.kotlin", "kotlin.metadata.internal")
} }
sourcesJar() sourcesJar()
javadocJar() javadocJar()
kotlin {
compilerOptions {
freeCompilerArgs.add("-Xallow-kotlin-package")
}
}
@@ -0,0 +1 @@
kotlinx.metadata.klib.impl.KlibMetadataExtensions
@@ -1 +0,0 @@
kotlinx.metadata.klib.impl.KlibMetadataExtensions
@@ -1,12 +1,12 @@
/* /*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib package kotlinx.metadata.klib
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragment import kotlin.metadata.internal.common.KmModuleFragment
class ChunkedKlibModuleFragmentWriteStrategy( class ChunkedKlibModuleFragmentWriteStrategy(
private val topLevelClassifierDeclarationsPerFile: Int = 64, private val topLevelClassifierDeclarationsPerFile: Int = 64,
@@ -1,11 +1,11 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib package kotlinx.metadata.klib
import kotlinx.metadata.KmAnnotation import kotlin.metadata.KmAnnotation
// TODO: Add to common kotlinx-metadata. // TODO: Add to common kotlinx-metadata.
class KlibEnumEntry( class KlibEnumEntry(
@@ -1,11 +1,11 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib package kotlinx.metadata.klib
import kotlinx.metadata.KmAnnotation import kotlin.metadata.KmAnnotation
class KlibHeader( class KlibHeader(
val moduleName: String, val moduleName: String,
@@ -1,14 +1,16 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib package kotlinx.metadata.klib
import kotlinx.metadata.KmAnnotation
import kotlinx.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.internal.*
import kotlinx.metadata.klib.impl.* import kotlinx.metadata.klib.impl.*
import kotlinx.metadata.klib.impl.readHeader
import kotlinx.metadata.klib.impl.writeHeader
import kotlin.metadata.KmAnnotation
import kotlin.metadata.internal.common.KmModuleFragment
import kotlin.metadata.internal.*
import org.jetbrains.kotlin.library.metadata.parseModuleHeader import org.jetbrains.kotlin.library.metadata.parseModuleHeader
import org.jetbrains.kotlin.library.metadata.parsePackageFragment import org.jetbrains.kotlin.library.metadata.parsePackageFragment
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
@@ -1,5 +1,5 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@@ -1,5 +1,5 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@@ -1,16 +1,16 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") // Extension visitors @file:Suppress("DEPRECATION_ERROR") // Extension visitors
package kotlinx.metadata.klib.impl package kotlinx.metadata.klib.impl
import kotlinx.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.internal.common.KmModuleFragmentExtensionVisitor
import kotlinx.metadata.internal.extensions.*
import kotlinx.metadata.klib.* import kotlinx.metadata.klib.*
import kotlin.metadata.*
import kotlin.metadata.internal.common.KmModuleFragment
import kotlin.metadata.internal.common.KmModuleFragmentExtensionVisitor
import kotlin.metadata.internal.extensions.*
internal val KmFunction.klibExtensions: KlibFunctionExtension internal val KmFunction.klibExtensions: KlibFunctionExtension
get() = visitExtensions(KlibFunctionExtensionVisitor.TYPE) as KlibFunctionExtension get() = visitExtensions(KlibFunctionExtensionVisitor.TYPE) as KlibFunctionExtension
@@ -1,15 +1,15 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib.impl package kotlinx.metadata.klib.impl
import kotlinx.metadata.*
import kotlinx.metadata.internal.*
import kotlinx.metadata.internal.common.*
import kotlinx.metadata.internal.extensions.*
import kotlinx.metadata.klib.* import kotlinx.metadata.klib.*
import kotlin.metadata.*
import kotlin.metadata.internal.*
import kotlin.metadata.internal.common.*
import kotlin.metadata.internal.extensions.*
import org.jetbrains.kotlin.library.metadata.KlibMetadataProtoBuf import org.jetbrains.kotlin.library.metadata.KlibMetadataProtoBuf
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import org.jetbrains.kotlin.metadata.deserialization.NameResolverImpl import org.jetbrains.kotlin.metadata.deserialization.NameResolverImpl
@@ -1,11 +1,11 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib.impl package kotlinx.metadata.klib.impl
import kotlinx.metadata.internal.readAnnotation import kotlin.metadata.internal.readAnnotation
import kotlinx.metadata.klib.KlibHeader import kotlinx.metadata.klib.KlibHeader
import kotlinx.metadata.klib.KlibSourceFile import kotlinx.metadata.klib.KlibSourceFile
import kotlinx.metadata.klib.UniqId import kotlinx.metadata.klib.UniqId
@@ -1,11 +1,11 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib.impl package kotlinx.metadata.klib.impl
import kotlinx.metadata.internal.ReadContextExtension import kotlin.metadata.internal.ReadContextExtension
import kotlinx.metadata.klib.KlibSourceFile import kotlinx.metadata.klib.KlibSourceFile
class SourceFileIndexReadExtension( class SourceFileIndexReadExtension(
@@ -1,12 +1,12 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib.impl package kotlinx.metadata.klib.impl
import kotlinx.metadata.internal.WriteContext import kotlin.metadata.internal.WriteContext
import kotlinx.metadata.internal.writeAnnotation import kotlin.metadata.internal.writeAnnotation
import kotlinx.metadata.klib.KlibHeader import kotlinx.metadata.klib.KlibHeader
import kotlinx.metadata.klib.KlibSourceFile import kotlinx.metadata.klib.KlibSourceFile
import kotlinx.metadata.klib.UniqId import kotlinx.metadata.klib.UniqId
@@ -1,12 +1,12 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib.impl package kotlinx.metadata.klib.impl
import kotlinx.metadata.internal.* import kotlin.metadata.internal.*
import kotlinx.metadata.internal.common.KmModuleFragment import kotlin.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.klib.KlibSourceFile import kotlinx.metadata.klib.KlibSourceFile
import org.jetbrains.kotlin.library.metadata.KlibMetadataProtoBuf import org.jetbrains.kotlin.library.metadata.KlibMetadataProtoBuf
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
@@ -1,12 +1,12 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.klib package kotlinx.metadata.klib
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragment import kotlin.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.klib.impl.klibExtensions import kotlinx.metadata.klib.impl.klibExtensions
val KmFunction.annotations: MutableList<KmAnnotation> val KmFunction.annotations: MutableList<KmAnnotation>
@@ -1,13 +1,13 @@
/* /*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2024 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") // Extension visitors @file:Suppress("DEPRECATION_ERROR") // Extension visitors
package kotlinx.metadata.klib package kotlinx.metadata.klib
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragmentExtensionVisitor import kotlin.metadata.internal.common.KmModuleFragmentExtensionVisitor
abstract class KlibFunctionExtensionVisitor : KmFunctionExtensionVisitor { abstract class KlibFunctionExtensionVisitor : KmFunctionExtensionVisitor {
@@ -3,7 +3,7 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata package kotlin.metadata
/** /**
* Represents an annotation, written to the Kotlin metadata. Note that not all annotations are written to metadata on all platforms. * Represents an annotation, written to the Kotlin metadata. Note that not all annotations are written to metadata on all platforms.
@@ -16,7 +16,7 @@ package kotlinx.metadata
* @property arguments Explicitly specified arguments to the annotation; does not include default values for annotation parameters * @property arguments Explicitly specified arguments to the annotation; does not include default values for annotation parameters
* (specified in the annotation class declaration) * (specified in the annotation class declaration)
*/ */
public class KmAnnotation(public val className: ClassName, public val arguments: Map<String, KmAnnotationArgument>) { public class KmAnnotation(public val className: kotlin.metadata.ClassName, public val arguments: Map<String, KmAnnotationArgument>) {
/** /**
* Checks if this KmAnnotation is equal to the [other]. * Checks if this KmAnnotation is equal to the [other].
@@ -6,13 +6,13 @@
@file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually @file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually
@file:JvmName("Attributes") @file:JvmName("Attributes")
package kotlinx.metadata package kotlin.metadata
import kotlinx.metadata.internal.* import kotlin.metadata.internal.*
import kotlinx.metadata.internal.BooleanFlagDelegate import kotlin.metadata.internal.BooleanFlagDelegate
import kotlinx.metadata.internal.EnumFlagDelegate import kotlin.metadata.internal.EnumFlagDelegate
import kotlinx.metadata.internal.classBooleanFlag import kotlin.metadata.internal.classBooleanFlag
import kotlinx.metadata.internal.constructorBooleanFlag import kotlin.metadata.internal.constructorBooleanFlag
import kotlin.contracts.ExperimentalContracts import kotlin.contracts.ExperimentalContracts
import org.jetbrains.kotlin.metadata.deserialization.Flags as ProtoFlags import org.jetbrains.kotlin.metadata.deserialization.Flags as ProtoFlags
@@ -5,7 +5,7 @@
@file:JvmName("ClassNameKt") @file:JvmName("ClassNameKt")
package kotlinx.metadata package kotlin.metadata
/** /**
* A fully qualified name of a classifier from the Kotlin's point of view. May differ from the JVM name of the class * A fully qualified name of a classifier from the Kotlin's point of view. May differ from the JVM name of the class
@@ -4,7 +4,7 @@
*/ */
@file:Suppress("DEPRECATION_ERROR") @file:Suppress("DEPRECATION_ERROR")
package kotlinx.metadata package kotlin.metadata
import kotlin.reflect.KClass import kotlin.reflect.KClass
@@ -1,11 +1,11 @@
/* /*
* Copyright 2000-2018 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata package kotlin.metadata
import kotlinx.metadata.internal.IgnoreInApiDump import kotlin.metadata.internal.IgnoreInApiDump
import org.jetbrains.kotlin.metadata.ProtoBuf.* import org.jetbrains.kotlin.metadata.ProtoBuf.*
import org.jetbrains.kotlin.metadata.ProtoBuf.Class.Kind as ClassKind import org.jetbrains.kotlin.metadata.ProtoBuf.Class.Kind as ClassKind
import org.jetbrains.kotlin.metadata.deserialization.Flags as F import org.jetbrains.kotlin.metadata.deserialization.Flags as F
@@ -1,13 +1,13 @@
/* /*
* Copyright 2010-2018 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:JvmName("FlagsKt") @file:JvmName("FlagsKt")
package kotlinx.metadata package kotlin.metadata
import kotlinx.metadata.internal.FlagImpl import kotlin.metadata.internal.FlagImpl
/** /**
* Declaration flags are represented as bitmasks of this type. * Declaration flags are represented as bitmasks of this type.
@@ -3,7 +3,7 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata package kotlin.metadata
/** /**
* A generic exception that indicates problems with metadata deserialization. * A generic exception that indicates problems with metadata deserialization.
@@ -3,9 +3,9 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata package kotlin.metadata
import kotlinx.metadata.internal.FlagImpl import kotlin.metadata.internal.FlagImpl
import org.jetbrains.kotlin.metadata.deserialization.Flags as ProtoFlags import org.jetbrains.kotlin.metadata.deserialization.Flags as ProtoFlags
import org.jetbrains.kotlin.metadata.ProtoBuf.Class.Kind as ProtoClassKind import org.jetbrains.kotlin.metadata.ProtoBuf.Class.Kind as ProtoClassKind
import org.jetbrains.kotlin.metadata.ProtoBuf.Visibility as ProtoVisibility import org.jetbrains.kotlin.metadata.ProtoBuf.Visibility as ProtoVisibility
@@ -5,11 +5,11 @@
@file:Suppress("MemberVisibilityCanBePrivate") @file:Suppress("MemberVisibilityCanBePrivate")
package kotlinx.metadata package kotlin.metadata
import kotlinx.metadata.internal.FlagImpl import kotlin.metadata.internal.FlagImpl
import kotlinx.metadata.internal.extensions.* import kotlin.metadata.internal.extensions.*
import kotlinx.metadata.internal.propertyBooleanFlag import kotlin.metadata.internal.propertyBooleanFlag
import org.jetbrains.kotlin.metadata.deserialization.Flags import org.jetbrains.kotlin.metadata.deserialization.Flags
import kotlin.contracts.ExperimentalContracts import kotlin.contracts.ExperimentalContracts
@@ -3,7 +3,7 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata package kotlin.metadata
/** /**
* Marks an API related to the Kotlin's [context receivers](https://github.com/Kotlin/KEEP/blob/master/proposals/context-receivers.md) experimental feature. * Marks an API related to the Kotlin's [context receivers](https://github.com/Kotlin/KEEP/blob/master/proposals/context-receivers.md) experimental feature.
@@ -1,9 +1,9 @@
/* /*
* Copyright 2000-2018 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata package kotlin.metadata
import kotlin.contracts.ExperimentalContracts import kotlin.contracts.ExperimentalContracts
@@ -4,10 +4,10 @@
*/ */
@file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually @file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually
package kotlinx.metadata.internal package kotlin.metadata.internal
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.FlagImpl as Flag import kotlin.metadata.internal.FlagImpl as Flag
import kotlin.enums.EnumEntries import kotlin.enums.EnumEntries
import kotlin.reflect.KMutableProperty1 import kotlin.reflect.KMutableProperty1
import kotlin.reflect.KProperty import kotlin.reflect.KProperty
@@ -3,7 +3,7 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.internal package kotlin.metadata.internal
import org.jetbrains.kotlin.metadata.deserialization.Flags as F import org.jetbrains.kotlin.metadata.deserialization.Flags as F
@@ -1,9 +1,9 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.internal package kotlin.metadata.internal
/** /**
* Workaround for https://github.com/Kotlin/binary-compatibility-validator/issues/104: * Workaround for https://github.com/Kotlin/binary-compatibility-validator/issues/104:
@@ -3,11 +3,11 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.internal package kotlin.metadata.internal
import kotlinx.metadata.ClassName import kotlin.metadata.ClassName
import kotlinx.metadata.KmAnnotation import kotlin.metadata.KmAnnotation
import kotlinx.metadata.KmAnnotationArgument import kotlin.metadata.KmAnnotationArgument
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import org.jetbrains.kotlin.metadata.ProtoBuf.Annotation.Argument.Value.Type.* import org.jetbrains.kotlin.metadata.ProtoBuf.Annotation.Argument.Value.Type.*
import org.jetbrains.kotlin.metadata.deserialization.Flags import org.jetbrains.kotlin.metadata.deserialization.Flags
@@ -4,11 +4,11 @@
*/ */
@file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually @file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually
package kotlinx.metadata.internal package kotlin.metadata.internal
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragment import kotlin.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.internal.extensions.MetadataExtensions import kotlin.metadata.internal.extensions.MetadataExtensions
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import org.jetbrains.kotlin.metadata.deserialization.* import org.jetbrains.kotlin.metadata.deserialization.*
import kotlin.contracts.ExperimentalContracts import kotlin.contracts.ExperimentalContracts
@@ -3,9 +3,9 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.internal package kotlin.metadata.internal
import kotlinx.metadata.* import kotlin.metadata.*
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import org.jetbrains.kotlin.metadata.deserialization.Flags import org.jetbrains.kotlin.metadata.deserialization.Flags
import org.jetbrains.kotlin.metadata.serialization.StringTable import org.jetbrains.kotlin.metadata.serialization.StringTable
@@ -1,13 +1,13 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually @file:Suppress("DEPRECATION_ERROR") // flags will become internal eventually
package kotlinx.metadata.internal package kotlin.metadata.internal
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragment import kotlin.metadata.internal.common.KmModuleFragment
import kotlinx.metadata.internal.extensions.MetadataExtensions import kotlin.metadata.internal.extensions.MetadataExtensions
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import org.jetbrains.kotlin.metadata.deserialization.VersionRequirement import org.jetbrains.kotlin.metadata.deserialization.VersionRequirement
import org.jetbrains.kotlin.metadata.serialization.MutableVersionRequirementTable import org.jetbrains.kotlin.metadata.serialization.MutableVersionRequirementTable
@@ -1,18 +1,18 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") // deprecated .accept implementation @file:Suppress("DEPRECATION_ERROR") // deprecated .accept implementation
package kotlinx.metadata.internal.common package kotlin.metadata.internal.common
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.VISITOR_API_MESSAGE import kotlin.metadata.VISITOR_API_MESSAGE
import kotlinx.metadata.internal.toKmPackage import kotlin.metadata.internal.toKmPackage
import kotlinx.metadata.internal.toKmClass import kotlin.metadata.internal.toKmClass
import kotlinx.metadata.internal.extensions.KmModuleFragmentExtension import kotlin.metadata.internal.extensions.KmModuleFragmentExtension
import kotlinx.metadata.internal.extensions.MetadataExtensions import kotlin.metadata.internal.extensions.MetadataExtensions
import kotlinx.metadata.internal.extensions.singleOfType import kotlin.metadata.internal.extensions.singleOfType
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import org.jetbrains.kotlin.metadata.builtins.readBuiltinsPackageFragment import org.jetbrains.kotlin.metadata.builtins.readBuiltinsPackageFragment
import org.jetbrains.kotlin.metadata.deserialization.NameResolverImpl import org.jetbrains.kotlin.metadata.deserialization.NameResolverImpl
@@ -1,13 +1,13 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") // deprecated visitors API @file:Suppress("DEPRECATION_ERROR") // deprecated visitors API
package kotlinx.metadata.internal.extensions package kotlin.metadata.internal.extensions
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.common.KmModuleFragmentExtensionVisitor import kotlin.metadata.internal.common.KmModuleFragmentExtensionVisitor
public interface KmExtension<V : KmExtensionVisitor> : KmExtensionVisitor { public interface KmExtension<V : KmExtensionVisitor> : KmExtensionVisitor {
public fun accept(visitor: V) public fun accept(visitor: V)
@@ -1,11 +1,11 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
@file:Suppress("DEPRECATION_ERROR") // KmExtensionType will be moved to an internal package @file:Suppress("DEPRECATION_ERROR") // KmExtensionType will be moved to an internal package
package kotlinx.metadata.internal.extensions package kotlin.metadata.internal.extensions
import kotlinx.metadata.KmExtensionType import kotlin.metadata.KmExtensionType
internal fun <N : KmExtension<*>> Collection<N>.singleOfType(type: KmExtensionType): N { internal fun <N : KmExtension<*>> Collection<N>.singleOfType(type: KmExtensionType): N {
var result: N? = null var result: N? = null
@@ -1,13 +1,13 @@
/* /*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2023 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. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/ */
package kotlinx.metadata.internal.extensions package kotlin.metadata.internal.extensions
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.internal.* import kotlin.metadata.internal.*
import kotlinx.metadata.internal.common.* import kotlin.metadata.internal.common.*
import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.metadata.ProtoBuf
import java.util.* import java.util.*
@@ -8,8 +8,8 @@ dependencies {
implementation(commonDependency("org.apache.commons:commons-text")) implementation(commonDependency("org.apache.commons:commons-text"))
implementation(project(":tools:kotlinp-jvm")) implementation(project(":tools:kotlinp-jvm"))
implementation(project(":kotlinx-metadata-jvm")) implementation(project(":kotlin-metadata-jvm"))
implementation(project(":kotlinx-metadata")) implementation(project(":kotlin-metadata"))
testImplementation("org.jetbrains.kotlin:kotlin-test-junit") testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
} }
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport
interface ClassMetadataChecker : Checker { interface ClassMetadataChecker : Checker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport
abstract class ClassMetadataListChecker(name: String) : ClassMetadataChecker { abstract class ClassMetadataListChecker(name: String) : ClassMetadataChecker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport
import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry
@@ -5,10 +5,10 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.KmConstructor import kotlin.metadata.KmConstructor
import kotlinx.metadata.KmFunction import kotlin.metadata.KmFunction
import kotlinx.metadata.KmProperty import kotlin.metadata.KmProperty
import kotlinx.metadata.KmTypeAlias import kotlin.metadata.KmTypeAlias
import org.jetbrains.kotlin.abicmp.reports.MetadataPropertyReport import org.jetbrains.kotlin.abicmp.reports.MetadataPropertyReport
import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.MultiFileClassFacadeMetadataReport import org.jetbrains.kotlin.abicmp.reports.MultiFileClassFacadeMetadataReport
interface MultiFileClassFacadeMetadataChecker : Checker { interface MultiFileClassFacadeMetadataChecker : Checker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.MultiFileClassFacadeMetadataReport import org.jetbrains.kotlin.abicmp.reports.MultiFileClassFacadeMetadataReport
abstract class MultiFileClassFacadeMetadataListChecker(name: String) : MultiFileClassFacadeMetadataChecker { abstract class MultiFileClassFacadeMetadataListChecker(name: String) : MultiFileClassFacadeMetadataChecker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.MultiFileClassPartMetadataReport import org.jetbrains.kotlin.abicmp.reports.MultiFileClassPartMetadataReport
interface MultiFileClassPartMetadataChecker : Checker { interface MultiFileClassPartMetadataChecker : Checker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.MultiFileClassPartMetadataReport import org.jetbrains.kotlin.abicmp.reports.MultiFileClassPartMetadataReport
import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.KmPackage import kotlin.metadata.KmPackage
import org.jetbrains.kotlin.abicmp.reports.PackageMetadataReport import org.jetbrains.kotlin.abicmp.reports.PackageMetadataReport
interface PackageMetadataChecker : Checker { interface PackageMetadataChecker : Checker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.KmPackage import kotlin.metadata.KmPackage
import org.jetbrains.kotlin.abicmp.reports.PackageMetadataReport import org.jetbrains.kotlin.abicmp.reports.PackageMetadataReport
abstract class PackageMetadataListChecker(name: String) : PackageMetadataChecker { abstract class PackageMetadataListChecker(name: String) : PackageMetadataChecker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.SyntheticClassMetadataReport import org.jetbrains.kotlin.abicmp.reports.SyntheticClassMetadataReport
interface SyntheticClassMetadataChecker : Checker { interface SyntheticClassMetadataChecker : Checker {
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry import org.jetbrains.kotlin.abicmp.reports.NamedDiffEntry
import org.jetbrains.kotlin.abicmp.reports.SyntheticClassMetadataReport import org.jetbrains.kotlin.abicmp.reports.SyntheticClassMetadataReport
@@ -5,11 +5,11 @@
package org.jetbrains.kotlin.abicmp.checkers package org.jetbrains.kotlin.abicmp.checkers
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import kotlinx.metadata.jvm.getterSignature import kotlin.metadata.jvm.getterSignature
import kotlinx.metadata.jvm.localDelegatedProperties import kotlin.metadata.jvm.localDelegatedProperties
import kotlinx.metadata.jvm.signature import kotlin.metadata.jvm.signature
import org.jetbrains.kotlin.abicmp.reports.MetadataPropertyReport import org.jetbrains.kotlin.abicmp.reports.MetadataPropertyReport
import org.jetbrains.kotlin.abicmp.tasks.GenericMetadataTask import org.jetbrains.kotlin.abicmp.tasks.GenericMetadataTask
@@ -5,8 +5,8 @@
package org.jetbrains.kotlin.abicmp.tasks package org.jetbrains.kotlin.abicmp.tasks
import kotlinx.metadata.* import kotlin.metadata.*
import kotlinx.metadata.jvm.* import kotlin.metadata.jvm.*
import org.jetbrains.kotlin.abicmp.* import org.jetbrains.kotlin.abicmp.*
import org.jetbrains.kotlin.abicmp.checkers.* import org.jetbrains.kotlin.abicmp.checkers.*
import org.jetbrains.kotlin.kotlinp.* import org.jetbrains.kotlin.kotlinp.*
@@ -213,6 +213,7 @@ class CheckerConfiguration(private val enabledExclusively: Set<String>, private
} }
} }
private val kotlinp = JvmKotlinp(Settings(isVerbose = true, sortDeclarations = true)) private val kotlinp = JvmKotlinp(Settings(isVerbose = true, sortDeclarations = true))
private fun renderAnnotation(annotation: KmAnnotation) = printString { kotlinp.renderAnnotation(annotation, this) } private fun renderAnnotation(annotation: KmAnnotation) = printString { kotlinp.renderAnnotation(annotation, this) }
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.tasks package org.jetbrains.kotlin.abicmp.tasks
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.checkers.* import org.jetbrains.kotlin.abicmp.checkers.*
import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport import org.jetbrains.kotlin.abicmp.reports.ClassMetadataReport
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.tasks package org.jetbrains.kotlin.abicmp.tasks
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.checkers.loadFields import org.jetbrains.kotlin.abicmp.checkers.loadFields
import org.jetbrains.kotlin.abicmp.checkers.loadMethods import org.jetbrains.kotlin.abicmp.checkers.loadMethods
import org.jetbrains.kotlin.abicmp.classFlags import org.jetbrains.kotlin.abicmp.classFlags
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.tasks package org.jetbrains.kotlin.abicmp.tasks
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.MultiFileClassFacadeMetadataReport import org.jetbrains.kotlin.abicmp.reports.MultiFileClassFacadeMetadataReport
class MultiFileClassFacadeMetadataTask( class MultiFileClassFacadeMetadataTask(
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.tasks package org.jetbrains.kotlin.abicmp.tasks
import kotlinx.metadata.jvm.KotlinClassMetadata import kotlin.metadata.jvm.KotlinClassMetadata
import org.jetbrains.kotlin.abicmp.reports.MultiFileClassPartMetadataReport import org.jetbrains.kotlin.abicmp.reports.MultiFileClassPartMetadataReport
class MultiFileClassPartMetadataTask( class MultiFileClassPartMetadataTask(
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.abicmp.tasks package org.jetbrains.kotlin.abicmp.tasks
import kotlinx.metadata.KmPackage import kotlin.metadata.KmPackage
import org.jetbrains.kotlin.abicmp.checkers.* import org.jetbrains.kotlin.abicmp.checkers.*
import org.jetbrains.kotlin.abicmp.reports.PackageMetadataReport import org.jetbrains.kotlin.abicmp.reports.PackageMetadataReport

Some files were not shown because too many files have changed in this diff Show More