serialization - Haxe CreateInstance and Properties -
i want deserialize object properties. object constructed setters/getters not correctly instancied if don't type explicitly object.
is intended behavior or bug ?
minimal example:
package models; class testclass { public var test(default, set): string; public function set_test(myvar) { trace("set " + myvar); return test = myvar; } } class main { public function new() { var typedtest: testclass = type.createinstance(type.resolveclass("models.testclass"), []); var untypedtest = type.createinstance(type.resolveclass("models.testclass"), []); trace(type.getclassname(type.getclass(typedtest))); //"models.testclass" trace(type.getclassname(type.getclass(untypedtest ))); //"models.testclass" typedtest.test = "12"; // "set 12" untypedtest.test = "15"; //nothing happens here reflect.setproperty(untypedtest, "test", "18"); // "set 18" } } i'm kinda confused one.
solution github answer
properties resolved @ compile-time means type has known. see http://haxe.org/manual/class-field-property-type-system-impact.html
reflect.setproperty triggered @ runtime...
Comments
Post a Comment