From fe047a0092f97bae933ff7c6df1b541604e98937 Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov Date: Sat, 1 Dec 2018 17:03:24 +0300 Subject: [PATCH] Minor: extract function --- .../kotlin/jvm/abi/JvmAbiAnalysisHandlerExtension.kt | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/plugins/jvm-abi-gen/src/org/jetbrains/kotlin/jvm/abi/JvmAbiAnalysisHandlerExtension.kt b/plugins/jvm-abi-gen/src/org/jetbrains/kotlin/jvm/abi/JvmAbiAnalysisHandlerExtension.kt index e0763d8a407..031516922de 100644 --- a/plugins/jvm-abi-gen/src/org/jetbrains/kotlin/jvm/abi/JvmAbiAnalysisHandlerExtension.kt +++ b/plugins/jvm-abi-gen/src/org/jetbrains/kotlin/jvm/abi/JvmAbiAnalysisHandlerExtension.kt @@ -69,6 +69,15 @@ class JvmAbiAnalysisHandlerExtension( outputs.add(AbiOutput(file, outputFile.sourceFiles, outputFile.asByteArray())) } + removeUnneededClasses(outputs) + outputs.forEach { it.flush() } + return null + } + + /** + * Removes private or local classes from outputs + */ + private fun removeUnneededClasses(outputs: Iterable) { val removedClasses = HashSet() for (output in outputs) { if (!output.file.isClassFile()) continue @@ -94,9 +103,6 @@ class JvmAbiAnalysisHandlerExtension( FilterInnerClassesVisitor(removedClasses, Opcodes.ASM6, writer) } } - - outputs.forEach { it.flush() } - return null } private object AbiBinaries : ClassBuilderFactory {