ChangeLog

Clone Tools
  • last updated 23 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- based introspection for procs/instprocs on new argument definition structures

- allowing type checkers also for positional arguments

(for now only, when nonpos args are given as well; we have

to think about using these either for all procs/instprocs,

or only, when e.g. type checkers are used; we have to

make more benchmarking to get a better foundation)

- registered the following type checkers for procs/instprocs:

switch, integer, boolean, object, class

Example

o proc bar {-enable:switch o:object c:class} {

return "o=$o c=$c"

}

- generated interface for ::xotcl::configure; now 97 interfaces are

generated; shortcoming for bool/int converter stubs: optional

0-vaues are not recognized, so use tclobj for the time being

- extended regression test

  1. … 7 more files in changeset.
- parse non-pos-args for procs/instprocs into new argument definition structure - using new parseObjv for calling procs and instproc when nonpos-args are used (invocation time went from 9.08ms to 5.95ms) - TODO: complete implementation for regression test, base introspection/copy etc. on new structures

  1. … 5 more files in changeset.
- support for enumeration types in c-code generator - use function pointer for type checker instead of strings - generated interface for ::xotcl::methodproperty

  1. … 5 more files in changeset.
- ::xotcl::my generated

  1. … 4 more files in changeset.
- generated interface for ::xotcl::relation

  1. … 3 more files in changeset.
- support for generating interface for ::xotcl commands - generated interface for ::xotcl::alias

  1. … 4 more files in changeset.
- removed compatibility for versions before Tcl 8.4 (was not tested anyhow) This version requires at least Tcl 8.4.

  1. … 3 more files in changeset.
- separated C-code generator from declarations

  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.
- all object methods generated - added reference counting for patternobj - some cleanup and reordering

  1. … 4 more files in changeset.
- committing snapshot

  1. … 5 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.
- 3 class methods generated, handling args/allargs

  1. … 3 more files in changeset.
- all "<object> info" commands generated

  1. … 3 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.
- objv-stubs for all 23 class info methods

  1. … 3 more files in changeset.
- improved changelog entry

- added c-stub generate (generates Tcl_ObjCmdProc from method definitions in Tcl)

  1. … 4 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.
- committing snapshot - changed method name "instdestroy" into "dealloc" - new file: tclAPI.h

  1. … 3 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.
- new parse() infrastructure for factoring out common parsing patterns of objv[] parsers - new error message handler: XOTclObjErrArgCntObj() - shortend code by about 1000 lines (about 100 due to parse())

  1. … 2 more files in changeset.
-implemented XOTclObjInfoParametercmdMethod(), XOTclClassInfoInstparametercmdMethod() -implemented -closure for XOTclClassInfoInstmixinMethod()

  1. … 5 more files in changeset.
update changelog

- 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.
- updated Changelog

- finishing release 1.6.3

  1. … 3 more files in changeset.
updated changelog, wrote announcement

  1. … 1 more file in changeset.