nsf

Clone Tools
  • last updated 23 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- removed duplciate error message in "hasmixin" converter - fixed refcounting in converting user-types in case of errors - extended regression test

- setterCmd(): Do not allow methodNames start with "-" - setterCmd(): Do not allow defaults for setters - extend regression test

- Allowed parameter specification for setters. One can define now a setter with constraints like e.g. ::xotcl::setter o a:integer to define a setter named "a" for object "o" which has to be integer. - Extended regression test - Followed nameing conventions for several structures

- bumped version number to 1.6.6

    • -9
    • +11
    /library/xml/TclExpat-1.1/configure
    • -0
    • +2
    /library/xml/TclExpat-1.1/configure.in
* provide compatibility with 8.6b1

- fixed compilation for tcl 8.6b1

- fixed valuecheck in connection with modifying converters - extended regression test

- made error messages for failed conversions more consistent (note that tcl does not provide the parameter name in the error message, but user-defined converters do)

- clean up comments

- renamed "::xotcl::is ... mixin ..." to "::xotcl::is ... hasmixin ..." (affects parametertypes as well)

- move methodParameter checkers for "mixin", "baseclass" and "metaclass" to predefined. - deactivated checkMethods in gentclAPI.decls and in xotcl.c

- provide error message for cases, where parameter options are not allowed (or ignored)

- fix counter initialization in ::xotcl::importvar - register alternate "new" method in "contains" for xotcl2 and (if available) for xotcl1 objects

- streamline quoting in regression test

- handle multivalued + values converted viaCmd converter the new output list is only built when needed via ArgumentCheckHelper()

- added argument for converter to return the converted tcl_obj, which should be passed on (currently only used for viaCmd); this way, we could remove the kludge of querying the converter after the conversion for special handling.

- treat currently unknown converters in valuecheckcmd as error - fix the regression test from the last changes

- added parameter option slot= to pass slotobj to a certain parameter - use slot option to keep relation between parameter and slot - object parameter dispatch type checker on slot objects - allow transformation via user-defined converter (can be use to standardize parameter values) experimental implementation, refcounting has to be looked in detail, maybe we need a different interface for the converters

- added error message when substdefault is specified without a default value - extend regression test

- predefined.xotcl: move toParameterSyntax and objectparameter to a position, where basic slot definitions are provided - fixed default value setting in bootstrap code - provide more precise error message in converter, when object type are used - extend regression test

- get rid of convertToObjectOfType(), make convertToClass() and converterToObject() more general, accepting type constraints

- support for all string constraints provided by "string is ... $value" in object and method parameters ("alum", "alpha", ..., "xdigit"). Technically, these types are tclobjs (using converter convertToTclobj) having pParm->converterArg set to the constraints. - extended regression test

- moved slot optimizer from ::xotcl::ObjectParameterSlot::Optimizer to ::xotcl::Attribute::Optimizer

- refactor Slot class hierarchie - new methods in ObjectParameterSlot "toParameterSyntax" and "createFromParameterSyntax" - some more cleanup - removed legacy syntax for "-parmeters"

- cleanup of legacy stuff in slot management. * merged InfoSlot and InterceptorSlot into RelationSlot * get rid of legacy "mixin set ...." command - renamed "parameterSlot" into "methodParameterSlot" to avoid potential confusions

- define everything concerning basic slot setup in a single "namespace eval ::xotcl {...}" - undefine ::xotcl::createBootstrapAttributeSlots after this block - fix default DefaultSuperClass() with isMeta==1 in cases, where we are already at the root meta class - use "-parameter" in xotcl1 instead of createBootstrapAttributeSlots

- name parameterType -> parameterSlot - use for now same parameterSlot for xotcl1 + 2 - disallow unknown types (otherwise interpreted as user-types) in valuecheck

- allow syntax "object,type=::SomeClass" and "class,type=::SomeMetaClass" (currently identical, we should as well check for class/meta-class in case of "class,type=SomeClass")

- remove unneeded push and pop operations in ListChildren() and ObjectHasChildren()

- name XOTclObjects always "object" instead of "obj" to avoid potential confusion with Tcl_Objs