Hi, I have a doubt about Kotlin lazy property delegation
For example, this property delegate with lazy:
val x: String by lazy{...}
When I decompile the Kotlin code into Java code, I see that the getX() method is not ultimately called this method
public inline operator fun <T> Lazy<T>.getValue(thisRef: Any?, property: KProperty<*>): T = value
It is the getter method of value, which is
getValue()
instead of
getValue(thisRef: Any?, property: KProperty<*>)
So, I don’t understand how the method
getValue(thisRef: Any?, property: KProperty<*>)
is called during the execution of lazy