[KAPT4] KT-51982 Implement generation of @Metadata annotations in Java stubs
Also adds rendering of @Metadata annotations in Kapt3 and Kapt4 tests (currently disabled for a few tests). Co-authored-by: Alexander Udalov <alexander.udalov@jetbrains.com>
This commit is contained in:
committed by
Space Team
parent
f40fc1b0c6
commit
2423b7b62f
@@ -1,3 +1,60 @@
|
||||
/**
|
||||
* public final class A$B : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // field: c:LA$B$C;
|
||||
* public final lateinit var c: A$B.C
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: de:LA$B$D$E;
|
||||
* public final lateinit var de: A$B.D$E
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: dee:LA$B$D$$E;
|
||||
* public final lateinit var dee: A$B.D$$E
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: deee:LA$B$D$$$E;
|
||||
* public final lateinit var deee: A$B.D$$$E
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: jc:LJ$B$C;
|
||||
* public final lateinit var jc: J$B.C
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: jde:LJ$B$D$E;
|
||||
* public final lateinit var jde: J$B.D$E
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: jdee:LJ$B$D$$E;
|
||||
* public final lateinit var jdee: J$B.D$$E
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: jdeee:LJ$B$D$$$E;
|
||||
* public final lateinit var jdeee: J$B.D$$$E
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // nested class: C
|
||||
*
|
||||
* // nested class: D$$$E
|
||||
*
|
||||
* // nested class: D$$E
|
||||
*
|
||||
* // nested class: D$E
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class A$B {
|
||||
@kotlin.jvm.JvmField()
|
||||
@@ -21,6 +78,15 @@ public final class A$B {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* public final class A$B.C : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class C {
|
||||
|
||||
@@ -29,6 +95,39 @@ public final class A$B {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* public final class A$B.D$E : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // field: f:LA$B$D$E$F;
|
||||
* public final lateinit var f: A$B.D$E.F
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: fg:LA$B$D$E$F$G;
|
||||
* public final lateinit var fg: A$B.D$E.F$G
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: jf:LJ$B$D$E$F;
|
||||
* public final lateinit var jf: J$B.D$E.F
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // field: jfg:LJ$B$D$E$F$G;
|
||||
* public final lateinit var jfg: J$B.D$E.F$G
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // nested class: F
|
||||
*
|
||||
* // nested class: F$G
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class D$E {
|
||||
@kotlin.jvm.JvmField()
|
||||
@@ -44,6 +143,15 @@ public final class A$B {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* public final class A$B.D$E.F : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class F {
|
||||
|
||||
@@ -52,6 +160,15 @@ public final class A$B {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* public final class A$B.D$E.F$G : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class F$G {
|
||||
|
||||
@@ -61,6 +178,15 @@ public final class A$B {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* public final class A$B.D$$E : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class D$$E {
|
||||
|
||||
@@ -69,6 +195,15 @@ public final class A$B {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* public final class A$B.D$$$E : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class D$$$E {
|
||||
|
||||
@@ -81,6 +216,19 @@ public final class A$B {
|
||||
////////////////////
|
||||
|
||||
|
||||
/**
|
||||
* public final class Experiment : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // nested class: Group
|
||||
*
|
||||
* // nested class: Type
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class Experiment {
|
||||
|
||||
@@ -89,11 +237,51 @@ public final class Experiment {
|
||||
}
|
||||
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
/**
|
||||
* public final annotation class Experiment.Type : kotlin/Annotation {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static abstract @interface Type {
|
||||
}
|
||||
|
||||
@Experiment.Type()
|
||||
/**
|
||||
* public final data class Experiment.Group : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>(Ljava/lang/String;)V
|
||||
* public constructor(s: kotlin/String)
|
||||
*
|
||||
* // signature: component1()Ljava/lang/String;
|
||||
* public final (* synthesized *) operator fun component1(): kotlin/String
|
||||
*
|
||||
* // signature: copy(Ljava/lang/String;)LExperiment$Group;
|
||||
* public final (* synthesized *) fun copy(s: kotlin/String (* = ... *)): Experiment.Group
|
||||
*
|
||||
* // signature: equals(Ljava/lang/Object;)Z
|
||||
* public open (* synthesized *) operator fun equals(other: kotlin/Any?): kotlin/Boolean
|
||||
*
|
||||
* // signature: hashCode()I
|
||||
* public open (* synthesized *) fun hashCode(): kotlin/Int
|
||||
*
|
||||
* // signature: toString()Ljava/lang/String;
|
||||
* public open (* synthesized *) fun toString(): kotlin/String
|
||||
*
|
||||
* // field: s:Ljava/lang/String;
|
||||
* // getter: getS()Ljava/lang/String;
|
||||
* // setter: setS(Ljava/lang/String;)V
|
||||
* public final var s: kotlin/String
|
||||
* public final get
|
||||
* public final set
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class Group {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@@ -146,6 +334,17 @@ public final class Experiment {
|
||||
////////////////////
|
||||
|
||||
|
||||
/**
|
||||
* public final class Foo : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // nested class: Bar
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class Foo {
|
||||
|
||||
@@ -153,6 +352,17 @@ public final class Foo {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* public open class Foo.Bar : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* public constructor()
|
||||
*
|
||||
* // nested class: Zoo
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static class Bar {
|
||||
|
||||
@@ -160,6 +370,15 @@ public final class Foo {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* public final object Foo.Bar.Zoo : kotlin/Any {
|
||||
*
|
||||
* // signature: <init>()V
|
||||
* private constructor()
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static final class Zoo {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@@ -175,13 +394,44 @@ public final class Foo {
|
||||
////////////////////
|
||||
|
||||
|
||||
/**
|
||||
* public abstract interface IFoo : kotlin/Any {
|
||||
*
|
||||
* // nested class: IBar
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public abstract interface IFoo {
|
||||
|
||||
/**
|
||||
* public abstract interface IFoo.IBar : kotlin/Any {
|
||||
*
|
||||
* // nested class: Anno
|
||||
*
|
||||
* // nested class: IZoo
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static abstract interface IBar {
|
||||
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
/**
|
||||
* public final annotation class IFoo.IBar.Anno : kotlin/Annotation {
|
||||
*
|
||||
* // signature: <init>(Lkotlin/Array;)V
|
||||
* public constructor(vararg value: kotlin/reflect/KClass<*> (* kotlin/Array<out kotlin/reflect/KClass<*>> *))
|
||||
*
|
||||
* // getter: value()[Ljava/lang/Class;
|
||||
* public final val value: kotlin/Array<out kotlin/reflect/KClass<*>>
|
||||
* public final get
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static abstract @interface Anno {
|
||||
|
||||
@@ -189,6 +439,12 @@ public abstract interface IFoo {
|
||||
}
|
||||
|
||||
@IFoo.IBar.Anno(value = {IFoo.IBar.IZoo.class})
|
||||
/**
|
||||
* public abstract interface IFoo.IBar.IZoo : kotlin/Any {
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public static abstract interface IZoo {
|
||||
}
|
||||
@@ -275,6 +531,26 @@ public class JavaClass {
|
||||
|
||||
|
||||
@IFoo.IBar.Anno(value = {IFoo.IBar.IZoo.class, Foo.Bar.class})
|
||||
/**
|
||||
* public final class Test1 : Foo.Bar, IFoo.IBar, IFoo.IBar.IZoo {
|
||||
*
|
||||
* // signature: <init>(LFoo$Bar$Zoo;)V
|
||||
* public constructor(zoo: Foo.Bar.Zoo)
|
||||
*
|
||||
* // signature: a()Ljava/lang/Thread$State;
|
||||
* public final fun a(): java/lang/Thread.State
|
||||
*
|
||||
* // signature: b(LJavaClass$Foo;LJavaClass$Foo$Bar;)V
|
||||
* public final fun b(foo: JavaClass.Foo, bar: JavaClass.Foo.Bar): kotlin/Unit
|
||||
*
|
||||
* // field: zoo:LFoo$Bar$Zoo;
|
||||
* // getter: getZoo()LFoo$Bar$Zoo;
|
||||
* public final val zoo: Foo.Bar.Zoo
|
||||
* public final get
|
||||
*
|
||||
* // module name: main
|
||||
* }
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class Test1 extends Foo.Bar implements IFoo.IBar, IFoo.IBar.IZoo {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
|
||||
Reference in New Issue
Block a user