predefined.xotcl

Clone Tools
  • last updated 11 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- removed c-level support for the following methods and provide emulation on the script level isobject, isclass, ismetaclass, ismixin istype

  1. … 5 more files in changeset.
- generated interfaces for XOTclIsCmd() and XOTclQualifyObjCmd() - simplified PrimitiveODestroy() - eliminated XOTcl_TraceObjCmd()

  1. … 7 more files in changeset.
- removed deprecated :xotcl::setrelation - fixed potential crash in bootup code, when destroy method was defined for ::xotcl::Slot

  1. … 2 more files in changeset.
- first implementation of application specific checkers - changed XOTclDispatchCmd to parameter interface (testing and adjustment outstanding) - reactivated XOTclOSetMethod, since one test in regression test caused troubles for still unknown reasons

  1. … 8 more files in changeset.
- drop XOTclOSetvaluesMethod(), use alias for "set" instead of it - implement parameter option "optional" for positional parameters - extend regression test

  1. … 7 more files in changeset.
- new function: ParamDefsList(), - extended ListParams() to work with and without parameter definitions

- deleted following functions:

AppendOrdinaryArgsFromNonposArgs(),

GetProcDefault(),

ListArgsFromOrdinaryArgs(),

ListDefaultFromOrdinaryArgs(),

ListProcArgs()

ListProcDefault(),

SetProcDefault(),

XOTclClassInfoInstargsMethod(),

XOTclClassInfoInstdefaultMethod(),

XOTclClassInfoInstnonposargsMethod(),

XOTclObjInfoArgsMethod(),

XOTclObjInfoDefaultMethod(),

XOTclObjInfoNonposargsMethod(),

checkRequiredValue(),

evalValueIfNeeded(),

setDefaultValue()

- provided backward compatibility on tcl level (currently in predefined, should be moved into library)

  1. … 5 more files in changeset.
- passing obj to ArgumentParse() to get the object-context and to be able to produce nicer error messages - pass pushFrame to ProcessMethodArguments() to signal, whether stack frame was already pushed or not - deactivated check for {$} in objectparameter (for activating substdefault) - fixed class converter, which was to liberal - extended objparametertest for substdefault and some types

  1. … 5 more files in changeset.
- new functionparseContextExtendObjv() to eliminate hard coded limits on argument lengths - reduced PARSE_CONTEXT_PREALLOC 20 - new function XOTclPrintObjv() for debugging (output of objv vector)

  1. … 3 more files in changeset.
- new option initcmd for nonposarg parser (necessary for regression test) - error handling for failed relation settings - fixed crash when canonicalNonpositionalArgs returned result != 0 - regession test runs again

  1. … 4 more files in changeset.
- renamed "objinterface" to "objectparameter" - renamed "invalidateinterfacedefinition" to "invalidateobjectparameter" - fixed regression test "filterAddRemove" and "filterClassChange" to be more robust - deactivated regression test "filterInfo", since this traces the detail of object configuration - object parameters pass now testx regression test, run currently into problems in slottest

  1. … 6 more files in changeset.
- renamed "configureargs" to "objinterface"

  1. … 4 more files in changeset.
- new option substdefault for nonposarg parser - changed per-argument options for argument definitions to bitfield named "flags" - removed CONFIGURE_SIGNATURE_GENERATOR - can start now with cacheInterface 1

  1. … 4 more files in changeset.
- new functions NonposArgsFree(), ParsedInterfaceDefinitionFree() - new class method invalidateinterfacedefinition - renamed convertToInterceptor() to convertToRelation() - added test tests/objifdtest.xotcl (not yet in test suite)

  1. … 6 more files in changeset.
- added first verison of configure based on nonpos args (many thanks to Stefan!)

  1. … 8 more files in changeset.
- fix a bug in CopyHandler (while copying slot objects) - found and fixed two cases, where xotcl could crash during deletion of active objects - simplified deletion logic of active objects significantly unsing an explicit activation count - removed old deletion logic (state variable callIsDestroy, callstate XOTCL_CSC_CALL_IS_DESTROY, destroyedCmd on stack content) - removed now obsolete functions CallStackMarkDestroyed() and CallStackMarkUndestroyed() - made changes for with and without TCL85STACK

  1. … 11 more files in changeset.
- defined new (3rd) frame type FRAME_IS_XOTCL_CMETHOD for calling c-implemented methods (the same as FRAME_IS_XOTCL_OBJECT, except that it uses csc as clientData instead of only the xotcl object - implemented XOTclCallStackFindLastInvocation() for tcl85stack

  1. … 6 more files in changeset.
- Stefan implementation for args with canonical args - canonicalNonpositionalArgs() receives explicit current xotcl object

  1. … 2 more files in changeset.
- starting to use tcl85 stack (when complied with TCL85STACK). Goal is to remove the own stack handling, when compiled with Tcl 8.5+ Introduced two frame types, FRAME_IS_XOTCL_METHOD and FRAME_IS_XOTCL_OBJECt - Currently, only self is resolved this way from the Tcl stack. - Currentlsy, just parts (e.g. testo.tcl) of the regression test work

  1. … 3 more files in changeset.
- moved all definitions of method commands to generated code - from 15356 generic/xotcl.c => 13408

  1. … 6 more files in changeset.
- !!! removed obsolete features * ability to specify nonpos args and pos args as different arguments * compile flags AUTOVARS, REFCOUNTED, REFCOUNT_TRACE - added -flags with one argument + type - generated all class methods from interface descriptions

- transtional version, not all test of regression test work correctly

  1. … 9 more files in changeset.
- changed "<object> info hasNamespace" to "<object> info hasnamespace" (all commands and info options are lowercase only, no underscore) - 11 "<object> info" commands generated

  1. … 6 more files in changeset.
- added generator for tclAPI.h - defined 8 info methods based on the new objv parseing infrastructure - replaced occurances of "instdestroy" by "dealloc" in documentation

  1. … 9 more files in changeset.
- new command: ::xotcl::createobjectsystem <rootClass> <rootMetaClass> This command creates a basic object system with the specified <rootClass> as most general root class and the specified metaclass as most general meta class.

Example: ::xotcl::createobjectsystem ::oo::object ::oo::class

In general, it would be possible to remove an objects system

at runtime, but there is so far no tcl interface for this.

- extended framework to work with multiple root classes

- the basic root class of XOTcl is now ::xotcl::Object again

(instead of ::oo::object) as before. The old setup can be

achieved on the Tcl-layer.

  1. … 7 more files in changeset.
- added metaclass property for root metaclass - metaclass property is set via ::xotcl::relation ... metaclass

  1. … 3 more files in changeset.
- define default meta-class for ::xotcl::Class - use default meta-class, when a the topmost meta-class of an object system is deleted - fix regression test

  1. … 6 more files in changeset.
- work on collateral damage after merge - fixed many test cases from the regression thest - wrote some changes to ChangeLog as a reminder

  1. … 8 more files in changeset.
merge with 1.6.3 (HEAD)

  1. … 130 more files in changeset.
- handle nonposargs in method "copy" properly - extend regression test for copy - added "<class> mixinof -closure ?pattern?" - extended regression test for mixinof - updated documentation

  1. … 15 more files in changeset.
* updating language reference

* Fix contents for %proc in forwarders in cases,

where the forwarder was called via next and

the argument list for next was provided.

Previously, "next" was used for %proc.

  1. … 3 more files in changeset.
fixed error message