nsf

Clone Tools
  • last updated 19 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- nsf.c: Since the method "objectparameter" is just based on the class (and object parameters are invalidates as well over the class), we moved the method from obj to class to avoid potential confusions

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

- added: "info slot handle /name/" "info slot parameter /name/"

- added: "info slot handle /name/" "info slot parameter /name/"

- nx.tcl, xotcl2.tcl: removed unsafe {*}$pattern

    • -18
    • +32
    /library/xotcl/library/xotcl2.tcl
- nsf.c * added "pattern" to "info lookup slots" * added "pattern" to "info slots" * extended regression test

update doc

* base objectparameter on "info slots -closure"

* 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