Allow user adapters to convert null to non-null in codegen.

Delegate to installed adapters instead of checking for null.
This commit is contained in:
Eric Cochran
2018-09-11 01:02:38 -07:00
parent 9050e42038
commit 8e151b1df3
3 changed files with 79 additions and 7 deletions

View File

@@ -69,11 +69,9 @@ internal data class DelegateKey(
}
val finalArgs = arrayOf(*standardArgs, *args)
val nullModifier = if (nullable) ".nullSafe()" else ".nonNull()"
return PropertySpec.builder(adapterName, adapterTypeName, KModifier.PRIVATE)
.addAnnotations(jsonQualifiers)
.initializer("%1N.adapter%2L(%3L$initializerString)$nullModifier", *finalArgs)
.initializer("%1N.adapter%2L(%3L$initializerString)", *finalArgs)
.build()
}
}