library

Clone Tools
  • last updated 20 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
nsf.c, gentclAPI.tcl: - new argument types "virtualobjectargs" and "virtualclassargs" for context-specific argument resolutions: when a context object is provided, arguments of type "virtualobjectargs" are determined based on the slots applicable for the object (like "... lookup ..."), arguments of type "virtualclassargs" are resolved against a class. These types are used as follows: /obj/ configure /virtualobjectargs/ /cls/ create /name/ /virtualclassargs/ /cls/ recreate /name/ /virtualclassargs/ /cls/ new ?-childof /obj/? /virtualclassargs/ This new feature allows us to provide better error messages and to make much of the "... info ... configure parameter ..." infrastructure much less important. - For "virtualclassargs" we need the functionality to obtain from the C-Code based on a class the configure parameters applicable to objects of this class. - add argument "-context ..." to "cmd::info" to pass the context object (so far the only place where the context-object is used) - object system configuration parameters changes: new: -class.configureparameter new: -object.configureparameter removed: -class.objectparameter

  1. … 13 more files in changeset.
nsf.c - renamed parameter::get -> parameter::info - renamed method::get -> cmd::info

  1. … 10 more files in changeset.
- also drop class level "info configure"

nx.tcl - drop short form "/obj/ info configure" for now - make output of "/obj/ info lookup configure syntax" equivalent to "/obj/ info configure"

  1. … 6 more files in changeset.
- simplify slot parameter settings for object-mixins and object-filter lightly by omitting redundant methodname

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

  1. … 5 more files in changeset.
- we must replace ::get command with ::set commands for reastablishing relationships

Add doc fragment about 'info variable *'

  1. … 1 more file in changeset.
nx.tcl - switch from "/obj/ info parameter" -> "nsf::parameter::get" to reduce potential semantic confusion of info options. "info parameter" was not object/class specific at all, but is just a syntax extractor

  1. … 6 more files in changeset.
nsf.c - force again literal "-guard" in a "mixinreg" type to avoid potential confusions - Base nsfRelationSet for mixins on cmds rather than TclObjs to avoid confusions and duplication of guard detection logic - Add interp to NsfMixinregGet() and NsfFilterregGet() to be able to return error messages - return more error message from mixinreg converter - provide at least minimal support for "funny class names" (i.e. containing spaces) - FinalObjectDeletion: don't enforce namespace = 1 for cases with wierd namespace deletion order - extended regression test

  1. … 5 more files in changeset.
- space change

- added methods "info lookup filters ?-guards? ?/pattern/?" and "info lookup methods *-guards? ?/pattern/?" - extended regression test

  1. … 7 more files in changeset.
- have "filter|mixin clear" return the list of former|removed filters|mixins.

  1. … 2 more files in changeset.
- disallow arguments for "... info configure"

- name parameter option "slotset" instead of "slotassign"

  1. … 9 more files in changeset.
- use "mixin|filter clear" instead of "mixin|filter unset"

  1. … 4 more files in changeset.
nsf.c: - fixed unary argument passing notation for "-nocomplain" of nsf::var and for 42 other options of other commands

nx.tcl:

- added flag -nocomplain to "/obj/ /prop/ unset ?-nocomplain?"

  1. … 4 more files in changeset.
- renamed nsf::relation to nsf::relation::set and added nsf::relation::get in accordance with nsf::var::get

  1. … 14 more files in changeset.
nsf.c: - added nsf::var::get and "::nx::var get" to provide selector based interface for variable reading (used in slotmethod get of nx::VariableSlot)

- cleanup of nx.tcl and TODO

  1. … 7 more files in changeset.
traits: - define simple setter methods "requiredMethods" and "requiredVariables" to avoid to "set" these explicitly

  1. … 3 more files in changeset.
- cleaned up relation slot mixin variants

  1. … 1 more file in changeset.
nx.tcl: - reworked error message generation of slot-forwarder (list all available slot methods with prefix value=)

xotcl2:

- use xotcl::RelationSlot instead of nx::Relationslot in xotcl2

(we can more value=assign here).

  1. … 2 more files in changeset.
- fix load paths for sublibs (e.g. mongodb) in regression test

  1. … 2 more files in changeset.
nx.tcl: - add slot method value=unset to nx::RelationSlot and nx::VariableSlot - extended regression test

  1. … 3 more files in changeset.
xotcl2: - use value=set instead of value=assign - simplify "-parameter" implementation - add setters for "name", "domain", and "default" to xotcl::Attribute for backward compatibility

  1. … 2 more files in changeset.
mongodb - by directing calls to the setter, it is now more complex to determine the true calling object for an converter, since the set operation might be routed though the slot object. It would be nice to have framework support for this. - fix 2 error messages - provide shorter tracebacks by using "return -code error ..." rather than "error ..."

- don't delete system slot ::xotcl::Attribute on cleanup

nx.tcl, xotcl2.tcl: - use value=* as names for interally called and forwarder-called accessor methods - disallow "assign" for nx::variableSlots

  1. … 8 more files in changeset.
nx.tcl: - use set/get/add as slot methods for get/configure/incremental operations - demangle slots for nx/xotcl2 further

xotcl2:

- use assign/get/add as slot methods for get/configure/incremental

operations

- use object system configuration for -slot.get and -slot.set

  1. … 7 more files in changeset.
- enforce usage of "get" for all slots in nx - TODO: check, what in detail "parameter" in xtocl2 inherit from nx::variableslot (e.g. needsForwarder?)

  1. … 3 more files in changeset.