Since Actuate is using Reflect.setField(), it does not work in Neko for properties of a class that have setters. This change makes Actuate use Reflect.setProperty() instead. This API works with both properties and fields, so it shouldn't break anything.
I guess that an alternative approach would be to change the call to Reflect.hasField() in initialize() that is currently used to detect if something is a field. The documentation for Reflect.hasField() indicates that it may not work for classes, so Actuate probably shouldn't be using it there:
This is only guaranteed to work for anonymous structures.
Since Actuate is using
Reflect.setField()
, it does not work in Neko for properties of a class that have setters. This change makes Actuate useReflect.setProperty()
instead. This API works with both properties and fields, so it shouldn't break anything.I guess that an alternative approach would be to change the call to
Reflect.hasField()
ininitialize()
that is currently used to detect if something is a field. The documentation forReflect.hasField()
indicates that it may not work for classes, so Actuate probably shouldn't be using it there: