mirror of
https://github.com/fankes/moshi.git
synced 2025-12-13 09:41:01 +08:00
Only assign setters if present (#1405)
* Only assign setters if present
Rather than generating
```kotlin
val result: Content
result = Content()
result.content = if (contentSet) content else result.content
result.text = if (textSet) text else result.text
```
This will now conditionally set
```kotlin
val result: Content
result = Content()
if (contentSet) {
result.content = content
}
if (textSet) {
result.text = text
}
```
* Spotless
This commit is contained in:
@@ -643,13 +643,14 @@ internal class AdapterGenerator(
|
|||||||
continue // Property already handled.
|
continue // Property already handled.
|
||||||
}
|
}
|
||||||
if (property.hasLocalIsPresentName) {
|
if (property.hasLocalIsPresentName) {
|
||||||
|
result.beginControlFlow("if (%N)", property.localIsPresentName)
|
||||||
result.addStatement(
|
result.addStatement(
|
||||||
"%1N.%2N = if (%3N) %4N else %1N.%2N",
|
"%N.%N = %N",
|
||||||
resultName,
|
resultName,
|
||||||
property.name,
|
property.name,
|
||||||
property.localIsPresentName,
|
|
||||||
property.localName
|
property.localName
|
||||||
)
|
)
|
||||||
|
result.endControlFlow()
|
||||||
} else {
|
} else {
|
||||||
result.addStatement(
|
result.addStatement(
|
||||||
"%1N.%2N = %3N ?: %1N.%2N",
|
"%1N.%2N = %3N ?: %1N.%2N",
|
||||||
|
|||||||
Reference in New Issue
Block a user