- … 1 more file in changeset.
StatsCommits this week: 0Commit Activity52 week commits volumeCommits by dayCommits by hourCommit calendarMost active committers (90 days) |
Monday 07 Mar 2016
Saturday 19 Dec 2015
8:40 pm
serializer: - added handling of "-debug" and "-deprecated" in serializer - allow export of nsfprocs via "exportMethods declaration" in order to keep otherwise excluded cmds in the result. this allows us to keep nsf::debug::* or nsf::deprecated definitions in the blueprint in OpenACS. - hardened serializer (use e.g. "::namespace" instead of "namespace" when there is a potential conflict with a method named "namespace", prefer nsf::directdispatch, etc.) - extended regression test
Thursday 01 Oct 2015
3:14 pm
- new command nsf::method::forward::property in analogy to nsf::method::property for reading+writing introspection of forwarders (important for serializer, when different target objects are specified, to map the per-object forwarder) - extended regression test - bumped version number of serializer to 2.1
Wednesday 21 May 2014
11:56 am
nx.tcl: - use set/get/add as slot methods for get/configure/incremental operations - demangle slots for nx/xotcl2 further
xotcl2: - use assign/get/add as slot methods for get/configure/incremental operations - use object system configuration for -slot.get and -slot.set
Tuesday 20 May 2014
12:02 pm
nx.tcl: - remove setter methods from BootstrapVariableSlots - reducing interface of BootstrapVariableSlots by setting methods protected
Saturday 17 May 2014
Tuesday 25 Feb 2014
12:59 pm
nsf.c: - change name of enumeratorConverterEntry to Nsf_EnumeratorConverterEntry, move it with NSF_ARG_* flags to tcl.h to make it available in derived modules using the converter - Added editor hints for a more uniform appearance
Saturday 25 Jan 2014
5:33 pm
nsf.c: - new command ::nsf::object::alloc /class/ /obj/ ?/script/? alloc an object and execute script in the context. Can be used to regenerate an object in a old state.
serializer: - fixed loading of objects with required data in the blueprint (many thanks for david hopfmueller for reporting this) - make use of nsf::object::alloc (1 command instead of 1 create + 2 evals) - these changes imprived laading time of blueprint by about 25% for OpenACS+xowiki
Thursday 06 Jun 2013
9:57 am
nx::test: - change test cases to newer interface - don't use "namespace import nx::*" in test cases when not required
Friday 17 May 2013
10:13 pm
- nx.tcl: handle "incremental" in slot reconfigure - nx.tcl: change defaultAccessor to "none"
2:02 pm
Method and configure parameter reform, Part 2: In order to streamline the interface further, we tried to follow the idea to use "... info /plural word/" to obtain a set of handles, and then a separate call to obtain the details. Therefore, we replaced
/cls/ info slot objects /cls/ info slot definitions /cls/ info slot names /obj/ info object slot objects /obj/ info object slot definitions /obj/ info object slot names /obj/ info lookup slots by /cls/ info slots ?-type /type/? ?-closure? ?-source all|application|baseclasses? ?/pattern/? /obj/ info object slots ?-type /type/? ?/pattern/? /obj/ info slot definition /obj/ /obj/ info lookup slots ?-type /type/? ?-source all|application|baseclasses? ?/pattern/?
Monday 29 Apr 2013
Tuesday 23 Apr 2013
2:16 pm
Object-method Reform: - changed interface to object specific commands by requiring an ensemble named "object". The rational behind is essentially to use always the same info command to retrieve object specific methods, no matter whether these are defined on a plain object or an a class object (does not break the "contract" what e.g. "info method" returns).
Now we define methods via: /cls/ method foo {args} {...body...} /cls/ object method foo {args} {...body...} /obj/ object method foo {args} {...body...} Similarly, aliases, forwards and mixins are defined, e.g. /cls/ mixin add ... /cls/ object mixin add ... /obj/ object mixin add ... /obj/ require object method ... The same change propagated as well to the "info" method. Now we have: /cls/ info methods ... /cls/ info object methods ... /obj/ info object methods ... Similar, the object parametererization uses /cls/ create obj -object-mixin M /cls/ create obj -object-filter f /metacls/ create cls -mixin M1 -object-mixin M2 /metacls/ create cls -filter f1 -object-filter f2 - as a consequence, a) "/cls/ class method ...", "/cls/ class alias ...", "/cls/ class forward ...", "/cls/ class filter ...", "/cls/ class mixin ...", "/cls/ class info ..." "/obj/ class method require method ..." "/obj/ class method require public method ..." "/obj/ class method require protected method ..." "/obj/ class method require private method ..." were dropped b) "/obj/ method ....", "/obj/ alias ....", "/obj/ forward ...." "/obj/ filter ...." "/obj/ mixin ...." "/obj/ info method*" "/cls/ create obj -mixin M" "/cls/ create obj -filter f" "/obj/ method require method ..." "/obj/ method require public method ..." "/obj/ method require protected method ..." "/obj/ method require private method ..." were dropped - added package nx::class to allow optionally the "class" notation "/cls/ class method ..." (and friends, see (a)), and "/cls/ class info ... - added package nx::plain-object-method to allow optionally plain method b) "/obj/ method ...." (and friends, see (b)) - add support to slots to use ensemble methods as setters
Tuesday 25 Sep 2012
1:00 pm
Property Reform Part 2: better handling of per-object properties nsf.c: - changed "/class/ __objectconfigure" to "/obj/ __objectconfigure" to be able to handle per-object properties on classes properly. - renamed "info method parametersyntax" -> "info method syntax" - renamed "/obj|cls/ info method parametersyntax" into "/obj|cls/ info method syntax" - replaced "::nsf::methods::class::info::objectparameter" by "::nsf::methods::object::info::objectparameter" - new command "::nsf::parameter::specs ?-configure? ?-noposargs? slotobjs": convert provided slotobjs into a list of parameter specs - new command "::nsf::parameter::get list|name|syntax parameterspec": convert parameter spec into syntax form, or retrieve pieces of information from it (can be extended in the future) - added more or less generic list handling functions TclObjListFreeList(), TclObjListNewElement() and TclObjListAdd() used by "::nsf::parameter::specs" - replaced "::nsf::method::property /obj/ -per-object /name/ slotcontainer ?value?" by "::nsf::object::property /obj/ slotcontainer ?value?" - added "::nsf::object::property /obj/ hasperobjectslots ?value?"
nx.tcl: - new info methods * "/obj/ info lookup parameter definitions" * "/obj/ info lookup parameter names" * "/obj/ info lookup parameter list" * "/obj/ info lookup parameter syntax" - changed "/cls/ info parameter definition ?name?" into "/cls/ info parameter definitions ?name?" since ir returns a list. Still, "list" or "syntax" won't be plural
Tuesday 10 Apr 2012
6:58 pm
- serializer: * pertain perobjectdispatch and keepcallerself in serializer * extend regression test
3:13 pm
- serializer: * make [::Serializer deepSerialize -ignoreVarsRE "" $o] behave like [::Serializer deepSerialize $o], since learn@wu depends on that, and a value for ignoreVarsRE of empty looks more like an omitted value than a regular expression, that should match everything. * extended regression test
Thursday 16 Feb 2012
2:22 pm
- tests/serialize.test: Added some basic regression tests, in particular to challenge the filter options provided by Serializer->deepSerialize() and Serializer->all(). - Included a test for commit 595e6a2. - Along the line, two minor issues where fixed: 1) Set Serializer->ignore() to public, otherwise the various external message sends to this method would fail; 2) Object-serialize() did not distinguish between serialising a per-object or per-class container properly; as a consequence, per-object containers were not restored at all. Add a test covering this.
Problem fetching more activity
|