parameters.tcl

Clone Tools
  • last updated 16 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- rennamed tests/subcmd.tcl info tests/submethods.tcl - moved relevant tests from tests/parameters into tests/submethods.tcl

  1. … 4 more files in changeset.
- refactored next and argument passing (new methods NextGetArguments(), NextSearchAndInvoke() and CallStackFindEnsembleCsc()) - doing an internal next in cases where a method ensemble does not contain the called submethod - added regression tests for partial ensembles

  1. … 4 more files in changeset.
- implemented next within ensemble methods - added regression tests for next within ensembles - added regression tests for upvar with ensembles

  1. … 3 more files in changeset.
- added test case for next in ensemble

- renamed "parameter" into "attributes" in nx - renamed "info parameter" into "info attributes" in nx - updated migration guide - fixed several common typos

  1. … 13 more files in changeset.
- checked equivalence of the following two commands in respect to fully-qualified names ::nsf::dispatch $obj ::nsf::cmd::ObjectInfo2::hastype $class ::nsf::parametercheck object,type=$class $obj extended regression test (paramters.tcl)

  1. … 1 more file in changeset.
- new flag for configure: "nx::configure checkarguments on|off" - turn off argument-checking for non-converters, when checking is off (per default, it is on) - extended regression test for optional argument checking

  1. … 8 more files in changeset.
- new flag for configure: "nx::configure checkresult on|off" - turn off result-checking for non-converters, when checking is off (per default, it is on) - extended regression test for optional result checking

  1. … 6 more files in changeset.
- renamed slot attribute "noforwarder" to "nosetter" - method parameter can now use option "nosetter" to allow object parameterization witout providing a setter method (example: "Class create C -parameter {x:integer,nosetter}") - extended regression test to include "nosetter"

  1. … 2 more files in changeset.
- new parameter option "convert" to signal that an application specific parameter checker should convert the value (takes the result of the methods as conversion result) - added parameters for slots "allowemtpy" and "convert" - extended regression test

  1. … 5 more files in changeset.
- extended regression test

- added flag -complain to ::nsf::is - removed ::nsf::parametercheck

  1. … 4 more files in changeset.
- report "invalid parameter" in nsf::is and parametercheck, even when no-complain is used.

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

  1. … 2 more files in changeset.
- changed argument order on nsf::is to make it conformant with Tcl conventions - removed objectproperty, replaced it by ::nsf::is - move functionalizy of objectproperty to make "obj info is ..." more efficient

  1. … 13 more files in changeset.
- minimal changes

  1. … 3 more files in changeset.
- replaced argument order on objectproperty to make it conformant with Tcl conventions - updated migration guide

  1. … 11 more files in changeset.
- removed "infoObjectMethod" and "infoClassMethod" - replaced ::nsf::cmd::ClassInfo2 by ::nsf::cmd::ClassInfo - replaced ::nsf::cmd::ObjectInfo2 by ::nsf::cmd::ObjectInfo

  1. … 7 more files in changeset.
- introduced ::nsf::isobject - replaced in all scripts "::nsf::objectproperty ... object" by isobject

  1. … 14 more files in changeset.
- removed "nsf::is ... -type ...." - adoped emulation layer in xotcl2 accordingly - extended regression test

  1. … 5 more files in changeset.
- removed "objectproperty .... type" - renamed isSubType() to IsSubType() - adoped emulation layer in xotcl2 accordingly - added two tests for "info has type" in regression test

  1. … 7 more files in changeset.
- removed "objectproperty .... hasmixin" - removed "nsd::is ... -hasmixin ...." - removed type-converter "type=hasmixin" - adoped emulation layer in xotcl2 accordingly - added two tests for "info has mixin" in regression test

  1. … 6 more files in changeset.
- implemented XOTclObjInfoHasMixinMethod() and XOTclObjInfoHasTypeMethod() - renamed "$obj info hasnamespace" to "$obj info has namespace" - added "$obj info has mixin $class" - added "$obj info has type $class" - extended regression test for parametercheck/objectproperty/is

  1. … 6 more files in changeset.
- implemented experimental delegating version of "object as method" that keeps the original self.

  1. … 8 more files in changeset.
- use now class-only for all methods methods of meta-classes. Methods of meta-classes are intended to be applied on classes, one should not change this via per-object mixins. - respect class-only in "info callable methods|method" - extended regression test - provided relation name "object-filter" to slot filter.

  1. … 5 more files in changeset.
- renamed "info method name ..." into "info method handle ...", since it returned already the handle - renamed ListMethodName() to ListMethodHandle() - changed output of "info callable -which ..." from definition to method handle - renamed "info callable -which ..." into "info callable method ..." - updated regression test to reflect the changes

  1. … 13 more files in changeset.
- removed method "autoname" from nx.tcl - added "method require autoname" - added "method require exists"

  1. … 4 more files in changeset.
- implemented return value checker (for scripted and c-implemented methods) - additional methodproperty returns (for registering a return value checker) - support for incrementally adding stuff to paramDefs (such as slotobj or return value) - new c-function ParamDefsNew() - added regression test for return value checker

  1. … 7 more files in changeset.
- implemented parameter option "allowempty" - extended regression test

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