lib

Clone Tools
  • last updated 15 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- nx.tcl * renamed "attribute" to "property" * renamed "defaultAttributeCallProtection" to "defaultPropertyCallProtection" * renamed "nx::Attribute" to ""nx::VariableSlot" * renamed "BootStrapAttributeSlot" to "BootStrapVariableSlot" * renamed "createBootstrapAttributeSlots" to "createBootstrapVariableSlots" * removed method attributes * implemented old attributes definition in xotcl2 as method "parameter"

  1. … 30 more files in changeset.
- library/lib/doc-tools.tcl: Ported over the nxdoc core to reflect recent changes (i.e., modified attribute() signature and honouring that ::nsf::method::setter|forward are expected to return the method handle)

- regularized more nsf::* names: renamed "nsf::createobjectsystem" => "nsf::objectsystem::create" renamed "nsf::unknown" => "nsf::object::unknown" renamed "nsf::dispatch" => "nsf::object::dispatch"

  1. … 17 more files in changeset.
- Allow for defining type specifications for @param entities as an @spec part. - Corrected some inconsistencies in the doc templates for attribute methods - Added object parametersyntax in @class templates (though they appear quite lengthy, keep them at the end of the day?) - Distinguish between the "cls" and "obj" as affices

    • -3
    • +4
    ./doc-assets/attributemethod.html.asciidoc
    • -24
    • +36
    ./doc-assets/attributemethod.html.yuidoc
  1. … 1 more file in changeset.
- migration guide * included change in "info heritage" * included "info slots" * included "info parameter" * included "delete method" * included "delete attribute"

  1. … 3 more files in changeset.
- 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.

  1. … 1 more file in changeset.
- test.tcl: * don't export Test per-default * define Test as nx::Test * make Test parameter count 1 the default, change to higher numbers where needed

  1. … 15 more files in changeset.
- some cleanup

- nsf: renamed nsf::isobject to nsf::object::exists - nsf: renamed nsf::qualify to nsf::object::qualify

  1. … 16 more files in changeset.
* Hopefully the last big naming change: Instead of writing "C class-object method foo {} {...}" one can write now "C class method foo {} {...}" to define a class method named "foo" for class "C". This naming change became possible by defining XOTcl's "class" (and "superclass") as object parameter only. To change a class of an object o, one has to use "o configure -class NEWCLASS". The term "object-class" looks alien to language beginners, the term "class" is much more straightforward. Changing classes or superclasses is seldomly used by typicall application programs.

For already existing nx scripts, changing "object-class" into

class should be straightforward.

* various documentation updates (migration guide, nx tutorial)

  1. … 19 more files in changeset.
- Provided proper template for hook methods; started partial support for validating Tcl packages (remains to be completeted, i.e., missing and mismatch support) - Fixed rendering for glossary back-references in the light of nested render() calls. - Refactored the rendering of overview lists/status into proper template; show per-project stats - Made @stashed filtering working; some fixes

    • -0
    • +88
    ./doc-assets/hookmethod.html.yuidoc
    • -0
    • +17
    ./doc-assets/overview.html.yuidoc
  1. … 2 more files in changeset.
- changed names of var handling commands in nsf: ::nsf::existsvar => ::nsf::var::exists ::nsf::importvar => ::nsf::var::import ::nsf::setvar => ::nsf::var::set

  1. … 12 more files in changeset.
- @project.html.yuidoc: reflect changes in asset names - body-chunked.html.yuidoc: Added this template, used to generate the chunked, yuidoc-based xowiki output - leftbar.html.yuidoc: Use link template - Renamed ac-js + api-js to ac.js + api.js - Added Monika's api-next.css - library/lib/doc-tools.tcl: for the xowiki renderer, I completed the asset export (requiring a tcllib installation!), some refactoring to allow for rendering xowiki-style links etc. - Revised TODO

    • -0
    • +27
    ./doc-assets/body-chunked.html.yuidoc
    • -0
    • +167
    ./doc-assets/yuidoc/ac.js
    • -0
    • +46
    ./doc-assets/yuidoc/api-next.css
    • -0
    • +42
    ./doc-assets/yuidoc/api.js
  1. … 1 more file in changeset.
- changed named of method handling commands in nsf: ::nsf::methodproperty => ::nsf::method::property ::nsf::method => ::nsf::method::create ::nsf::methoddelete => ::nsf::method::delete ::nsf::alias => ::nsf::method::alias ::nsf::forward => ::nsf::method::forward ::nsf::setter => ::nsf::method::setter (updated regression test, docs, ...)

  1. … 24 more files in changeset.
- updated migration guide

  1. … 3 more files in changeset.
- glossary.html.yuidoc: Added "Glossary" heading - Revised and commented TODO list

  1. … 1 more file in changeset.
