import kotlin.reflect.KProperty import kotlin.reflect.KProperty1 class DVal>(val kmember: P) { operator fun getValue(t: T, p: KProperty<*>): R { return kmember.get(t) } } class Value(var text: String? = null) class Test { val Value.additionalText by DVal(Value::text) } // field: Test::additionalText$delegate // jvm signature: LDVal; // generic signature: null