New J2K: Fix printing no semicolon in enum class
This commit is contained in:
committed by
Ilya Kirillov
parent
dcf7895314
commit
17b96b8240
@@ -615,8 +615,18 @@ class NewCodeBuilder {
|
||||
override fun visitClassBody(classBody: JKClassBody) {
|
||||
val declarationsToPrint = classBody.declarations.filterNot { it is JKKtPrimaryConstructor }
|
||||
printer.block(multiline = true) {
|
||||
renderEnumConstants(declarationsToPrint.filterIsInstance())
|
||||
renderNonEnumClassDeclarations(declarationsToPrint.filterNot { it is JKEnumConstant })
|
||||
val enumConstants = declarationsToPrint.filterIsInstance<JKEnumConstant>()
|
||||
val otherDeclarations = declarationsToPrint.filterNot { it is JKEnumConstant }
|
||||
renderEnumConstants(enumConstants)
|
||||
if ((classBody.parent as? JKClass)?.classKind == JKClass.ClassKind.ENUM
|
||||
&& otherDeclarations.isNotEmpty()
|
||||
) {
|
||||
printer.printlnWithNoIndent(";")
|
||||
}
|
||||
if (enumConstants.isNotEmpty() && otherDeclarations.isNotEmpty()) {
|
||||
printer.println()
|
||||
}
|
||||
renderNonEnumClassDeclarations(otherDeclarations)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user