INNER CODE UNIT · Kotlin
hasKtxSerializableNavArgs
raamcosta/compose-destinations · compose-destinations-codegen/src/main/java/com/ramcosta/composedestinations/codegen/CodeGenerator.kt:106
val hasKtxSerializableNavArgs = destination.navArgs.any { navArg ->
if (navArg.type.isCustomArrayOrArrayListTypeNavArg()) {
navArg.type.value.firstTypeInfoArg.needsToUseKtxSerializable()
} else {
navArg.type.needsToUseKtxSerializable()
}
}
val hasKtxSerializableResultBackTypes = destination.parameters
.firstOrNull { it.type.importable.qualifiedName == RESULT_BACK_NAVIGATOR_QUALIFIED_NAME }
?.type?.value
?.typeArguments?.first()?.let { (it as? TypeArgument.Typed)?.type }
?.needsToUseKtxSerializable() ?: false
hasKtxSerializableNavArgs || hasKtxSerializableResultBackTypes
}
}