Skip to content

Commit 594af9e

Browse files
committed
Simplefy Code
1 parent 94c4606 commit 594af9e

File tree

2 files changed

+11
-11
lines changed

2 files changed

+11
-11
lines changed

src/main/kotlin/extensions/wu/seal/KeepAnnotationSupportForAndroidX.kt

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ package extensions.wu.seal
22

33
import extensions.Extension
44
import wu.seal.jsontokotlin.model.classscodestruct.Annotation
5-
import wu.seal.jsontokotlin.model.classscodestruct.DataClass
65
import wu.seal.jsontokotlin.model.classscodestruct.KotlinClass
76
import wu.seal.jsontokotlin.ui.jCheckBox
87
import wu.seal.jsontokotlin.ui.jHorizontalLinearLayout
8+
import wu.seal.jsontokotlin.utils.runWhenDataClass
99
import 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 {

src/main/kotlin/wu/seal/jsontokotlin/utils/Extensions.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package wu.seal.jsontokotlin.utils
22

33
import com.google.gson.JsonArray
44
import com.google.gson.JsonPrimitive
5+
import wu.seal.jsontokotlin.model.classscodestruct.DataClass
56
import wu.seal.jsontokotlin.model.classscodestruct.KotlinClass
67
import java.lang.StringBuilder
78
import java.util.regex.Pattern
@@ -228,4 +229,6 @@ operator fun String.times(count: Int): String {
228229
fun 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)

0 commit comments

Comments
 (0)