xotcl

Clone Tools
  • last updated 6 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- new printf-style error message generator: NsfPrintError() - simplified error handling: removed NsfVarErrMsg() and NsfErrMsg() and replaced it by NsfPrintError()

    • -30
    • +26
    ./library/store/XOTclGdbm/xotclgdbm.c
    • -29
    • +27
    ./library/store/XOTclSdbm/xotclsdbm.c
  1. … 8 more files in changeset.
- fixed bug with required last object parameter without provided value - extended regression test

  1. … 4 more files in changeset.
- introduced a few forms of multiplicty * 0..1 allow empty value * 0..* list, can be empty (equivalent to 0..n) * 1..* list, cannot be empty (equivalent to 1..n) - deprecate multivalued in parameter specs in favor of multiplicty - deprecate allowempty in parameter specs in favor of multiplicty - adjust regression test

  1. … 6 more files in changeset.
- make "... info children ?pattern?" compliant with XOTcl 1; if pattern contains no wildcard and is no absolute path, nsf completes it. (eg. Object create o; Object create o:x; o info children x" will return ::o::x) - extended regression test

  1. … 2 more files in changeset.
- quote name of referenced parameter in error message to ease reading - new parameter checker "parameter", performing an approximate checking for valid parameter specs - set NSF_ARG_CHECK_NONPOS only when there are multiple arguments - remove space checking for NSF_ARG_CHECK_NONPOS in favor of parameter checker

  1. … 9 more files in changeset.
- xotcl2.tcl: fix the default init handler - nsf.c: provide warnings when unchecked parameter values might conflict with nonpos args

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

- xotcl2.tcl: cleanup of forward implementation - xotcl2.tcl: provide debug version of default init method

- Fixed an issue when accessing partly initialised NsfParamDefs (created e.g. by [::nsf::methodproperty ... returns]) from [info method] subcommands, previously leading to invalid memory accesses. Added a test to tests/returns.test. - Minor correction: xotcl2's method_handle_to_xotcl was not aware of the change to "class-object" as scope modifier.

  1. … 2 more files in changeset.
- fixed bug in xotcl 2.0 "info forward" - extended regression test

  1. … 1 more file in changeset.
- rebuild pkgIndex.tcl more eagerly - added error handler to pkg_mkIndex when called via "make libraries-pkgindex" * just show warning and errors when rebuilding pkgIndex files * stop make in case of errors in pkg_mkIndex

  1. … 3 more files in changeset.
- added mode-hint for Emacs

- remove CVS tag

- remove verbosity

- xotcl2: fixed and completed results of "info instforward" and "info forward"

Please enter the commit message for your changes. Lines starting

- xotcl2.tcl: added empty namespace eval to make package indexer happy

- changed relation handling by evaluating the relationcmd in the parent context to keep evaluation order. - extend introspection "nsf::configure objectsystem": the command returns now all system methods in the syntax of nsf::createobjectsystem - "nsf::createobjectsystem" creates now a warning when an existing objectsystem is redefined and ignores the new definition attempt. This was done with the purpose to allow "package forget nx; package require nx" - Allow overwriting of redefine protected method during bootstrap to ease "package forget nx; package require nx" - forward had just "-objscope", no general "-frame method|object". Since forwarder have client data, they always push a method frame. So, the situation is different to nsd::alias and ::nsf::dispatch. Therefore, the flag "-objscope" was renamed to "-objectframe" to provide better consistency with "-frame object" - fixed bug, where error handling of invalid options in ForwardProcessOptions() could lead to a crash - return forwardoption "-earlybinding" via instrospection - extended regression test

  1. … 12 more files in changeset.
- improving error messages from argument parser - test "namespace current" and "self" in "contains" and "slots" regression test

  1. … 3 more files in changeset.
- fix escaped duplicate line

- activated SKIP_LAMBDA in nsfCallstack. As a consequence, we disallow resolving self/my ... from tcl-proc frames (use uplevel if necessary, avoid "namespace eval")

  1. … 3 more files in changeset.
- implemented exported command ::nsf::self as fast conveniance replacement for "::nsf::current object".

  1. … 8 more files in changeset.
- provided parametersyntax definitions for XOTcl 2.0 similar to nx for all methods without a spec (e.g. fur builtin Tcl cmds, forwarders)

  1. … 1 more file in changeset.
- added handling of unstacked csc entries (removed all DEBUG warnings).

  1. … 10 more files in changeset.
- use "nsf::configure debug" for value 1: compain about protected value >1: provide load messages for nx and xotcl - unset unneeded variables in ::nx namespace

  1. … 3 more files in changeset.
- replaced "-objscope" and "-nonleaf" by "-frame object|method|default" for nsf::alias and nsf::default - added functionality for "-frame method" to nsf::dispatch - made the order of argument in ::nsf::alias and method "alias" the same (always first the method, then "-frame ...") - extened regression test

  1. … 14 more files in changeset.
- changed option -expand in "info methods" and "info lookup methods" into "-path" to associate with the method path - changed method property name from "protected" to "call-protected" - changed nx::defaultMethodProtection to nx::defaultMethodCallProtection - nx::defaultAttributeProtection is used for scripted methods, forwarders and aliases - added nx::defaultAttributeProtection, used for setter and attributes

  1. … 16 more files in changeset.
- factored out ParamGetType() to obtain from a paramPtr a type string - parametersyntax: * changed "... -x arg ..." into ".... -x value ..." * changed multiple values notation from "list" to "..."

  1. … 3 more files in changeset.
- slots: * change name "initcmd" of "experimental slot features" to "defaultcmd" to avoid naming conflict the the initcmd executed at the initilization of a slot object (effects XOTcl as well) * make defaultcmd/valuecmd/valuechangedcmd working for nx (absence of trace method) * provide error message, when default/defaultcmd/valuecmd are used non-exclusively * make sure to init per-object slots after copy operations * make nx::Attribute.destroy more definsive * extend test cases

  1. … 4 more files in changeset.
- XOTcl 2: allow info slots for objects as well

- added public|protected to output of "info method definition" (needed to make serializer more sane, neccessary on the longer range)

  1. … 6 more files in changeset.