我有一个定制的lazy
实现,它允许指定一个键函数,然后在每次属性访问时调用该函数,如果它的返回值不等于最后一个返回值,则再次调用初始化器.
那么,有没有什么简单明了的东西可以指定为键函数,以便让实现判断特定变量x是否包含对另一个对象的引用?某一物体独一无二的价值?
var x = MyClass()
val myValue by lazy(key = x::IDENTIFIER) { ... }
否则,我将不得不让我的自定义实现接受(KeyType, KeyType) -> Boolean
函数,这样我就可以让它使用引用相等运算符.