- Added a first version of an xowiki renderer - Reworked the renderer infrastructure to allow for refining templates between renderers (e.g., xowiki-like links in the yuidoc theme etc.) introduces - Templates can now also be defined, stored, and maintained through Tcl scripts (rather than separate template files only). - Clarified the concepts of theme/layout/renderer etc. Major cleanup. - yuidoc: Fixed an issue with setting filter css classes while no filter checkboxes are available.

    • -0
    • +102
    ./doc-assets/@project.html.asciidoc
    • -0
    • +16
    ./doc-assets/@project.html.yuidoc
    • -0
    • +53
    ./doc-assets/body.html.yuidoc
    • -102
    • +0
    ./doc-assets/singlefile.html.asciidoc
  1. … 1 more file in changeset.
- nx.tcl: provide caching for computed values of object slots to make method objectparameter nearly twice as fast; direct changes on slots require a reconfigure call.

  1. … 1 more file in changeset.
- 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

    • -1
    • +3
    ./doc-assets/attributemethod.html.yuidoc
    • -0
    • +10
    ./doc-assets/filter.html.yuidoc
  1. … 2 more files in changeset.
- @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

  1. … 1 more file in changeset.
- 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
    ./doc-assets/@class.html.asciidoc
    • -0
    • +236
    ./doc-assets/@class.html.yuidoc
    • -0
    • +62
    ./doc-assets/@command.html.asciidoc
    • -0
    • +117
    ./doc-assets/@command.html.yuidoc
    • -0
    • +30
    ./doc-assets/@method.html.asciidoc
    • -0
    • +83
    ./doc-assets/@method.html.yuidoc
    • -0
    • +20
    ./doc-assets/@object.html.asciidoc
    • -0
    • +101
    ./doc-assets/@object.html.yuidoc
    • -0
    • +45
    ./doc-assets/@package.html.asciidoc
    • -0
    • +75
    ./doc-assets/@package.html.yuidoc
    • -0
    • +388
    ./doc-assets/asciidoc/xhtml11.css
    • -117
    • +0
    ./doc-assets/attributemethod.html.tmpl
  1. … 38 more files in changeset.
- updated documentation

  1. … 5 more files in changeset.
- 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.

  1. … 4 more files in changeset.
- add "filter" to the list of highlited words

- "asciidoc" theme: Completed a first template suite which renders an nxdoc project in terms of the html4/xhtml11 asciidoc backend. Added new templates: singlefile.html.asciidoc, class.html.asciidoc, attributemethod.html.asciidoc, command.html.asciidoc, link.html.asciidoc, listing.html.asciidoc, method.html.asciidoc, object.html.asciidoc, package.html.asciidoc, submethod.html.asciidoc. - nxdoc now distinguishes between rendering format, layout (multifile, singlefile, chunked) and refactored. All layout/format/theme handling, for now, is provided by ::nx::doc::Renderer. - First step towards refactoring/automating template resolution; see the TemplateData class. In a further step, this will permit us to remove redundant declarations of template details in render() and include() statements. - List and link generation are now adaptable based on dedicated templates per theme, e.g., link.html.tmpl|asciidoc. Note that these file-based templates might be replaced by scripted ones at a later point. - Fixed pretty naming of @package - Various refactorings, e.g. renderer mixin layers are now objects, rather than classes.

    • -0
    • +51
    ./doc-assets/attributemethod.html.asciidoc
    • -0
    • +106
    ./doc-assets/class.html.asciidoc
    • -0
    • +62
    ./doc-assets/command.html.asciidoc
    • -0
    • +4
    ./doc-assets/link.html.asciidoc
    • -0
    • +4
    ./doc-assets/link.html.tmpl
    • -0
    • +3
    ./doc-assets/listing.html.asciidoc
    • -0
    • +1
    ./doc-assets/listing.html.tmpl
    • -0
    • +30
    ./doc-assets/method.html.asciidoc
    • -0
    • +77
    ./doc-assets/multifile.html.tmpl
    • -0
    • +20
    ./doc-assets/object.html.asciidoc
    • -0
    • +45
    ./doc-assets/package.html.asciidoc
    • -0
    • +102
    ./doc-assets/singlefile.html.asciidoc
    • -0
    • +25
    ./doc-assets/submethod.html.asciidoc
  1. … 3 more files in changeset.
- doc-tools.tcl: make -name parameter of method new always required and "any" - doc-tools.tcl: make object parameter of Entity of type "any"

- adding obvously missing argument

- nx::pp: added flag "-linenumbers on|off" to render method

- adjust doc-tools (removed obsolete -public flag)

- library/lib/doc-tools.tcl: Some fixes, including adjusting @class.inherited() to return only doc entities of classes which are part of the same project as the inheritee. - library/lib/doc-tools.tcl: Integrated an xodoc-compat infrastructure and provided for processing xodoc packages (see processor.process=@package()). - tests/doc.test: Now also serves a nxdoc port of the XOTcl-langref package - library/xotcl/doc/langRef.xotcl: equipped with an empty namespace declaration (to please pkg_mkIndex.tcl) and import ::xotcl::@ by default (for convenience).

  1. … 2 more files in changeset.