Подтвердить что ты не робот

Как ссылаться на экземпляр GroovyObject из методов MetaClass в Groovy?

Это надуманный пример того, что я хочу сделать, но минимально выражаю желаемое поведение. Я хочу ссылаться на экземпляр объекта, к которому вызывается запрос свойства. Сначала я попробовал 'this', но это относится к охватывающему классу, а не к экземпляру MetaClass или String.

String.metaClass.propertyMissing = { String name ->
    'I do not exist, but my name is ' + <the String instance> + '.' + $name
}
4b9b3361

Ответ 1

Вы можете ссылаться на объект с "делегатом":

String.metaClass.propertyMissing = { String name ->
    "I do not exist, but my name is $delegate.$name"
}


println "a".me