// WITH_RUNTIME // FILE: 1.kt package test data class Address( val createdTimeMs: Long = 0, val firstName: String = "", val lastName: String = "" ) inline fun String.switchIfEmpty(provider: () -> String): String { return if (isEmpty()) provider() else this } // FILE: 2.kt import test.* fun box(): String { val address = Address() val result = address.copy( firstName = address.firstName.switchIfEmpty { "O" }, lastName = address.lastName.switchIfEmpty { "K" } ) return result.firstName + result.lastName }