KT-54804 [SLC] Generate synthetic functions for annotations on properties in light classes

This commit is contained in:
Pavel Mikhailovskii
2023-05-12 09:39:37 +00:00
committed by Space Team
parent 111243f215
commit 7ac5233a32
18 changed files with 399 additions and 9 deletions
@@ -0,0 +1,27 @@
public final class Test /* Test*/ {
@MyAnnotation5()
@org.jetbrains.annotations.NotNull()
private java.lang.String bar;
@MyAnnotation()
@org.jetbrains.annotations.NotNull()
public final java.lang.String getBar();// getBar()
@MyAnnotation2()
public final void setBar(@MyAnnotation3() @org.jetbrains.annotations.NotNull() java.lang.String);// setBar(java.lang.String)
@MyAnnotation4()
@java.lang.Deprecated()
public static void getBar$annotations();// getBar$annotations()
@org.jetbrains.annotations.NotNull()
public final kotlin.Unit getFooP(@MyAnnotation7() int);// getFooP(int)
public Test(@MyAnnotation6() @org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(java.lang.String)
public final void fooF(@MyAnnotation7() int);// fooF(int)
public final void fooWithNullableReceiver(@MyAnnotation7() @org.jetbrains.annotations.Nullable() java.lang.Integer, long);// fooWithNullableReceiver(java.lang.Integer, long)
public final void setFooP(@MyAnnotation7() int, @org.jetbrains.annotations.NotNull() kotlin.Unit);// setFooP(int, kotlin.Unit)
}
@@ -20,4 +20,4 @@ public final class Test /* Test*/ {
public final void fooWithNullableReceiver(@MyAnnotation7() @org.jetbrains.annotations.Nullable() java.lang.Integer, long);// fooWithNullableReceiver(java.lang.Integer, long)
public final void setFooP(@MyAnnotation7() int, @org.jetbrains.annotations.NotNull() kotlin.Unit);// setFooP(int, kotlin.Unit)
}
}
@@ -1,4 +1,5 @@
// Test
// !GENERATE_PROPERTY_ANNOTATIONS_METHODS
annotation class MyAnnotation
annotation class MyAnnotation2
annotation class MyAnnotation3
@@ -0,0 +1,98 @@
public abstract class AbstractKotlinClass /* AbstractKotlinClass*/ {
@org.jetbrains.annotations.NotNull()
public static final AbstractKotlinClass.Companion Companion;
public Custom classLateinitVariable;
public static Custom companionLateinitStaticVariable;
public static Custom companionLateinitVariable;
@org.jetbrains.annotations.NotNull()
public final Custom getClassLateinitVariable();// getClassLateinitVariable()
@org.jetbrains.annotations.NotNull()
public static final Custom getCompanionLateinitStaticVariable();// getCompanionLateinitStaticVariable()
public AbstractKotlinClass();// .ctor()
public final void setClassLateinitVariable(@org.jetbrains.annotations.NotNull() Custom);// setClassLateinitVariable(Custom)
public static final void setCompanionLateinitStaticVariable(@org.jetbrains.annotations.NotNull() Custom);// setCompanionLateinitStaticVariable(Custom)
class Companion ...
}
public static final class Companion /* KotlinClass.Companion*/ {
@java.lang.Deprecated()
@kotlin.jvm.JvmStatic()
public static void getCompanionLateinitStaticVariable$annotations();// getCompanionLateinitStaticVariable$annotations()
@org.jetbrains.annotations.NotNull()
public final Custom getCompanionLateinitStaticVariable();// getCompanionLateinitStaticVariable()
@org.jetbrains.annotations.NotNull()
public final Custom getCompanionLateinitVariable();// getCompanionLateinitVariable()
private Companion();// .ctor()
public final void setCompanionLateinitStaticVariable(@org.jetbrains.annotations.NotNull() Custom);// setCompanionLateinitStaticVariable(Custom)
public final void setCompanionLateinitVariable(@org.jetbrains.annotations.NotNull() Custom);// setCompanionLateinitVariable(Custom)
}
public static final class Companion /* AbstractKotlinClass.Companion*/ {
@java.lang.Deprecated()
@kotlin.jvm.JvmStatic()
public static void getCompanionLateinitStaticVariable$annotations();// getCompanionLateinitStaticVariable$annotations()
@org.jetbrains.annotations.NotNull()
public final Custom getCompanionLateinitStaticVariable();// getCompanionLateinitStaticVariable()
@org.jetbrains.annotations.NotNull()
public final Custom getCompanionLateinitVariable();// getCompanionLateinitVariable()
private Companion();// .ctor()
public final void setCompanionLateinitStaticVariable(@org.jetbrains.annotations.NotNull() Custom);// setCompanionLateinitStaticVariable(Custom)
public final void setCompanionLateinitVariable(@org.jetbrains.annotations.NotNull() Custom);// setCompanionLateinitVariable(Custom)
}
public final class Custom /* Custom*/ {
public Custom();// .ctor()
}
public final class KotlinClass /* KotlinClass*/ {
@org.jetbrains.annotations.NotNull()
public static final KotlinClass.Companion Companion;
public Custom classLateinitVariable;
public static Custom companionLateinitStaticVariable;
public static Custom companionLateinitVariable;
@org.jetbrains.annotations.NotNull()
public final Custom getClassLateinitVariable();// getClassLateinitVariable()
@org.jetbrains.annotations.NotNull()
public static final Custom getCompanionLateinitStaticVariable();// getCompanionLateinitStaticVariable()
public KotlinClass();// .ctor()
public final void setClassLateinitVariable(@org.jetbrains.annotations.NotNull() Custom);// setClassLateinitVariable(Custom)
public static final void setCompanionLateinitStaticVariable(@org.jetbrains.annotations.NotNull() Custom);// setCompanionLateinitStaticVariable(Custom)
class Companion ...
}
public final class LateinitPropertiesKt /* LateinitPropertiesKt*/ {
public static Custom topLevelLateinit;
@org.jetbrains.annotations.NotNull()
public static final Custom getTopLevelLateinit();// getTopLevelLateinit()
public static final void setTopLevelLateinit(@org.jetbrains.annotations.NotNull() Custom);// setTopLevelLateinit(Custom)
}
@@ -1,3 +1,4 @@
// !GENERATE_PROPERTY_ANNOTATIONS_METHODS
class KotlinClass {
lateinit var classLateinitVariable: Custom
@@ -26,6 +26,22 @@ public final class MyClass /* MyClass*/ {
private final int x7;
@AnotherUniversalAnnotation()
@java.lang.Deprecated()
public static void getX7$annotations();// getX7$annotations()
@PropertyAnnotation()
@java.lang.Deprecated()
public static void getX1$annotations();// getX1$annotations()
@PropertyOrFieldAnnotation()
@java.lang.Deprecated()
public static void getX2$annotations();// getX2$annotations()
@UniversalAnnotation()
@java.lang.Deprecated()
public static void getX5$annotations();// getX5$annotations()
public MyClass(@AnotherUniversalAnnotation() @ParameterAnnotation() @UniversalAnnotation() int, int, @PropertyOrParameterAnnotation() int, @ParameterOrFieldAnnotation() int, int, @AnotherUniversalAnnotation() int, @UniversalAnnotation() int);// .ctor(int, int, int, int, int, int, int)
public final int getX1();// getX1()
@@ -1,3 +1,4 @@
// !GENERATE_PROPERTY_ANNOTATIONS_METHODS
@Target(AnnotationTarget.PROPERTY)
annotation class PropertyAnnotation
@@ -126,6 +126,10 @@ public final class F /* F*/ implements java.lang.Runnable {
@Anno(p = "f")
public final void f(@Anno() @org.jetbrains.annotations.NotNull() java.lang.String);// f(java.lang.String)
@Anno(p = "p")
@java.lang.Deprecated()
public static void getProp$annotations();// getProp$annotations()
@org.jetbrains.annotations.NotNull()
public final java.lang.String getProp();// getProp()
@@ -1,3 +1,4 @@
// !GENERATE_PROPERTY_ANNOTATIONS_METHODS
import kotlin.reflect.KClass
@Target(*[AnnotationTarget.CLASS, AnnotationTarget.FUNCTION, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.EXPRESSION])
@@ -77,6 +77,10 @@ public final class ClassWithConstContainer /* ClassWithConstContainer*/ {
}
public static final class Companion /* C.Companion*/ {
@java.lang.Deprecated()
@kotlin.jvm.JvmStatic()
public static void getX$annotations();// getX$annotations()
@kotlin.jvm.JvmStatic()
@org.jetbrains.annotations.NotNull()
public final java.lang.String getC(@org.jetbrains.annotations.NotNull() I);// getC(I)
@@ -155,6 +159,10 @@ public final class Obj /* Obj*/ implements java.lang.Runnable {
@org.jetbrains.annotations.NotNull()
public static final Obj INSTANCE;
@java.lang.Deprecated()
@kotlin.jvm.JvmStatic()
public static void getX$annotations();// getX$annotations()
@java.lang.Override()
public void run();// run()
@@ -1,4 +1,4 @@
// !GENERATE_PROPERTY_ANNOTATIONS_METHODS
class C {
companion object {
@JvmStatic fun foo() {}