nx

Clone Tools
  • last updated 2 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- made nsf::my and nsf::object::dispatch available in the nx namespace

  1. … 4 more files in changeset.
- nx.tcl: * make calls from "protected", "public", and "private" system calls, such that "obj -system protected method foo {} ..." works, even when obj has a method named "method". * extended regression test

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

  1. … 2 more files in changeset.
- nsf.c: * fixed name path in unknown called from ensemble methods (erroneous colon could show up) * added -system flag to: - ordinary dispatch (e.g. "o1 -system info vars") - nsf::object::dispatch with plain methodName - nsf::my (mutual exclusive with -local)

  1. … 6 more files in changeset.
- nsf.c: * added preliminary/minimal "private" support * private can be called via "my -local", direct dispatches are forbidden, ignored in mixins and next; * extended regression test

  1. … 6 more files in changeset.
- nx.tcl: * made "/cls/ class ..." using ensemble methods and therefore extensible. * This introduces some definition order dependencies in nx.tcl and some redundancy ("class filter" and "class mixin"), but maybe this can be eliminated.

  1. … 2 more files in changeset.
- nx.tcl: * added parameter option incremental for "property" and "variable" * removed the nonpos argument "-incremental" from "property" and "variable" * adapted regression test for these cases

  1. … 2 more files in changeset.
- nx.tcl: * added "/obj/ info slot definition" * added "/obj/ info slot name" * added "/obj/ info properties" (alias to "/obj/ info slot definition") * extended regression test

  1. … 4 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. … 32 more files in changeset.
- small simplification

- nx.tcl: extended object-parameter "switch" implementation: now, accessors of type boolean are created, when type "switch" is used.

  1. … 2 more files in changeset.
-nsf.c: * move to greedy assert to an inner scope ("info method ...") * allow testwise "switch" as object parameter (when it is used, accessors are deactivated for this attribute) * extended regression test

  1. … 5 more files in changeset.
- changed Stack example in tutorial from constructor to :variable - allow just valid specs for :attribute and :variable methods - improved error message for invalid parameter specs (with leading colons) - extended regression test

  1. … 5 more files in changeset.
- nx.tcl: * added protected and public for "require method" The following forms are now valid "... require public method" "... require protected method" "... require method" "... require public class method" "... require protected class method" "... require class method" * extended regression test

  1. … 3 more files in changeset.
- nx.tcl: implemented copy without a provided name. If argument of copy is omitted, the copied object is created with a fresh name (i.e. created with the method "new"). Example set x [o copy] - extended regression test

  1. … 2 more files in changeset.
- reduced verbosity, updated TODO

  1. … 1 more file in changeset.
- nx.tcl: * fixed copy for object created with new * copy returns now the fully qualified name of the copied object

  1. … 1 more file in changeset.
- nsf.c: * fixed a bug in "info parameter list|... name" when the named parameter is not found (returns now empty, before, it was returing the full list). * added flag "-nocomplain" to nsf::var::unset - nx.tcl * added "delete variable" analogous to "delete attribute" * unset instance variable for object-level "delete attribute" * extended regression test

  1. … 6 more files in changeset.
- nx.tcl: * added support for "variable" on the class-level * added flag "noconfig" to object parameter options * parameters with "noconfig" are omitted in "info parameter syntax" and "info parameter list" * used switches for all configurable boolean options for "variable" and "attribute" * regularized the interface of "variable" and "attribute" * extended regression test

  1. … 5 more files in changeset.
- nx.tcl: added switch "incremental" to "variable" and "attribute" - added regression test

  1. … 2 more files in changeset.
- generic/nsf.c: Fixed [current callingmethod] for submethods (i.e., reporting submethods as calling methods, including their methodpath). Added tests covering the fix (see tests/submethods.test). - generic/nsfStack.c (CallStackMethodPath): Re-arranged the traversal slightly, to escape non-ensemble frames (eval CFRAMEs) as parts of the method path. Added test (see tests/submethods.test). - library/nx/nx.tcl: Corrected the impl of Ensemble->defaultmethod() (e.g., used self instead of current) - tests/disposition.test: Fixed test cases turned out to be false positives. Before the fixes, [current methodpath] gave non-empty results for simple object aliases.

  1. … 4 more files in changeset.
- provide error message, when method variable is a noop (e.g. no value provided and no accessor is wanted)

  1. … 2 more files in changeset.
- added support for "class variable" - added tests for "variable" + multiplicity and "class variable"

  1. … 2 more files in changeset.
- nx::Attribute: changed method 'checkInstVar' to 'setCheckedInstVar' - set only fresh variables via per-object method "variable" and "attribute" - added flag -concomplain to per-object method "variable" and "attribute" - extended regression test

  1. … 2 more files in changeset.
- nx: factor out method createFromParameterSpec - method variable: * check default value * added shortcut, when no slot object is needed * extended regression test

  1. … 2 more files in changeset.
- 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.
- first draft of separation of attribute -> variable + accessor

  1. … 4 more files in changeset.
- reamed ObjectParameterSlot attribute from nosetter => accessor (positive formulation)

  1. … 3 more files in changeset.
- fix typos in string "unknown" (unknwon, unkown)

  1. … 3 more files in changeset.