nsf

Clone Tools
  • last updated 2 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Removed some print statements and comments

Adding tests for multi-line param descriptions

- Fixed a relict of switching from ::nx::core::* to ::nsf::*. Removing the *::unsetUnknowArgs script fragment from proc bodies assumed 29 characters rather than 24 characters. This left proc bodies amputated when e.g. retrieved through [info method definition] in the presence of unknown (non-initialised) proc-local variables. - Corrected the submethod definition of Object->info()->is(): It did not check for the existence of the optional trailing parameter and so info()->is() barfed.

- Added an experimental gathering facility for part objects, relative to a given entity object. It returns a [dict] which allows to reuse the parts gathered throughout the templates rendering process. - Moved the process=@* methods to the doc object (this increases the cohesion). - Adjusted the current documentation artifacts for the changes (@object -> @class where applicable).

    • -14
    • +55
    /library/lib/doc-assets/class.html.tmpl
    • -15
    • +12
    /library/lib/doc-assets/entity.html.tmpl
    • -8
    • +25
    /library/lib/doc-assets/package.html.tmpl
    • -104
    • +146
    /library/lib/doc-tools.tcl
- Renamed the existing object.html.tmpl to class.html.tmpl and fix it to reflect class features. Providing an object-only template remains to be done. - Added an experimental gathering facility for part objects, relative to a given entity object. It returns a [dict] which allows to reuse the parts gathered throughout the templates rendering process. - Moved the process=@* methods to the doc object (this increases the cohesion). - Adjusted the current documentation artifacts for the changes (@object -> @class where applicable).

    • -0
    • +264
    /library/lib/doc-assets/class.html.tmpl
    • -264
    • +0
    /library/lib/doc-assets/object.html.tmpl
- eliminated "info classparent" and "info classchildren" - added tests to xotcl/tests/testx.xotcl to assure equivalence

    • -14
    • +32
    /library/xotcl/tests/testx.xotcl
- changed resolve_method_path to __resolve_method_path and made it protected

- reanimated 5 tests in tests/destroytest.tcl

- reanimated 5 tests in xotcl/tests/testx.xotcl

- Changed handling of "child objects": now, they are shown by default. - At the same time, the subobject "slot" was made protected to avoid its listing per default in "info methods" - unified slot parent-object creation handling - changed XOTcl info to new interface

    • -189
    • +182
    /library/xotcl/library/xotcl2.tcl
- some simplifications

- fix capitalization

- fixed "info methods" and added "-methodtype all" for setting class-only

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

Conflicts:

library/xotcl/library/xotcl2.tcl

    • -0
    • +152
    /library/xotcl/library/xotcl2.tcl
- changed info to new interface (partly done for nx, migration for xotcl to be done)

- Started separating the documentation into four documentation projects, each with its own documentation artifact: nsf (predefined.tcl), nsl/nx (nx.tcl), xotcl (xotcl2.tcl), libraries (several?). - Removed documentation blocks from gentclAPI.decls - Added default namespace resolution for documentation entities. @project and @package can now specify a default namespace which is applied to all relative (not fully qualified) entity names. This avoids the redundant writing of longish qualified entity names. As a @project may contain several @packages, multiple default namespaces can be specified. - Added a distinct @class entity family. - @project and @package can now trace the creation of specified part entities (@class, @object, @command) to be structurally linked to them. - Fixed search box support for @command views - Excluded template files from output directories

    • -1
    • +17
    /library/lib/doc-assets/command.html.tmpl
    • -4
    • +4
    /library/lib/doc-assets/entity.html.tmpl
    • -0
    • +151
    /library/xotcl/library/xotcl2.tcl
- added object info methods mixinguard, mixinclasses to objectInfoMethod - added class info methods mixinguard, mixinclasses to classInfoMethod - built a temporary solution for dispatcher "mixin", since forward mangles args - nx: we have now "obj info mixin guard name" instead of "obj info filter -guard name" - nx: we have now "obj info mixin classes ...." instead of "obj info filter ...." - updated migration guide

- started new interface bundles, objectInfoMethod and classInfoMethod for using new infrastructure - added object info methods filterguard, filtermethods, vars to objectInfoMethod - added class info methods filterguard, filtermethods to classInfoMethod - built a temporary solution for dispatcher "filter", since forward mangles args - nx: we have now "obj info filter guard name" instead of "obj info filter -guard name" - nx: we have now "obj info filter methods ...." instead of "obj info filter ...."

- added option "-returns" to Class.method - added subcmd to method/object method in nx - delete class methods in freeAllXOTclObjectsAndClasses() explicitly to handle potential double-deletes - extended regression test for subcmds

- implemented "object-methods-only" as alternative for prefix for invoke "object as a method" - added option "-returns" to Object.method

- use prefix sub= for methods invoked on "object as method" - change further instances of "my connection" to "[self]::connection" in xo*comm*

    • -3
    • +3
    /library/xotcl/apps/comm/webserver.xotcl
    • -1
    • +1
    /library/xotcl/library/comm/Access.xotcl
    • -1
    • +1
    /library/xotcl/library/comm/Httpd.xotcl
- changed requireNamespace to "require namespace" in lib/make.tcl

- implemented experimental delegating version of "object as method" that keeps the original self.

    • -40
    • +40
    /library/xotcl/library/comm/Httpd.xotcl
    • -6
    • +14
    /library/xotcl/tests/slottest.xotcl
- updated todo list

- deactivated "abstract"

- replaced "obj|cls mixinguard name cond" by "obj|cls mixin guard name cond" - replaced "obj|cls info mixinguard name" by "obj|cls info mixin -guard name" - replaced "cls object info mixinguard name" by "cls object info mixin -guard name" - removed XOTclObjInfoMixinguardMethod() - removed XOTclClassInfoMixinguardMethod() - extended regression test - updated migration guide

- replaced "obj|cls filterguard name cond" by "obj|cls filter guard name cond" - replaced "obj|cls info filterguard name" by "obj|cls info filter -guard name" - replaced "cls object info filterguard name" by "cls object info filter -guard name" - removed XOTclObjInfoFilterguardMethod() - removed XOTclClassInfoFilterguardMethod() - extended regression test - updated migration guide

- use now class-only for all methods methods of meta-classes. Methods of meta-classes are intended to be applied on classes, one should not change this via per-object mixins. - respect class-only in "info callable methods|method" - extended regression test - provided relation name "object-filter" to slot filter.

- updated TODO

- experimental method-property "class-only": this allows to make object save against per-object mixins of meta-classes. the flag is only used in the mixin-resolver - used for the time being in nx only for Class.info, but would apply as well for methods defined on both Object and Class.