generic

Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- Implemented "interp alias" support for classes. In some cases. interp-aliased classes worked already without additional code, but e.g. in "... -superclass C ..." it failed. Without this feature, one could not reuse a class with a different namespace, unless it was explicitely "namespace exported" in the source. The problem was the implementation of "::nx::Attribute", which should not be exported in nx (most people do a "namespace import ::nx::*") because there is no need to do so, but ::xotcl::Attribute should reuse it - without subclassing). .... However, we still seem to have a problem, when the interp-aliased Class is exported and imported to a different namespace.

- removed definition of slots from nx, changed regression tests

examples to to ::attribute instead of -slots

  1. … 7 more files in changeset.
- moved all exports of nsf to predefined.tcl - made imports in xotcl2 and nx explicit

  1. … 2 more files in changeset.
- made the "next scripting laguage" a own, loadable tcl package (currently named nx, name is subject of change) - predefined.tcl is now pretty minimal.

  1. … 26 more files in changeset.
- added interp alias "nx::self" to "nx::core::current method" - changed "current proc" into "current method" in scripts and tests

  1. … 9 more files in changeset.
- xotcl.c: * new function GetObjectFromNsName() to obtail object or class from a fully qualified namespace name used in method handles (such as e.g. ::nx::core::classes::X) * new function MethodHandleObj() to return a tcl_obj containing the methodhandle * removed obsolete method getFullProcQualifier() * info methods obtain now object and/or class from fully qualified method names (method handles) if possible * return message handles in "current next", "current filterreg" and "... info filter ... -order", which can be used in "info method .... " for obtaining more details. * change all occurrances of "self" in next regression tests to current. - xotcl2.tcl * implemented "self" as a proc to provide extensibility and full backward compatibilty; this opens opportunity to replace now e.g. "self proc" by "current method", etc. * provide full compatibility for "self next", "self filterreg" and "... info filter ... -order", returning old-style multiword method handles (such as e.g. "::C instproc foo") - changed "next" to current in documentation framework and templates

  1. … 14 more files in changeset.
- iterated through doc.tcl-TODOs - changed CheckVarName to allow array names like e.g. a(::b) - extended regression test - fixed serializer to handle subobjects of explicitely exported objects

  1. … 3 more files in changeset.
- deactivated __next for now - iterated thought doc.tcl-TODOs - fixed path in invocation of xotcl doc script

  1. … 7 more files in changeset.
- added redefine-protected to the object template - added methodtype to object template - some documentation updates - some indentation/spacing improvements on xotcl.c - let ".... info method .... METHOD" return values, when METHOD contains namespace prefix. This can be used to obtain the parmeter definitions from nx::core - get forward definition from the original command

  1. … 3 more files in changeset.
- added @properties and has_property to the documentation classes. Current primary purpose: define, which methods are internally-called - added interanlly-called to the method object template

  1. … 3 more files in changeset.
- renamed mk_predefined.xotcl -> mk_predefined.tcl - renamed predefined.xotcl -> predefined.tcl - additional subcommand "info method parametersyntax <methodname>" returns parameters in a syntax similar to the tcl man pages - added ability to pass syntax for forwarded methods via set ::nx::core::signature(::nx::Object-method-forward) (experimental) - fixed documentation system to work with actual version - added undocumented methods for quality control in documentation - added checks for documented, but unavailable methods in documentation - added comparison of documented parameters vs. actual parameters in documentation

    • -0
    • +1456
    ./predefined.tcl
  1. … 9 more files in changeset.
- changed "Serializer.xotcl" to "serializer.tcl" (package name from xotcl::serializer to nx::serializer) - added stub for xotcl::serializer for backward compatibility - changed serializer to new namespaces - renamed xotcl.tcl to xotcl2.tcl - added proc finalize to xotcl2.tcl

  1. … 12 more files in changeset.
- changed stubs from xotcl to nx - first part of openacs updates

  1. … 4 more files in changeset.
- changed stubs from xotcl to nx

  1. … 9 more files in changeset.
- changed "require next" to "... nx" - changed "require next::test" to "... nx::test" - changed "require next::doc" to "... nx::doc"

  1. … 30 more files in changeset.
- get rid of ":::xotcl::use" - renamed tests based on next from .xotcl to .tcl - extended regression tests - use namespace ::nx::test instead of ::xotcl::test - use namespace ::nx::serializer instead of ::xotcl::serializer

  1. … 23 more files in changeset.
- Implemented "Class info parameter" in Tcl, aliases for xotcl. Now both definition of parameters and setting of __parameter are in Tcl.

  1. … 2 more files in changeset.
- generalized comment removal code in mk_predefined

- change mk_predefined to handle longish comments in predefined.xotcl (due to documentation system)

- changed one more int to size_t

- use size_t where appropriate - added notnull annotations

  1. … 2 more files in changeset.
- provide error messages for [objectproperty ... type ...] - replace 0 by NULL in calls to GetClassFromObj() - extended regression test

  1. … 2 more files in changeset.
- reanimated "info vars" to show locals in eval method

  1. … 2 more files in changeset.
- removed "[o exists varname]" from next scripting language

  1. … 5 more files in changeset.
- copied infoObjectMethod and infoClassMethod decls as comments to xotcl.c, aligned order of method definitions

- new function CheckVarName() to check for colons in instance variable names - unified name-checking in "nx::var import|exists|set" - extended regression test

  1. … 2 more files in changeset.
Merge branch 'nx-doc' into 2.0.0-develop

- I created a first draft of the nx language manual, based on the new next::doc facilities. It is still incomplete, but demonstrates the use of next::doc for authoring code documentation.

To re-create the language reference (which is not yet integrated into

the build environment), run:

./nextsh tests/doc.xotcl

You will then find an output directory "NextLanguageCore" in your

/tmp/ directory.

- The next::doc comments which are sourced for generating the manual

can be found in generic/gentclAPI.decls and

generic/predefined.xotcl. I tried to add most comments to the

former, as the complexity of the predefined script does not comfort

documentation comments (and vice versa).

- Applied many fixes to the templates (based on the needs of the

language reference)

  1. … 7 more files in changeset.
- migration guide overhaul

  1. … 1 more file in changeset.
- define ensemble-like command for accessing instance variables ::nx::var set ... ::nx::var import ... ::nx::var exists ...

- don't allow names with namespace separators or colon prefix in importvar/instvar - provide error message, when method (proc scope) is not found - fix array boundaries for looping on variables in importvar/instvar - extended regression test

  1. … 3 more files in changeset.