Commit Graph

45 Commits

Author SHA1 Message Date
Tom Hacohen 9c929ba2ed Eo: Made constructor/destructor regular ops.
This lets us remove some unneeded code and makes everything nicer.

SVN revision: 71899
2012-06-10 14:04:53 +00:00
Tom Hacohen 281b976687 Eo: Removed "type" property from event/op descriptions.
No use for it ATM, will be added if needed."

SVN revision: 71896
2012-06-10 11:37:26 +00:00
Tom Hacohen 33c71f97aa Eo: Improved error reporting with failed constructors.
SVN revision: 71891
2012-06-10 07:53:46 +00:00
Tom Hacohen 9632a6ef4e Eo: Added a check if object is already deleted in eo_unref.
If an object is manually freed it was possible to ref/unref it so it'll
try to call the destructor again.

SVN revision: 71890
2012-06-10 07:53:43 +00:00
Tom Hacohen ce51bb7a58 Eo: Improved error messages. Show op as hex.
SVN revision: 71803
2012-06-07 11:32:21 +00:00
Tom Hacohen 242d324bba Eo: further improved error reporting with bad func_set.
SVN revision: 71802
2012-06-07 11:32:17 +00:00
Tom Hacohen 03ccd0b0bf Eo: Change the op func sentinel to be safer.
SVN revision: 71800
2012-06-07 11:14:38 +00:00
Tom Hacohen c66f8ee33a Eo: Clean up previous commit a bit.
SVN revision: 71799
2012-06-07 11:14:35 +00:00
Tom Hacohen 669177694a Eo: Print an error if we try setting a function for an illegal op.
SVN revision: 71797
2012-06-07 11:03:22 +00:00
Tom Hacohen 84d2f4c322 Eo: Made composite objects more robust.
Mark on the object itself if it's composited -> faster.
Remove from composite list if reparented.

SVN revision: 71794
2012-06-07 10:54:15 +00:00
Tom Hacohen 27d522514d Eo: Removed redundant reparent.
SVN revision: 71792
2012-06-07 10:54:08 +00:00
Tom Hacohen 657aee840e Eo: added back eo_del.
It's needed for proper object hierarchy handling.

SVN revision: 71775
2012-06-07 07:17:45 +00:00
Tom Hacohen e158149868 Eo: don't reparent if it's the same parent.
SVN revision: 71774
2012-06-07 07:17:42 +00:00
Tom Hacohen 0c32fc3e04 Eo: Fixed error message.
SVN revision: 71747
2012-06-06 11:41:56 +00:00
Tom Hacohen 7c7a6dd1fa Eo: Added a phantom ref if we manual free.
This lets us use eo_do and the such on deleted to be manually freed objects.

SVN revision: 71746
2012-06-06 11:41:53 +00:00
Tom Hacohen 143e06b209 Eo: Added eo_parent_set.
SVN revision: 71744
2012-06-06 11:41:47 +00:00
Tom Hacohen 827c2f6dd6 Eo: Moved more saftey checks to release mode only.
SVN revision: 71711
2012-06-05 12:05:08 +00:00
Tom Hacohen a2cdb54d6b Eo: renamed the Magic for freed objects and better handle deleted objects.
Now we differentiate between deleted but not freed vs deleted and freed
objects.

SVN revision: 71710
2012-06-05 12:05:06 +00:00
Tom Hacohen 8f1077493f Eo: Rephrased error message.
SVN revision: 71709
2012-06-05 12:05:02 +00:00
Tom Hacohen 0ca79b594c Eo: Added support for static class ids.
SVN revision: 71656
2012-06-03 08:42:12 +00:00
Tom Hacohen f4d0a797ec Eo: remove eo_del.
Useless for us, was only added to be like evas, but we don't need it
anymore.

SVN revision: 71655
2012-06-03 08:42:08 +00:00
Tom Hacohen c41ffc3970 Eo: Fix illegal memcpy.
We should not try to copy ourselves to ourselves. :)

