Hi,
The `defineProperty()` method does much more than making
`get()` return passed value; you'll need to additionally override
at least `getIds()` and `has()` for the loop to work:
```
class Wrapper : ScriptableObject() {
override fun has(name: String, start: Scriptable): Boolean {
return name == "name" || name == "surname"
}
override fun getIds(): Array<Any> {
return arrayOf("name", "surname")
}
}
```
type of question), so could be that overriding/reimplementing
parts of `ScriptableObject` isn't the best way to achieve it.
Best,
Ivan