Files
Dmitriy Dolovov d30efdb001 [kotlinp] Split :tools:kotlinp into "common" and "jvm" subprojects
The "common" subproject keeps only backend-neutral logic and depends
only on :kotlinx-metadata library. It takes the name of the former
project - :tools:kotlinp

The "jvm" subproject depends on the "common" one and also depends
on :kotlinx-metadata-jvm. It gets the new name - :tools:kotlinp-jvm

There is a lot of touched files in this commit. The majority of them
is just moved files (tests, test data, etc).

Only the following files were actually modified:
  .space/CODEOWNERS
  build.gradle.kts
  libraries/tools/abi-comparator/build.gradle.kts
  libraries/tools/kotlinp/build.gradle.kts
  libraries/tools/kotlinp/jvm/build.gradle.kts
  plugins/kapt3/kapt3-compiler/build.gradle.kts
  settings.gradle

 ^KT-62340
2024-02-13 21:01:08 +00:00

42 lines
1.5 KiB
Kotlin
Vendored

import kotlin.reflect.KClass
@Target(AnnotationTarget.TYPE)
annotation class AnnoString(vararg val value: String)
@Target(AnnotationTarget.TYPE)
annotation class AnnoInt(vararg val value: Int)
enum class A { V1, V2 }
@Target(AnnotationTarget.TYPE)
annotation class AnnoEnum(vararg val value: A)
@Target(AnnotationTarget.TYPE)
annotation class AnnoKClass(vararg val value: KClass<*>)
@Target(AnnotationTarget.TYPE)
annotation class AnnoAnnotation(vararg val value: AnnoString)
fun annoStringVararg0(): @AnnoString() Unit {}
fun annoStringVararg1(): @AnnoString("OK") Unit {}
fun annoStringVararg2(): @AnnoString("OK", "OK2") Unit {}
fun annoIntVararg0(): @AnnoInt() Unit {}
fun annoIntVararg1(): @AnnoInt(0) Unit {}
fun annoIntVararg2(): @AnnoInt(0, 1) Unit {}
fun annoEnumVararg0(): @AnnoEnum() Unit {}
fun annoEnumVararg1(): @AnnoEnum(A.V1) Unit {}
fun annoEnumVararg2(): @AnnoEnum(A.V1, A.V2) Unit {}
fun annoKClassVararg0(): @AnnoKClass() Unit {}
fun annoKClassVararg1(): @AnnoKClass(AnnoString::class) Unit {}
fun annoKClassVararg2(): @AnnoKClass(AnnoString::class, AnnoInt::class) Unit {}
fun annoAnnotationVararg0(): @AnnoAnnotation() Unit {}
fun annoAnnotationVararg1(): @AnnoAnnotation(AnnoString()) Unit {}
fun annoAnnotationVararg2(): @AnnoAnnotation(AnnoString("OK"), AnnoString("OK1", "OK2")) Unit {}
fun annoArrayVararg0(): @AnnoString(*arrayOf()) Unit {}
fun annoArrayVararg1(): @AnnoString(*arrayOf("OK")) Unit {}
fun annoArrayVararg2(): @AnnoString(*arrayOf("OK", "OK2")) Unit {}