version 1.1, 2003/02/15 15:23:22 |
version 1.2, 2003/02/18 10:18:13 |
|
|
PLUGIN ARCHITECTURE |
MESSAGE TABLE CREATION [target: 0.2.1, done: 80%] |
[target: 0.2.3, done: 20%] |
|
|
|
TABLE-DRIVEN DEFAULT MSG HANDLER |
TABLE-DRIVEN DEFAULT MSG HANDLER [target: 0.2.2, done: 60%] |
[target: 0.2.5, done: 0%] |
At least for now it should use simple cycle comparing received message id with |
|
method table items one by one. When found, method shalt be executed, if not, |
REFLEXION |
default action taken (i.e. "default" method invoked, which then could take |
[target: 0.2.2, done: 0%] |
care of implicit delegation et cetera). |
|
|
CLONE/CCLONE |
MORE INTELLIGENT CO_ATTR/CO_METH_INI [target: 0.2.x, done: 30%] |
[target: 0.2.4, done: 0%] |
These should not need explicit object name, just get it from last CO_OBJECT or |
|
CO_METH respectively. The CO_METH problem is much harder to solve and bit more |
|
annoying. |
CO_MAP ASSOCIATIVE ARRAY |
|
[target 0.3.2, done: 0%] |
REFLEXION [target: 0.2.3, done: 40%] |
|
A method should be available for each object that will provide outside world |
CO_BTREE BINARY TREE IMPL |
with informations from method table of object. By means of copp it should be |
[target: 0.3.5, done: 0%] |
incorporated in message table of every prototype object. |
|
|
-- OLD -- |
CLONE [target: 0.2.4, done: 0%] |
DONE: libco-0.1.8 |
This should replace current constructor approach. There will be constructor, |
- create framework to associate error codes with error strings [yenar] |
but only as a prototype creation mechanizm, and it will be autogenerated by |
|
copp. It will set up message-handler table for the object and so on. But more |
TODO: libco-0.1.8 |
types of cloning should be available: shallow copy, deep copy, stand-alone, |
- implement co_map, associative array indexed by strings [yenar] |
etc. This will then affect way objects are coupled - as with default, method |
|
tables are shared - and thus adding (or removing) method at runtime will |
TODO: libco-0.1.9 |
affect all such objects. Stand-alone cloning will create new method table and |
- improve documentation (22%) [yenar] |
thus new object group. |
- reformat code to improve readability (40%) [yenar] |
|
- fix buffer overflows (grep for sprintf, strcpy, ...) [yenar] |
PLUGIN ARCHITECTURE [target: 0.2.5, done: 20%] |
- move databases from co_object.[hc] into separate files [yenar] |
Create consistent framework built on libltdl for loading modules. Each module |
|
shalt become object in loading process and export its interface this way. |
TODO: libco-0.2.0 |
|
- runtime type identification (rtti) (?) |
SECURITY [target: 0.3.1, done: 0%] |
|
Fix buffer overflows and alike. |
DONE: libco-0.1.7 |
|
- gettextize and create gettext wrapper [yenar] |
CO_MAP ASSOCIATIVE ARRAY [target 0.3.2, done: 0%] |
|
CO_BTREE BINARY TREE IMPL [target: 0.3.5, done: 0%] |
|
THREAD SUPPORT [target: 0.4.x, done: 0%] |