Kapt: support property $annotations methods for JVM IR
`is PropertyDescriptor` check doesn't work for JVM IR where descriptor is created on-the-fly and is an `IrBasedSimpleFunctionDescriptor`. #KT-49682
This commit is contained in:
+3
-2
@@ -42,6 +42,7 @@ import org.jetbrains.kotlin.kapt3.javac.KaptJavaFileObject
|
||||
import org.jetbrains.kotlin.kapt3.javac.KaptTreeMaker
|
||||
import org.jetbrains.kotlin.kapt3.stubs.ErrorTypeCorrector.TypeKind.*
|
||||
import org.jetbrains.kotlin.kapt3.util.*
|
||||
import org.jetbrains.kotlin.load.java.JvmAbi
|
||||
import org.jetbrains.kotlin.load.java.sources.JavaSourceElement
|
||||
import org.jetbrains.kotlin.load.kotlin.TypeMappingMode
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
@@ -881,8 +882,8 @@ class ClassFileToSourceStubConverter(val kaptContext: KaptContextForStubGenerati
|
||||
if (isIgnored(method.invisibleAnnotations)) return null
|
||||
val descriptor = kaptContext.origins[method]?.descriptor as? CallableDescriptor ?: return null
|
||||
|
||||
val isAnnotationHolderForProperty = descriptor is PropertyDescriptor && isSynthetic(method.access)
|
||||
&& isStatic(method.access) && method.name.endsWith("\$annotations")
|
||||
val isAnnotationHolderForProperty =
|
||||
isSynthetic(method.access) && isStatic(method.access) && method.name.endsWith(JvmAbi.ANNOTATED_PROPERTY_METHOD_NAME_SUFFIX)
|
||||
|
||||
if (isSynthetic(method.access) && !isAnnotationHolderForProperty) return null
|
||||
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
package test;
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@Anno(value = "anno-class")
|
||||
public abstract @interface Anno {
|
||||
|
||||
public abstract java.lang.String value();
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
package test;
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.jvm.JvmName(name = "AnnotationsTest")
|
||||
@kotlin.Metadata()
|
||||
public final class AnnotationsTest {
|
||||
|
||||
public AnnotationsTest() {
|
||||
super();
|
||||
}
|
||||
|
||||
@Anno(value = "top-level-fun")
|
||||
public static final void topLevelFun(@org.jetbrains.annotations.NotNull()
|
||||
@Anno(value = "top-level-fun-receiver")
|
||||
java.lang.String $this$topLevelFun) {
|
||||
}
|
||||
|
||||
@Anno(value = "top-level-val")
|
||||
@java.lang.Deprecated()
|
||||
public static void getTopLevelVal$annotations(int p0) {
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public static final java.lang.String getTopLevelVal(@Anno(value = "top-level-val-receiver")
|
||||
int $this$topLevelVal) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
package test;
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@Anno(value = "enum")
|
||||
public enum Enum {
|
||||
@Anno(value = "white")
|
||||
/*public static final*/ WHITE /* = new Enum() */,
|
||||
@Anno(value = "black")
|
||||
/*public static final*/ BLACK /* = new Enum() */;
|
||||
private final int x = 0;
|
||||
|
||||
@Anno(value = "enum-constructor")
|
||||
Enum(@Anno(value = "x")
|
||||
int x) {
|
||||
}
|
||||
|
||||
public final int getX() {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
package test;
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@Anno(value = "clazz")
|
||||
public abstract class Test {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private java.lang.String v;
|
||||
|
||||
@Anno(value = "test-constructor")
|
||||
protected Test(@org.jetbrains.annotations.NotNull()
|
||||
@Anno(value = "v-param")
|
||||
java.lang.String v) {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@Anno(value = "v-get")
|
||||
public final java.lang.String getV() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Anno(value = "v-set")
|
||||
public final void setV(@org.jetbrains.annotations.NotNull()
|
||||
@Anno(value = "v-setparam")
|
||||
java.lang.String p0) {
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@Anno(value = "abstract-method")
|
||||
public abstract java.lang.String abstractMethod();
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public abstract java.lang.String getAbstractVal();
|
||||
|
||||
@Anno(value = "abstract-val")
|
||||
@java.lang.Deprecated()
|
||||
public static void getAbstractVal$annotations() {
|
||||
}
|
||||
|
||||
@Anno(value = "v-property")
|
||||
@java.lang.Deprecated()
|
||||
public static void getV$annotations() {
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
|
||||
@Target(AnnotationTarget.FIELD)
|
||||
annotation class FieldAnno
|
||||
|
||||
|
||||
@@ -0,0 +1,132 @@
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
public abstract @interface Anno1 {
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
public abstract @interface Anno2 {
|
||||
|
||||
public abstract int i() default 5;
|
||||
|
||||
public abstract java.lang.String s() default "ABC";
|
||||
|
||||
public abstract int[] ii() default {1, 2, 3};
|
||||
|
||||
public abstract java.lang.String[] ss() default {"A", "B"};
|
||||
|
||||
public abstract Anno1 a();
|
||||
|
||||
public abstract Colors color() default Colors.BLACK;
|
||||
|
||||
public abstract Colors[] colors() default {Colors.BLACK, Colors.WHITE};
|
||||
|
||||
public abstract java.lang.Class<?> clazz();
|
||||
|
||||
public abstract java.lang.Class<?>[] classes();
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
public abstract @interface Anno3 {
|
||||
|
||||
public abstract java.lang.String value();
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public enum Colors {
|
||||
/*public static final*/ WHITE /* = new Colors() */,
|
||||
/*public static final*/ BLACK /* = new Colors() */;
|
||||
|
||||
Colors() {
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public enum Enum1 {
|
||||
/*public static final*/ BLACK /* = new Enum1() */,
|
||||
@Anno1()
|
||||
/*public static final*/ WHITE /* = new Enum1() */;
|
||||
|
||||
Enum1() {
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@Anno3(value = "value")
|
||||
@Anno2(a = @Anno1(), clazz = TestAnno.class, classes = {TestAnno.class, Anno1.class})
|
||||
@Anno1()
|
||||
public final class TestAnno {
|
||||
|
||||
public TestAnno() {
|
||||
super();
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@Anno2(i = 6, s = "BCD", ii = {4, 5, 6}, ss = {"Z", "X"}, a = @Anno1(), color = Colors.WHITE, colors = {Colors.WHITE}, clazz = TestAnno.class, classes = {TestAnno.class, Anno1.class})
|
||||
@Anno3(value = "value")
|
||||
public final class TestAnno2 {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@Anno3(value = "field")
|
||||
private java.lang.String b = "property initializer";
|
||||
|
||||
public TestAnno2() {
|
||||
super();
|
||||
}
|
||||
|
||||
@Anno1()
|
||||
public final void a(@org.jetbrains.annotations.NotNull()
|
||||
@Anno3(value = "param-pam-pam")
|
||||
java.lang.String param) {
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@Anno3(value = "getter")
|
||||
public final java.lang.String getB() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Anno3(value = "setter")
|
||||
public final void setB(@org.jetbrains.annotations.NotNull()
|
||||
@Anno3(value = "setparam")
|
||||
java.lang.String p0) {
|
||||
}
|
||||
|
||||
@Anno3(value = "property")
|
||||
@java.lang.Deprecated()
|
||||
public static void getB$annotations() {
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,3 @@
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
// !KEEP_KDOC_COMMENTS_IN_STUBS
|
||||
/** Test. */
|
||||
class Test {
|
||||
|
||||
@@ -0,0 +1,153 @@
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Target(value = {})
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.annotation.Target(allowedTargets = {kotlin.annotation.AnnotationTarget.PROPERTY})
|
||||
public abstract @interface Anno {
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public enum EnumError {
|
||||
/*public static final*/ One /* = new EnumError() */,
|
||||
/*public static final*/ Two /* = new EnumError() */;
|
||||
|
||||
EnumError() {
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public abstract java.lang.String doIt();
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class Obj {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public static final Obj INSTANCE = null;
|
||||
|
||||
private Obj() {
|
||||
super();
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class Test {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String prop = "";
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private final java.lang.String prop2 = "";
|
||||
|
||||
public Test() {
|
||||
super();
|
||||
}
|
||||
|
||||
public final void method() {
|
||||
}
|
||||
|
||||
public final void method(int a) {
|
||||
}
|
||||
|
||||
public final void method(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String a) {
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getProp2() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getProp3() {
|
||||
return null;
|
||||
}
|
||||
|
||||
public final void setProp3(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String v) {
|
||||
}
|
||||
|
||||
@Anno()
|
||||
@java.lang.Deprecated()
|
||||
public static void getProp2$annotations() {
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class Test2 {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private final java.lang.String a = null;
|
||||
|
||||
public Test2(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String a) {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getA() {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class Test3 {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private final java.lang.String a = null;
|
||||
|
||||
protected Test3(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String a) {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getA() {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class Test4 {
|
||||
|
||||
public Test4() {
|
||||
super();
|
||||
}
|
||||
|
||||
public final void method() {
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public abstract interface TestComponent {
|
||||
}
|
||||
@@ -0,0 +1,196 @@
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Target(value = {})
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.annotation.Target(allowedTargets = {kotlin.annotation.AnnotationTarget.PROPERTY})
|
||||
public abstract @interface Anno {
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public enum EnumError {
|
||||
/*public static final*/ One /* = new EnumError() */,
|
||||
/*public static final*/ Two /* = new EnumError() */;
|
||||
|
||||
EnumError() {
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public abstract java.lang.String doIt();
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
/**
|
||||
* Obj.
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class Obj {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public static final Obj INSTANCE = null;
|
||||
|
||||
private Obj() {
|
||||
super();
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
/**
|
||||
* Test.
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class Test {
|
||||
|
||||
/**
|
||||
* prop.
|
||||
*/
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String prop = "";
|
||||
|
||||
/**
|
||||
* prop2.
|
||||
*/
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private final java.lang.String prop2 = "";
|
||||
|
||||
public Test() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* method().
|
||||
*/
|
||||
public final void method() {
|
||||
}
|
||||
|
||||
/**
|
||||
* method(int).
|
||||
*/
|
||||
public final void method(int a) {
|
||||
}
|
||||
|
||||
/**
|
||||
* method(String).
|
||||
*/
|
||||
public final void method(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String a) {
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getProp2() {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* get.
|
||||
*/
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getProp3() {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* set.
|
||||
*/
|
||||
public final void setProp3(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String v) {
|
||||
}
|
||||
|
||||
/**
|
||||
* prop2.
|
||||
*/
|
||||
@Anno()
|
||||
@java.lang.Deprecated()
|
||||
public static void getProp2$annotations() {
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
/**
|
||||
* Test2
|
||||
* Multiline
|
||||
* documentation.
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class Test2 {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private final java.lang.String a = null;
|
||||
|
||||
public Test2(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String a) {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getA() {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
/**
|
||||
* constructor.
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public final class Test3 {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private final java.lang.String a = null;
|
||||
|
||||
protected Test3(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String a) {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getA() {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class Test4 {
|
||||
|
||||
public Test4() {
|
||||
super();
|
||||
}
|
||||
|
||||
public final void method() {
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
/**
|
||||
* `/ * Failure * /`
|
||||
*/
|
||||
@kotlin.Metadata()
|
||||
public abstract interface TestComponent {
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
|
||||
package deprecated
|
||||
|
||||
@Deprecated("Deprecated annotation")
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package deprecated;
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@java.lang.Deprecated()
|
||||
public abstract @interface Anno {
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
package deprecated;
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@Anno()
|
||||
@java.lang.Deprecated()
|
||||
public final class Foo {
|
||||
@java.lang.Deprecated()
|
||||
private final int prop = 0;
|
||||
|
||||
public Foo() {
|
||||
super();
|
||||
}
|
||||
|
||||
@java.lang.Deprecated()
|
||||
public final void foo(int a) {
|
||||
}
|
||||
|
||||
@java.lang.Deprecated()
|
||||
public final int getProp() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@java.lang.Deprecated()
|
||||
public final int getFoo() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@java.lang.Deprecated()
|
||||
public final void setFoo(int value) {
|
||||
}
|
||||
|
||||
@java.lang.Deprecated()
|
||||
public static void getProp$annotations() {
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
|
||||
class JvmStaticTest {
|
||||
companion object {
|
||||
@JvmStatic
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
|
||||
class Test {
|
||||
companion object A {
|
||||
@JvmStatic
|
||||
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class Test {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
private static final java.lang.String test = "";
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public static final Test.A A = null;
|
||||
|
||||
public Test() {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public static final java.lang.String getTest() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@kotlin.Metadata()
|
||||
public static final class A {
|
||||
|
||||
private A() {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public final java.lang.String getTest() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@kotlin.jvm.JvmStatic()
|
||||
@java.lang.Deprecated()
|
||||
public static void getTest$annotations() {
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public abstract interface FooComponent {
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public static final FooComponent.Companion Companion = null;
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@kotlin.jvm.JvmStatic()
|
||||
public static java.lang.String create(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String context) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@kotlin.Metadata()
|
||||
public static final class Companion {
|
||||
|
||||
private Companion() {
|
||||
super();
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
@kotlin.jvm.JvmStatic()
|
||||
public final java.lang.String create(@org.jetbrains.annotations.NotNull()
|
||||
java.lang.String context) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////
|
||||
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
public final class JvmStaticTest {
|
||||
private static final int one = 1;
|
||||
public static final int two = 2;
|
||||
public static final char c = 'C';
|
||||
public final byte three = (byte)3;
|
||||
public final char d = 'D';
|
||||
@org.jetbrains.annotations.NotNull()
|
||||
public static final JvmStaticTest.Companion Companion = null;
|
||||
|
||||
public JvmStaticTest() {
|
||||
super();
|
||||
}
|
||||
|
||||
public static final int getOne() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@kotlin.Metadata()
|
||||
public static final class Companion {
|
||||
|
||||
private Companion() {
|
||||
super();
|
||||
}
|
||||
|
||||
public final int getOne() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@kotlin.jvm.JvmStatic()
|
||||
@java.lang.Deprecated()
|
||||
public static void getOne$annotations() {
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
|
||||
annotation class Anno
|
||||
|
||||
@Target(AnnotationTarget.PROPERTY, AnnotationTarget.CLASS)
|
||||
|
||||
Reference in New Issue
Block a user