SVN revision: 71288
2012-05-21 15:18:52 +00:00
Tom Hacohen b977e11ea6 Eo: Made an hot-path check compile out when not in debug mode.
SVN revision: 71286
2012-05-21 14:48:32 +00:00
Tom Hacohen bff3911c08 Eo: Added eo_manual_free* funcs.
Patch by Daniel Zaoui.

SVN revision: 71281
2012-05-21 11:45:32 +00:00
Tom Hacohen 633cba4505 Eo: Fixed error message.
SVN revision: 71125
2012-05-15 15:06:40 +00:00
Tom Hacohen 2cf5e56694 Eo: Added support for class functions.
SVN revision: 71119
2012-05-15 14:16:58 +00:00
Tom Hacohen 90804082c0 Eo: Change mro_itr functions to be more generic.
SVN revision: 71118
2012-05-15 14:16:54 +00:00
Tom Hacohen 0da2123d50 Eo: add a check for future static classes.
SVN revision: 71078
2012-05-14 15:20:46 +00:00
Tom Hacohen 44f3d883d4 Eo: renamed eo_constructor_error_* -> eo_error_*.
This is in preperation of a future change to be able to set errors in
function calls as well, and not just constructors.
Also, I improved the error reporting.

SVN revision: 71000
2012-05-14 11:57:28 +00:00
Tom Hacohen 3053d67f81 Eo: Move event callback handling to base class.
SVN revision: 70990
2012-05-14 07:35:19 +00:00
Tom Hacohen e392db30e3 Eo: Removed the object freed event.
SVN revision: 70989
2012-05-14 07:35:14 +00:00
Tom Hacohen 339964fd50 Eo: Added a new magic type to mark already deleted objects.
SVN revision: 70875
2012-05-08 14:22:57 +00:00
Tom Hacohen 4fb518d9a7 Eo: Keep artifical object ref a bit longer.
SVN revision: 70874
2012-05-08 14:22:53 +00:00
Tom Hacohen d8c978f7d4 Eo: rename delete to del.
SVN revision: 70867
2012-05-08 06:56:59 +00:00
Tom Hacohen 5c1aa9fd7d Eo: Flatten func array, so function fetching will always be fast.
SVN revision: 70866
2012-05-08 06:56:57 +00:00
Tom Hacohen 3b0dc78489 Eo: Make eo_parent_get accept const.
SVN revision: 70864
2012-05-08 06:56:50 +00:00
Tom Hacohen f26251cb4f Eo: Only implement _eo_class_mro_has when in testing mode.
SVN revision: 70799
2012-05-06 12:03:29 +00:00
Tom Hacohen a267989520 Eo: Added an internal _eo_ref/unref implementation.
We don't need to do all the regular checks when called from our code.

SVN revision: 70798
2012-05-06 12:03:26 +00:00
Tom Hacohen 019ba402d0 Eo: Improved the data structure used for func fetching.
Made it 2 levels instead of 1 and made it a lot smaller.

SVN revision: 70797
2012-05-06 12:03:23 +00:00
Tom Hacohen 3754fd077c Eo: Added an internal _eo_data_get implementation.
We don't need to do all the regular checks when called from our code.

SVN revision: 70796
2012-05-06 12:03:21 +00:00
Tom Hacohen dba7e09641 Eo: Overhauled the mro-walking mechanism.
A lot faster now.

SVN revision: 70793
2012-05-06 12:03:13 +00:00
Tom Hacohen 8c5644d5f8 Eo: Fixed some issues.
SVN revision: 70792
2012-05-06 12:03:11 +00:00
Tom Hacohen 7faf06dfe2 Eo: Improved error reporting in data_get.
SVN revision: 70791
2012-05-06 12:03:07 +00:00
Tom Hacohen 742f987798 Eo: Added debug-mode check for eo_data_get.
SVN revision: 70625
2012-05-02 13:59:18 +00:00
Tom Hacohen 816a4ad71d Eobj: Rename to Eo.
Blame cedric.

SVN revision: 70566
2012-05-01 07:40:14 +00:00