File tree Expand file tree Collapse file tree 2 files changed +11
-11
lines changed
wu/seal/jsontokotlin/utils Expand file tree Collapse file tree 2 files changed +11
-11
lines changed Original file line number Diff line number Diff line change @@ -2,10 +2,10 @@ package extensions.wu.seal
22
33import extensions.Extension
44import wu.seal.jsontokotlin.model.classscodestruct.Annotation
5- import wu.seal.jsontokotlin.model.classscodestruct.DataClass
65import wu.seal.jsontokotlin.model.classscodestruct.KotlinClass
76import wu.seal.jsontokotlin.ui.jCheckBox
87import wu.seal.jsontokotlin.ui.jHorizontalLinearLayout
8+ import wu.seal.jsontokotlin.utils.runWhenDataClass
99import javax.swing.JPanel
1010
1111/* *
@@ -30,23 +30,20 @@ object KeepAnnotationSupportForAndroidX : Extension() {
3030
3131 override fun intercept (kotlinClass : KotlinClass ): KotlinClass {
3232
33- if ( kotlinClass is DataClass ) {
34- return if (getConfig(configKey).toBoolean()) {
33+ return kotlinClass.runWhenDataClass {
34+ if (getConfig(configKey).toBoolean()) {
3535
3636 val classAnnotationString = " @Keep"
3737
3838 val classAnnotation = Annotation .fromAnnotationString(classAnnotationString)
3939
40- val newAnnotations = mutableListOf (classAnnotation).also { it.addAll(kotlinClass. annotations) }
40+ val newAnnotations = mutableListOf (classAnnotation).also { it.addAll(annotations) }
4141
42- return kotlinClass. copy(annotations = newAnnotations)
42+ copy(annotations = newAnnotations)
4343 } else {
44- kotlinClass
44+ this
4545 }
46- } else {
47- return kotlinClass
48- }
49-
46+ } ? : kotlinClass
5047 }
5148
5249 override fun intercept (originClassImportDeclaration : String ): String {
Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ package wu.seal.jsontokotlin.utils
22
33import com.google.gson.JsonArray
44import com.google.gson.JsonPrimitive
5+ import wu.seal.jsontokotlin.model.classscodestruct.DataClass
56import wu.seal.jsontokotlin.model.classscodestruct.KotlinClass
67import java.lang.StringBuilder
78import java.util.regex.Pattern
@@ -228,4 +229,6 @@ operator fun String.times(count: Int): String {
228229fun StringBuilder.newLine (): StringBuilder {
229230 this .append(" \n " )
230231 return this
231- }
232+ }
233+
234+ fun <T > KotlinClass?.runWhenDataClass (block : DataClass .() -> T ) = (this as ? DataClass )?.run (block)
You can’t perform that action at this time.
0 commit comments