lib

Clone Tools
  • last updated 3 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
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/lib/test.tcl

  1. … 1 more file in changeset.
- simplified test exist code (on errors in regression test)

- generic/nsf.c: [current calledclass] used to return a literal "NULL" for cases of no active callstacked class. I fixed this, with [current calledclass] now reporting an empty string in these cases. - library/lib/test.tcl: Adjusted the explanations along the exit/return fix - tests/introspection.test: Added some basic testing of [current calledclass]

  1. … 3 more files in changeset.
- make sure that a failing regression test stops make; otherwise, errors can be easily missed

- library/lib/test.tcl: Stop using [exit] to interrupt test suite runs upon failure conditions. This led to unwanted garbage due to the non-returning character of [exit]. We now resort to a [return] variant which gently shuts down the NSF machinery before stopping. - TODO: marked dispo + exit/initcmd issues as done ...

  1. … 1 more file in changeset.
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/lib/doc-tools.tcl

  1. … 2 more files in changeset.
- nx.tcl * renamed "info parameter name" to "info parameter names" (since it returns a list of names) * renamed "info parameter name" to "info parameter names" (since it returns a list of names) * renamed "info slots" to "info slot objects" * additional method "info slot definition" * additional method "info slot name" * additional method "info properties" (alias to "info slot definition") * removed "info parameter slot" * use term "noaccessor" and "noconfig" to deactivate accessors or object-parameters in property definitions * don't show slots with noconfig in "info parameter names" * don't show slots with noconfig in "info parameter definition" * renamed slot property "configparam" to "config" * renamed "::nsf::methods::class::info::slots" to "::nsf::methods::class::info::slotobjects" * additional public method ObjectParameterSlot.getPropertyDefinition * updated and extended regression test

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