TODO

Clone Tools
  • last updated 19 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- Let "info slot" return the slot object

  1. … 1 more file in changeset.
- Improve locality

  1. … 1 more file in changeset.
- Fixed dispatch of defaultmethod for ensemble methods - Added compile flag DISPATCH_ALWAYS_DEFINED_METHODS (deactivated). So far, nx just uses dispatch on overloads or filters, but not on defines (possible to call e.g. "destroy" from a script, but internally the direct dispatch is used, as long there is no overload). The compileflag would force to use the slower dispatch always. - Extended regression test

  1. … 2 more files in changeset.
- added to "info slot /attName/"

  1. … 2 more files in changeset.
* added pattern to "info slots"

  1. … 1 more file in changeset.
- delete accessor when slot is destroyed

  1. … 1 more file in changeset.
* added flag ?-type ...? to "info slots"

  1. … 1 more file in changeset.
* nx: added flag ?-type ...? to "info lookup slots" * nsf: made all useful converters external symbols

  1. … 6 more files in changeset.
- gentclAPI.tcl: * renamed "nsfCmd" to simply "cmd", since the code can generate arbitrary tcl commands * allow type "int" in the .decls files - nsf.c * move several functions from "static" to "external" to make the code generator usable for submodules as well

  1. … 7 more files in changeset.
- nsf.c: make sure, validCscPtr is always initialized - tested all regression tests with valgrind against tcl-trunk

  1. … 2 more files in changeset.
- nsf.c: remove unnecessary test when compiled without NRE

  1. … 1 more file in changeset.
* The newest trunk version of Tcl in fossil has TclStackFree() and TclStackAlloc() removed We had to substitute this functions. Unfortunately, the lifetime of the strack structures has changed, so we had shuffle some interals around.

  1. … 4 more files in changeset.
* make sure to create the cmds for objects with Tcl_NRCreateCommand() to choose trampoline-path in the trunk version of Tcl

  1. … 2 more files in changeset.
* fix compilation for tcl-head in fossil * deactivate coro regression test, since it is apparently broken for tcl-head in fossil (stack frame seems to be lost after a yield)

  1. … 3 more files in changeset.
* some documentation/todo updates

  1. … 3 more files in changeset.
* fixed bad interaction between filter and parameter alias

  1. … 3 more files in changeset.
* Hopefully the last big naming change: Instead of writing "C class-object method foo {} {...}" one can write now "C class method foo {} {...}" to define a class method named "foo" for class "C". This naming change became possible by defining XOTcl's "class" (and "superclass") as object parameter only. To change a class of an object o, one has to use "o configure -class NEWCLASS". The term "object-class" looks alien to language beginners, the term "class" is much more straightforward. Changing classes or superclasses is seldomly used by typicall application programs.

For already existing nx scripts, changing "object-class" into

class should be straightforward.

* various documentation updates (migration guide, nx tutorial)

  1. … 22 more files in changeset.
* added methods ::nsf::methods::object::class and ::nsf::methods::class::superclass in order to make faster and nicer looking objectparameters (compared with forwarders) * nx: changed parameter -class to use ::nsf::methods::object::class * ns: fixed chicken egg problem of method objectparameter needing objectparameter by creating/destroying slot Class::slot::dummy; otherwise default values for slots would not be available * reduced verbosity of parameter forwarder

  1. … 6 more files in changeset.
* provided a fast path implementation for "defaultmethod" * provided default system methods for "init", "defaultmethod" and "unknown" * provided handles for system methods "alloc", "dealloc", "recreate", and "defaultmethod" * strip in dispatch invocations of "unknown" potental leading colons * removed c-level implementation of init again, since scripted one can be used now as well in registration of createobjectsystem * reduced verbosity * added defintions such that these methods can be loaded via ::nsf::method::require ::nx::Object unknown

  1. … 6 more files in changeset.
* added C-implemented method "init" for orthogonality * allow specification of system method handles in nsf::createobjectsystem * automatically register alias, when system-method handle was provided and a same-named method is defined

  1. … 5 more files in changeset.
* removed method residualargs from nx

  1. … 2 more files in changeset.
* reactivated "configure", since we plan to use it more prominently * added a configure flag for "class" * removed method "class" (should be used via "/obj/ configure -class ...")

  1. … 4 more files in changeset.
nx: * removed methods ::nx::Class.recreate and ::nx::Class.recreate from predefined method-set ::nx::Object.configure from predefined method-set

* added defintions such that these methods can be loaded via

::nsf::method::require ::nx::Class recreate

::nsf::method::require ::nx::Object configure

nsf:

* added CallDirectly() wrapper for calls to "init"

  1. … 4 more files in changeset.
- nx: * removed methods ::nx::Class.alloc and ::nx::Class.dealloc from predefined method-set

* added defintions such that these methods can be loaded via

::nsf::method::require ::nx::Class alloc

::nsf::method::require ::nx::Class dealloc

* make explicit that "method ... require" returns a method-handle

* removed misleading reference in error message, when a class-spefic

method was called on an object; solution is somewhat dangerous for

potentially unknwon client data

* added regression tests

  1. … 9 more files in changeset.
- serializer: catch for object-level alias apparently not needed anymore (search for ns_cache_flush) - silence compilation when compiled without dtrace

  1. … 2 more files in changeset.
- improved misleading error message for method modifiers "public" and "protected", as well as for "class-object" - extended regression test

  1. … 2 more files in changeset.
- changed names of var handling commands in nsf: ::nsf::existsvar => ::nsf::var::exists ::nsf::importvar => ::nsf::var::import ::nsf::setvar => ::nsf::var::set

  1. … 12 more files in changeset.
- updated TODO

- @project.html.yuidoc: reflect changes in asset names - body-chunked.html.yuidoc: Added this template, used to generate the chunked, yuidoc-based xowiki output - leftbar.html.yuidoc: Use link template - Renamed ac-js + api-js to ac.js + api.js - Added Monika's api-next.css - library/lib/doc-tools.tcl: for the xowiki renderer, I completed the asset export (requiring a tcllib installation!), some refactoring to allow for rendering xowiki-style links etc. - Revised TODO

  1. … 9 more files in changeset.
- Fixed cases of -flag=$value for type switch outside the context of "nsf::procs -ad" - extended regression test

  1. … 3 more files in changeset.