| 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%] |