nsf

Clone Tools
  • last updated 9 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
* added switch "-source" to "info slots -closure" and "info lookup slots" (similar to "info lookup methods") * extended regression test

- nsf.c * first version of c-bases "info slots" for classes * switch "-closure" just for class info method

- nsf.c: * renamed old flag "-order" of "info mixin classes" to "-heritage" since it computes same heritage as in "info heritage" (but potentially for a list of classes) * added compatibility layer for xotcl2 * added lost option "-heritage" to "/cls/ info mixin classes" (was only there for "/obj/ info mixin classes") * extended regression test

- code cleanup

Merge branch '2.0.0-develop' of ssh://alice.wu-wien.ac.at/usr/local/src/git-repo/xotcl into 2.0.0-develop

- nsf.c: * ensure that explicit per-object-mixins are kept at the front in "info heritage" order and in "info precedence" when classes are added as POMs and PCMs * extended regression test

    • -11
    • +15
    /library/xotcl/tests/testx.xotcl
add one more comment

comment test cases a little

Merge branch '2.0.0-develop' of ssh://alice.wu-wien.ac.at/usr/local/src/git-repo/xotcl into 2.0.0-develop

- nsf.c: * added NsfClassListNoDup() to allow just single inserts * added NsfClassListPrint() for debugging * info heritage returns no duplicates * added prototype for NsfNoCurrentObjectError() * report "no current object" when no object is passed to a method. * code cleanup - extended regression test

- Makefile.in: Made data-flow dependencies on nsf's pkgIndex.tcl explicit for two targets, allowing the build process (make all) to be spread over multiple make jobs (make -j). Gave me a 15% speedup using two jobs on my two-core machine.

- nx.tcl: replace loops ::nsf::methods::[object|class]::* by explict command registrations

- nsf.c: * handle direct dispatches for aliased methods * new generalized error message: NsfNoCurrentObjectError()

- Adjusted nxdoc for the latest changes in the nsf/nx core: - library/lib/doc-tools.tcl: Reflected the renaming of class-object to final; substituted the new positioning declaration for the old-style objectparameter shadowing on Entity (for @doc); some minor cleanup - tests/doc.test: A number of tests did not survive the continued renaming from object -> class-object -> class; fixed them.

- generic/nsf.c: Re-arranging previous commit a little

- generic/nsf.c: Added a no-current-object guard to NsfProcAliasMethod(); otherwise, executing alias procs directly leads to a non-instructive assertion failure. - Corrected two typos - TODO: suggesting refactoring of no-self-object messages

Merge branch '2.0.0-develop' of ssh://alice.wu-wien.ac.at/usr/local/src/git-repo/xotcl into 2.0.0-develop

- library/nx/nx.tcl: Added the default procs for the init, defaultmethod, and unknown hooks to the ignore list for the ::nx::Object standard method set. Otherwise, upon a resourcing of nx.tcl (e.g., package forget nx;package req nx), they get registered as alias methods no matter what (due to residing in ::nsf::methods::object::*).

- replaced loops with NsfClassListFind()

- update TODO

-nsf.c: * factor out NsfClassListFind() * let result of "cls info heritage" return per-class mixins as well, otherwise it would be useless, since "cls info superclass -closure" would return the same

- be more precise on return value of alloc and create

- adding "profiling" to feature list

- nsf.c: factor out ClassListAddPerClassMixins()

- nsf.c: * moved implementation of ::nsf::method::delete to C * produce same error messages when methods are delete via nsf::method::delete and nsf::method::create {} {} * Prohibit deletion of methods during shutdown. Otherwise when destructors delete methods, some other destructors depending on these methods will fail. Cleanup deletes all methods anyway. * Provided alternative (faster) way of dispatching nsf::procs (can be tured off with NSF_INVOKE_SHADOWED_TRADITIONAL) * renamed NsfMethodCmd() into NsfMethodCreateCmd() for consistency * nsf works with OpenACS again (requires new nstrace.tcl, aolserver-openacs.tcl, and 01-debug-procs.tcl).

- serializer: * prefix warnings to ease tracking of warnings * some cleanup for handling aliased methods

    • -16
    • +17
    /library/serialize/serializer.tcl
- extended migration guide (introduction, feature lists, etc.)

- nx-mango.tcl: * support for unique indices * support for query operators "in" and "all"

    • -2
    • +5
    /library/mongodb/example-nsf-mongo.tcl
    • -2
    • +13
    /library/mongodb/example-nx-mongo.tcl
- nsfmongo.c: * support attribute selection lists for ::mongo::query (positive and negative selection)

    • -1
    • +5
    /library/mongodb/example-nsf-mongo.tcl
- nsfmongo.c: * upgrade to newest c-driver (verison 0.3) from git. * support connection to replica sets

    • -1
    • +1
    /library/mongodb/example-nsf-mongo.tcl