nsf

Clone Tools
  • last updated 9 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- nx::mongo: * handle fetch of embedded objects * added method count for mongo mapped classes * improve documentation

    • -34
    • +67
    /library/mongodb/example-nx-bi.tcl
- nx::mongo: * added mongo::count * obtain _id from mongo::insert * added mongo::Object.delete method for embedded and non-embedded objects * handling of mongo-embedded objects when destroying objects * simple bson pretty print function * extended examples

    • -0
    • +3
    /library/mongodb/example-nsf-mongo.tcl
    • -14
    • +50
    /library/mongodb/example-nx-bi.tcl
- nsf.c: added nsf::var::unset (provided so far just var::set)

- nsf:c: fix dispatch of setter without current method - extended regression tests

    • -0
    • +423
    /tests/methods.test
- nx::mongo: * first step towards handling embedded objects * one more example script: example-nx-bi.tcl

    • -0
    • +74
    /library/mongodb/example-nx-bi.tcl
    • -210
    • +285
    /library/mongodb/nx-mongo.tcl
- improve debug message

- nx.tcl: fix handling of arg in converter

- added experimental flag INHERIT_CLASS_METHODS

- improve documentation

- nx::mongo: update of the README file

- nx::mongo: Initial commit of the experimental mongoDB interface for nx

    • -0
    • +438
    /library/mongodb/Makefile.in
    • -0
    • +66
    /library/mongodb/README
    • -0
    • +3
    /library/mongodb/aclocal.m4
    • -0
    • +8893
    /library/mongodb/configure
    • -0
    • +314
    /library/mongodb/configure.in
    • -0
    • +54
    /library/mongodb/example-nsf-mongo.tcl
    • -0
    • +90
    /library/mongodb/example-nx-mongo.tcl
    • -0
    • +56
    /library/mongodb/mongoAPI.decls
    • -0
    • +230
    /library/mongodb/mongoAPI.h
    • -0
    • +140
    /library/mongodb/nsf.m4
    • -0
    • +745
    /library/mongodb/nsfmongo.c
    • -0
    • +261
    /library/mongodb/nx-mongo.tcl
    • -0
    • +3997
    /library/mongodb/tcl.m4
- reduce verbosity

- Let "info slot" return the slot object

- Improve locality

- 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

- added to "info slot /attName/"

* added pattern to "info slots"

- delete accessor when slot is destroyed

* added flag ?-type ...? to "info slots"

* nx: added flag ?-type ...? to "info lookup slots" * nsf: made all useful converters external symbols

- 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

- nsf.c: make sure, validCscPtr is always initialized - tested all regression tests with valgrind against tcl-trunk

- nsf.c: remove unnecessary test when compiled without NRE

* 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.

* make sure to create the cmds for objects with Tcl_NRCreateCommand() to choose trampoline-path in the trunk version of Tcl

* 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)

* some documentation/todo updates

* fixed bad interaction between filter and parameter alias

* 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)

    • -16
    • +16
    /library/serialize/serializer.tcl
  1. … 8 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