diff --git a/compiler/testData/asJava/lightClasses/DeprecatedEnumEntry.fir.java b/compiler/testData/asJava/lightClasses/DeprecatedEnumEntry.fir.java new file mode 100644 index 00000000000..be2c1259031 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/DeprecatedEnumEntry.fir.java @@ -0,0 +1,14 @@ +public enum E /* p.E*/ { + Entry1, + Entry2, + Entry3; + + @org.jetbrains.annotations.NotNull() + public static p.E valueOf(@org.jetbrains.annotations.NotNull() java.lang.String) throws java.lang.IllegalArgumentException;// valueOf(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public static p.E[] values();// values() + + private E();// .ctor() + +} diff --git a/compiler/testData/asJava/lightClasses/DeprecatedEnumEntry.java b/compiler/testData/asJava/lightClasses/DeprecatedEnumEntry.java index 75a7fd99266..36d317370ff 100644 --- a/compiler/testData/asJava/lightClasses/DeprecatedEnumEntry.java +++ b/compiler/testData/asJava/lightClasses/DeprecatedEnumEntry.java @@ -1,7 +1,7 @@ public enum E /* p.E*/ { - Entry1, + @kotlin.Deprecated(message = "a") Entry1, Entry2, - Entry3; + @kotlin.Deprecated(message = "b") Entry3; @org.jetbrains.annotations.NotNull() public static p.E valueOf(@org.jetbrains.annotations.NotNull() java.lang.String) throws java.lang.IllegalArgumentException;// valueOf(java.lang.String) @@ -11,4 +11,4 @@ public enum E /* p.E*/ { private E();// .ctor() -} \ No newline at end of file +} diff --git a/compiler/tests-common/tests/org/jetbrains/kotlin/asJava/PsiClassRenderer.kt b/compiler/tests-common/tests/org/jetbrains/kotlin/asJava/PsiClassRenderer.kt index 20232477ac7..075bda9c3bc 100644 --- a/compiler/tests-common/tests/org/jetbrains/kotlin/asJava/PsiClassRenderer.kt +++ b/compiler/tests-common/tests/org/jetbrains/kotlin/asJava/PsiClassRenderer.kt @@ -191,9 +191,16 @@ class PsiClassRenderer private constructor( } private fun PsiEnumConstant.renderEnumConstant(): String { - val initializingClass = initializingClass ?: return name + val annotations = this@renderEnumConstant.annotations + .map { it.renderAnnotation() } + .filter { it.isNotBlank() } + .joinToString(separator = " ", postfix = " ") + .takeIf { it.isNotBlank() } + ?: "" + val initializingClass = initializingClass ?: return "$annotations$name" return buildString { + append(annotations) appendLine("$name {") append(initializingClass.renderMembers()) append("}") @@ -311,4 +318,4 @@ class PsiClassRenderer private constructor( private fun PsiModifierListOwner.skipRenderingNullability(typeIfApplicable: PsiType?) = isPrimitiveOrNonExisting(typeIfApplicable)// || isPrivateOrParameterInPrivateMethod() -} \ No newline at end of file +}