Sobrecarga de setter en Kotlin

Al intentar definir un setter que acepta un tipo de parámetro que se puede usar para build una propiedad, así:

class Buffer(buf: String) {} class Foo { var buffer: Buffer? = null set(value: String) { field = Buffer(value) } } 

Aparece el post de error:

El tipo de parámetro Setter debe ser igual al tipo de propiedad

Entonces, ¿qué significa ser la forma de Kotlin de hacer esto?

    A partir de Kotlin 1.1, no es posible sobrecargar los ajustadores de properties. La request de function se rastrea aquí:

    https://youtrack.jetbrains.com/issue/KT-4075

    Actualmente, debe definir una function de extensión de buffer en String :

     val String.buffer : Buffer get() = Buffer(this) 

    y establecer el valor con

     Foo().buffer = "123".buffer