nsf

Clone Tools
  • last updated 8 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- nsf.c: provide low-level commands for managing profile data

- serializer: fixed a problem with object level alias

Adding buffer-local emacs settings to the *.c files

Removed noinit from the filter list

- Reactivated and extended the filtering support around the yuidoc theme. One can now filter according to various entity states (deprecated, missing, mismatch, protected, ...) - filter.html.yuidoc: Refactored the checkbox battery into a proper template. - Fixed some typos in templates - library/lib/doc-assets/yuidoc/ac-js: Refined the checkbox/visibility mechanism to honour defaultChecked states of checkboxes. - library/lib/doc-assets/yuidoc/api.css: checkbox/visibility selectors are now based on composite class selectors. - Removed @modifier and related selection statements throughout the code. Background: The call-protection state is inferred during verification, so there is no need to actually declare a method protected. Also, filtering in the templates breaks orthogonality when it comes to rendering doc entities at various spots (leftbar, ...). Method filtering can be applied during the initial processing step or visually in the final output. - Added print names for per-object methods

    • -0
    • +10
    /library/lib/doc-assets/filter.html.yuidoc
    • -14
    • +19
    /library/lib/doc-assets/yuidoc/ac-js
    • -6
    • +15
    /library/lib/doc-assets/yuidoc/api.css
- @class.html.yuidoc: Printing class-scope validation messages. - @object.html.yuidoc: Printing object-scope validation messages. - @method.html.yuidoc: Flattening list structure of validation messages when printed. - Revised and fixed status propagation - Fixed an issue when verifying forwarders/aliases which do not carry any verifiable parameter specifications. Also, I had forgotten to collect paramtersyntax docstrings for forwarders. Addresses an issue reported by Gustaf Neumann trying to make appear the proper paramsyntax of the Object->class() forwarder. - statusmark resolution is now aware of @use chains

- Simplified the render()/include() mechanism: I provide for some context-aware auto-completion of template specifics (name, format, theme). This avoids declaring template specifics redundantly. - For this purpose, renamed some of the templates to reflect their doc entity names: @object -> @object.html.asciidoc|yuidoc. - Theme-specific assets are now stored in a subdir of doc-assets/, named after the theme: doc-assets/yuidoc, doc-assets/asciidoc. - Adding the asciidoc assets subdir, including the asciidoc css - Renamed the theme "tmpl" to "yuidoc": This required to change the corresponding template extensions (*.tmpl -> *.yuidoc) and the include()/render() statements throughout the templates. - Removed the unneeded source.html.tmpl

    • -0
    • +106
    /library/lib/doc-assets/@class.html.asciidoc
    • -0
    • +236
    /library/lib/doc-assets/@class.html.yuidoc
    • -0
    • +62
    /library/lib/doc-assets/@command.html.asciidoc
    • -0
    • +117
    /library/lib/doc-assets/@command.html.yuidoc
    • -0
    • +30
    /library/lib/doc-assets/@method.html.asciidoc
    • -0
    • +83
    /library/lib/doc-assets/@method.html.yuidoc
    • -0
    • +20
    /library/lib/doc-assets/@object.html.asciidoc
    • -0
    • +101
    /library/lib/doc-assets/@object.html.yuidoc
    • -0
    • +45
    /library/lib/doc-assets/@package.html.asciidoc
    • -0
    • +75
    /library/lib/doc-assets/@package.html.yuidoc
    • -0
    • +388
    /library/lib/doc-assets/asciidoc/xhtml11.css
  1. … 38 more files in changeset.
- added gentstubs built with 8.5.9

- reanimated NSF_PROFILE

- updated documentation

    • -1142
    • +1211
    /doc/object-parameter.graffle
- nsf::relation: fixed error message when receiving and invalid class for relation type "class"

- update slot uml diagram - fixed incorrect (unwanted) call to unknown that caused creation of objects names __unknown when classes could not be resolved

- updated slot graphics

- added experimental flag WITH_IMPORT_REFS to deactivate automated alias deletion (seems, that this solves all issues we had before) - added flushing of bytecode on alias registration - added regression test

- added flag to AliasGet() to leave optional error message if alias data is removed - some cleanup in NsfProcAliasMethod(): handle not existing alias data, more careful refcounting

- added regression test

- use NsfCommandPreserve/NsfCommandRelease for tcd->aliasCmd as well. In case of epoched cmdPointers, refetch the cmd and it client data.

- nsf.c: changed handling of cmdPtrs in callstack content. * we use now explicit reference counting using NsfCommandPreserve/NsfCommandRelease * as a consequence, we do not need the following functions Nsf_DeleteCommandFromToken() and CallStackClearCmdReferences() any more. * the flag NSF_CSC_OBJECT_ACTIVATED is not needed anymore and was removed

- removed a small memory leak when a destroy method of an object o

deletes its grandparents namespace, containing also this class of o

(and its methods). Significantly eased by the change above.

- changed test in backport to use hashtablePtr->numEntries instead of pointer check

- new function Nsf_NextHashEntry() simular Tcl_NextHashEntry(), but handles triggered hash entry deletions - fixed reference count in AliasDeleteObjectReference()

- check in correct version

- use same test for class cleanup in NSDeleteChildren as well

- use a different test for detecting already deleted items

- updated todo

- nx.tcl: added default/initcmd for ObjectParameterSlot - added ::nx::Object as default for "superclass" slot to make default superclass explicit - unified interface for getParameterOptions - extended regression test

- Backport of fix for nsf : fixed a nasty bug within namespace deletion

- nsf.c: fixed a nasty bug within namespace deletion, when a deletion of one tcl cmd caused implicit deletions of other cmds in the same namespace. The classical idiom for looking over hash tables with Tcl_GetHashValue() and Tcl_NextHashEntry(hSrch) can lead to crashes (and has different behavior depending on the number of buckets). - added regression test

- nx.tcl: needsForwarder is true, when method "get" is specified on a slot - nx.tcl: Don't generate per-slot add/assign handlers, when not needed

- updated class diagram

- removed deactivated slot optimizer