Index: TODO =================================================================== diff -u -r76571cce036b3d02efa2943454acfed2bc2f3351 -r6c3fb3fec815892805a0497d7485b59d20a79c84 --- TODO (.../TODO) (revision 76571cce036b3d02efa2943454acfed2bc2f3351) +++ TODO (.../TODO) (revision 6c3fb3fec815892805a0497d7485b59d20a79c84) @@ -3056,14 +3056,15 @@ TODO: - provide warning, when method variable is a noop (e.g. no value provided and no accessor is wanted) - - call user defined setter in object parameters? + - add test for class-level variable - set value always in per-object variable method? probably yes. - set value always in per-object attribute method? probably yes. - should we change interface for default value in attribute? probably not, same interface is used in methodparameters as well - we could rename "attribute" to "property" to make distinction between "variable" and "attribute/property" as well ("a property is a variable with accessors") + - call user defined setter in object parameters? - maybe use (position == -1) instead of (objectparameter == false) to save common vars - optimization of plain variable in per-object case Index: tests/parameters.test =================================================================== diff -u -r76571cce036b3d02efa2943454acfed2bc2f3351 -r6c3fb3fec815892805a0497d7485b59d20a79c84 --- tests/parameters.test (.../parameters.test) (revision 76571cce036b3d02efa2943454acfed2bc2f3351) +++ tests/parameters.test (.../parameters.test) (revision 6c3fb3fec815892805a0497d7485b59d20a79c84) @@ -1817,6 +1817,10 @@ nx::Test case variable { nx::Object create ::enterprise { + + # just to get a reference value for the timing + ? [list [self] eval {set :dummy 1}] "1" + # set 2 variables, one via variable, one via attribute ? [list [self] variable captain1 "James Kirk"] "" ? [list [self] attribute [list captain2 "Jean Luc"]] "::enterprise::captain2"