nsf

Clone Tools
  • last updated 1 hour ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- made assertion code optional - added and renamed additions compile flags NSF_WITH_INHERIT_NAMESPACES NSF_WITH_OS_RESOLVER NSF_WITH_ASSERTIONS

- nsf.c: code cleanup and documentation improvements

- nsf.c: renamed MethodNameString() to MethodName() (for consistency with ObjectName() and ClassName()) - raise error, when "obj :method ..." is invoked (colon misleading und not necessary) - remove colon from method name in error message "unable to dispatch method ...." - extended regression test

- added preprocessor swithch INHERIT_NAMESPACES_TO_CHILD_OBJECTS

- use MethodNameString() in ensemble-next instead of local logic

- library/lib/doc-tools.tcl: added [pinfo append] to collect multiple validation reports per entity - library/lib/doc-tools.tcl / owned_parts(): skip entities which are not structured themselves (namely parameters); otherwise they show up in the lefthand navigation or the autosearch box. also: glossary entries now disappeared from these navigation items (do we need them there?). - library/lib/doc-assets/command.html.tmpl: validation reports need to be fused using [join] - library/lib/doc-assets/command.html.tmpl: fixed subcommand support; adjusted and refined the per-command template, as well as @command validation. - Provided for parameter validation for @command and the extraction of the parametersyntax for commands - nsf.nxd: Added to the NSF documentation, namely completed a first round commands ::nsf::alias throughout ::nsf::log. Also: Refactored some glossary entries to nsf.nxd. - glossary: glossary entries can now be shared between projects; this required to make the back references aware of their project context. - @project: added a depends attribute which can be used to express inter-project dependencies. - An empty @doc string is now reported during validation - processor->process(): Added include/exclude filtering based on namespace patterns

    • -89
    • +99
    /library/lib/doc-assets/command.html.tmpl
    • -1
    • +1
    /library/lib/doc-assets/entity.html.tmpl
    • -3
    • +3
    /library/lib/doc-assets/package.html.tmpl
    • -144
    • +263
    /library/lib/doc-tools.tcl
- added -noCSSClasses to nx::pp render method

- make usage of nx in nx::serializer explicit

- better separation of state management and css concerns

- initial checkin of the nx pretty printer

    • -0
    • +232
    /library/lib/pp.tcl
- added deletion functionality to nsf::mixin - moved handling of methodNames of c-cmds to ResolveMethodName() - extended regression test

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 further tests for the object-system specific resolver

- nsf.c / ListCmdParams(): Fixed a crash scenario when relying on the methodName for trying to resolve the parametersyntax for C-implemented commands. In these cases, methodName stands for a null pointer, so we need to fall back to Tcl_GetCommandName(). - nsf.tcl / ::nsf::mixin: The proc implementation used "mixin" rather than "class-mixin" as (default) relation type.

- Experimental Object-System specific resolver in method bodies (allows resolving to the "right" next, self, etc. without namespace imports/paths) - deactivated automatic namespace path copying for child-objects - extended regression test

- frame skipping in cmdresolver apprantly not needed anymore

- source code formatted via new pretty printer class

    • -2015
    • +3375
    /doc/next-migration.html
- fixed in bug in ensemble-next (removed colon-prefix from methodname in next) - extended regression test

- removed method "setter" from migration guide

- removed method "setter" from migration guide

- serializer: updated serializer to avoid calls to "setter" - extended regression test

- nx::test: made differences in regression test easier to read

- doctools: changed "-slotclass" to "-class"

- removed method "setter" from nx - nx method "attribute": changed name of nonposarg from "slotclass" to "class" - fix bug for "C class-object attribute foo" (incorrect forwarder) - extended regression test

- Changed parametersyntax visualisation to show variable/replacable elements in italics. - Rewrote the method template for attribute accessors/mutators - Revised and refactored the resolution helper of member entities along an inheritance path to reflect member overloading - Reduced verbosity

    • -3
    • +3
    /library/lib/doc-assets/class.html.tmpl
    • -2
    • +2
    /library/lib/doc-assets/method.html.tmpl
- Adjusted the TODOs - Completed marking internally-called methods and provided a first documentation draft for them. - Fixed the indentation level for code listings - Now using method.html.tmpl to render per-object methods in class.html.tmpl - Fixed return (out parameter) validation

    • -53
    • +17
    /library/lib/doc-assets/class.html.tmpl
    • -1
    • +4
    /library/lib/doc-assets/method.html.tmpl
- "/obj/ info method parametersyntax /method/": return results of ::nsf::parametersyntax in case, the parametersyntax cannot obtained from a parameter definition (e.g. the method is a forwarder to a tcl cmd).

    • -19
    • +13
    /library/xotcl/library/xotcl2.tcl
- streamlined error messages - removed NsfErrBadVal() and replaced it with a generalized version of NsfObjErrType(

- made error messages more consistent - improved error messages for "returns" and "nsf::is" (omit parameter name)

- Adjusted for multiplicity types - Added new templates: attributemethod.html.tmpl is responsible for rendering accessor/mutators for attribute slots, object.html.tmpl for objects. - I now render attribute slots both in their object parameter view & a method view. Furthermore, I distinguish between the incremental vs. ordinary interface (as requested). - Fixed div boxing scheme (again) - Adjusted various places (method.html.tmpl, submethod.html.tmpl) to display the status marks (more to come) - Streamlined the method views, introducing Type and Protection sections - Started adopting the /obj/ prefix in parameter listings - Made the @use mechanism working again (under validation). Once tiny bit needs to be fixed: The upward propagation of status messages if @use is in place. - Removed the cause for redundant validation calls by traversing the entity hierarchy only once. - Added nx-specific tracers (to distinguish between ensemble and slot objects, ...) For now, they work fine, but are tangled with non-nx tracing. This needs refactoring. - Added another nx-specific tracer which tackles the issue of the __resolve_method_path helper. While quite cumbersome and coupling nxdoc to many internal design decisions of nx, it turns any change in nx.tcl unnecessary. - Fixed ::nx::doc::handleinfo to deal with objects as methods (the case for intermediate ensemble objects). - Added ::nsf::setter support - Fixed the validation support for submethod structures. - Some cleanup (to be continued)

    • -0
    • +78
    /library/lib/doc-assets/attributemethod.html.tmpl
    • -8
    • +20
    /library/lib/doc-assets/class.html.tmpl
    • -1
    • +1
    /library/lib/doc-assets/command.html.tmpl
    • -22
    • +24
    /library/lib/doc-assets/entity.html.tmpl
    • -73
    • +74
    /library/lib/doc-assets/method.html.tmpl
    • -0
    • +101
    /library/lib/doc-assets/object.html.tmpl
    • -142
    • +276
    /library/lib/doc-tools.tcl