Setter no pidió Kotlin POJO

He escrito un POJO (o POKO) simple y quiero usarlo para el data binding dentro de una aplicación de Android escrita en Kotlin. Mi problema, el código dentro del setter no se llama. Esperaba ver Set value to <> en la console. ¿Alguna idea de por qué esto no está sucediendo?

Este es el código que publiqué en try.kotlinlang.org :

 fun main(args: Array<String>) { var myData = MyData() println(myData.helloWorldText) println(myData.helloWorldText) println(myData.helloWorldText) println(myData.helloWorldText) } class MyData { private val values = listOf<String>("Oh...", "Oh captain...", "Oh captain, my ...", "Oh captain, my captain...") private var i = -1 var helloWorldText: String = "" get() = values[++i % values.size] set(value) { println("Set value to " + field) } } 

Antecedentes: más adelante quiero hacer que mi POJO implemente android.databinding.Observable y llame a registry.notifyChange(this, BR.helloWorldText) dentro del setter.

El código nunca llamó al setter, solo al getter.

Gracias por los comentarios que ayudaron a resolver el problema. Este código se está ejecutando como se esperaba:

 fun main(args: Array<String>) { var myData = MyData() println(myData.helloWorldText) myData.nextValuePlease() println(myData.helloWorldText) } class MyData { private val values = listOf<String>("Oh...", "Oh captain...", "Oh captain, my ...", "Oh captain, my captain...") private var i = 0 fun nextValuePlease() { i = ++i % values.size helloWorldText = helloWorldText } var helloWorldText: String get() = values[i] set(value) { println("Set value to \"" + value+"\"") } } 
  • Android: duplicación de fragments en FragmentManager
  • Por qué usar en línea sin lambdas
  • Kotlin: accede a la class enum anidada desde Java
  • No se puede enviar datos de formulario / múltiples con Volley
  • ¿Cómo replace webView por webView personalizado?
  • Kotlin: ¿Cuál es la diferencia entre Aplicar y También
  • ¿Cómo hacer un COUNT (*) con GROUP BY en Kotlin?
  • Cómo definir una function en línea llamando a una function de variable que se puede anular
  • Conversión de files de definición de TypeScript a Kotlin
  • Errores de compilation de Codename One relacionados con Kotlin
  • ¿Hay alguna forma de get el comportamiento de FixedTreadPool usando corutinas?