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
626a12f1d4
Eo: Improved docs.
...
SVN revision: 71793
2012-06-07 10:54:12 +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
1754ca9608
Eo: Check adding/deleting callbacks from within callbacks doesn't crash.
...
SVN revision: 71745
2012-06-06 11:41:51 +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
8fb40ff92f
Eo: Added a flag to know if we have any callbacks to clear.
...
SVN revision: 71663
2012-06-03 13:33:09 +00:00
Tom Hacohen
d07f3da945
Eo: Improved checks in signals example.
...
SVN revision: 71662
2012-06-03 13:33:04 +00:00
Tom Hacohen
a137241395
Eo: print an error when trying to delete a non-existent callback.
...
SVN revision: 71658
2012-06-03 08:42:18 +00:00
Tom Hacohen
b8aa1e41ed
Eo: Remove del_lazy.
...
SVN revision: 71657
2012-06-03 08:42:15 +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
5600b332a4
Eo: Fix the test suite to run with CK_FORK=no.
...
Make it possible to do it, and make it default.
And remove the now useless valgrind option (we want to see still
reachable now that libcheck works).
SVN revision: 71316
2012-05-22 11:13:15 +00:00
Tom Hacohen
d618f543c5
Eo: Fixed memory leaks in the tests.
...
SVN revision: 71289
2012-05-21 15:18:54 +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
a4cc0edd4f
Eo: Added more magic tests.
...
SVN revision: 71287
2012-05-21 14:48:38 +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
665904fa6d
Eo: Improve tests of magic values (NULL pointers).
...
SVN revision: 71283
2012-05-21 11:45:37 +00:00
Tom Hacohen
aa6048286f
Eo: Fix wrong usage of EO_OP_TYPE in eo_do/query*.
...
Thanks to Yakov for letting me know about it.
SVN revision: 71282
2012-05-21 11:45:34 +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
a028e6d566
Eo: Fix pkg-config cflags.
...
SVN revision: 71275
2012-05-21 08:58:18 +00:00
Tom Hacohen
f9d41588b8
Eo: Added extern "C" for the C++ fellows.
...
Oops, forgot, thanks to Yakov for letting me know.
SVN revision: 71189
2012-05-17 06:22:50 +00:00
Tom Hacohen
633cba4505
Eo: Fixed error message.
...
SVN revision: 71125
2012-05-15 15:06:40 +00:00
Tom Hacohen
e7376bab0d
Eo: Fixed error in docs.
...
SVN revision: 71122
2012-05-15 14:17:10 +00:00
Tom Hacohen
53da1d619b
Eo: Added interface example.
...
SVN revision: 71121
2012-05-15 14:17:07 +00:00
Tom Hacohen
3ec36334a4
Eo: Added support for event freeze/thaw.
...
SVN revision: 71120
2012-05-15 14:17:03 +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
150b057a15
Eo: Added the two events I removed by accident.
...
SVN revision: 71001
2012-05-14 13:33:26 +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
8599ecd123
Eo: Add missing @def to docs.
...
SVN revision: 70999
2012-05-14 11:57:25 +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
7d669b8b27
Eo: Fix parameter checking of eo_do_super.
...
SVN revision: 70865
2012-05-08 06:56:55 +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
59a132264f
Eo: Test getting data from class with no data.
...
SVN revision: 70816
2012-05-06 14:18:44 +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
465eb13ce0
Eo: Fixed so versioning.
...
SVN revision: 70795
2012-05-06 12:03:18 +00:00
Tom Hacohen
e1021dc21e
Eo: Fixed the tests when building in "release mode".
...
Our release mode safety checks are less strict, so we have to disable some
of the test cases when testing there.
SVN revision: 70794
2012-05-06 12:03:16 +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
18eda16fa2
Eobj: Fixed wref bugs and improve it's tests.
...
SVN revision: 70584
2012-05-01 14:00:14 +00:00
Tom Hacohen
e1efeae7a4
Eo: Rename SIG_* to EV_*.
...
Patch by Yakov Goldberg.
SVN revision: 70581
2012-05-01 13:23:30 +00:00
Tom Hacohen
62bafee059
Eo: Doc improvements.
...
SVN revision: 70580
2012-05-01 13:23:25 +00:00
Tom Hacohen
eba59804c9
Eo: Make wref a c array instead of using event callbacks.
...
SVN revision: 70578
2012-05-01 12:38:14 +00:00
Tom Hacohen
fd2054d821
Eo: Added eo_wref_del_safe.
...
SVN revision: 70573
2012-05-01 11:25:03 +00:00
Tom Hacohen
474c668038
Eo: Fixed a bug in wref del.
...
SVN revision: 70572
2012-05-01 11:25:00 +00:00
Tom Hacohen
6d15044bd4
Eo: Changed #EINA_TRUE/FALSE to @C EINA_*.
...
Removes the doxygen warning, but pretty annoying.
SVN revision: 70571
2012-05-01 10:42:55 +00:00
Tom Hacohen
d1d81c4f86
Eobj: Fix issue with the typecheck macro.
...
It should not use the passed variable more than once.
SVN revision: 70568
2012-05-01 08:07:04 +00:00
Tom Hacohen
816a4ad71d
Eobj: Rename to Eo.
...
Blame cedric.
SVN revision: 70566
2012-05-01 07:40:14 +00:00
Tom Hacohen
c3cccdc7ce
Eobj: Fix clang's (static analyser) warnings.
...
SVN revision: 70537
2012-04-29 15:52:37 +00:00
Tom Hacohen
f393ebfffe
Eobj: change the tests according to the new wref concept.
...
We should not delete the wref if object is already freed. It's because
of the damn new wref API.
SVN revision: 70438
2012-04-24 12:27:22 +00:00
Tom Hacohen
47161b869c
Eobj: Fixed a possible bug with object deletion.
...
SVN revision: 70437
2012-04-24 12:16:23 +00:00
Tom Hacohen
9d03a70fa2
Eobj: Made weak ref a base class function.
...
SVN revision: 70436
2012-04-24 12:16:21 +00:00
Tom Hacohen
3cc5c60d17
Eobj: eobj_event_callback_del/_full renames.
...
eobj_event_callback_del -> eobj_event_callback_del_lazy.
eobj_event_callback_del_full -> eobj_event_callback_del.
Thanks to cedric for the suggestion.
SVN revision: 70435
2012-04-24 12:16:17 +00:00
Tom Hacohen
2c66050b65
Eobj: Changed all the eobj_do macros to lowercase.
...
code clutter--.
SVN revision: 70432
2012-04-24 08:56:49 +00:00
Tom Hacohen
4e05a6193c
Eobj: Added infrastructure for const functions and eobj_query.
...
SVN revision: 70431
2012-04-24 08:04:14 +00:00
Tom Hacohen
b004b4c833
Eobj: Fixed the order of parameters in the weak ref add func.
...
SVN revision: 70430
2012-04-24 08:04:09 +00:00
Tom Hacohen
331ef4b522
Eobj: Updated weak ref docs.
...
SVN revision: 70419
2012-04-23 12:47:44 +00:00
Tom Hacohen
31e6682a66
Eobj: Make eobj_weak_ref_add return the obejct being reffed.
...
Suggested by vtorri.
SVN revision: 70418
2012-04-23 12:32:36 +00:00
Tom Hacohen
5b529c506b
Eobj: Added docs to the examples (needed for introspection).
...
Patch by Yakov Goldberg.
SVN revision: 70417
2012-04-23 12:32:34 +00:00
Tom Hacohen
44e549e812
Eobj: added warnings to eobj_ref's docs.
...
SVN revision: 70416
2012-04-23 11:51:49 +00:00
Tom Hacohen
5c5fc69bef
Eobj: Changed weak-ref to work without allocating a structure.
...
Thanks to cedric.
SVN revision: 70415
2012-04-23 10:57:04 +00:00
Tom Hacohen
945cf1e9c2
Eobj: Rename _EOBJ_BUILD to EFL_EOBJ_BUILD.
...
vtorri is right pointing out it is a reserved name.
SVN revision: 70414
2012-04-23 08:26:40 +00:00
Tom Hacohen
c599a9090d
Eobj: Destruct the object upon deletion, free it when unrefed.
...
Sorted this out a bit. I believe the current behaviour is better than the
previous one.
SVN revision: 70413
2012-04-23 08:10:12 +00:00
Tom Hacohen
f973b12daf
Eobj: we don't care about "Still reachable".
...
It seems that libcheck keeps some reachable data, unfortunate as it makes
it very annoying for us to check for reachable memory in our code, but
letting valgrind report about it is just too damn annoying.
SVN revision: 70412
2012-04-23 08:10:09 +00:00
Tom Hacohen
a1ed819ea2
Eobj: Use EINA_SAFETY when needed.
...
Also added a couple of EINA_UNLIKELY.
SVN revision: 70411
2012-04-23 08:10:06 +00:00
Tom Hacohen
8875c23a6c
Eobj: Added eina magic to API functions.
...
SVN revision: 70410
2012-04-23 08:10:04 +00:00
Tom Hacohen
e8348bf802
Eobj: Fixed windows support.
...
DAMN, Windows is broken...
Thanks to vtorri.
SVN revision: 70409
2012-04-23 08:10:00 +00:00
Tom Hacohen
b5a1df1270
Eobj: Added EOBJ_CALLBACK_STOP/CONTINUE macros.
...
SVN revision: 70408
2012-04-23 08:09:58 +00:00
Tom Hacohen
e0f6adbea6
Eobj: Add a convenience macro for defining the class_get functions.
...
This macro makes the code a tad simpler, but more importantly, makes it
easier for us to be thread safe, or more corrctly, easier for us the
make user code thread safe.
SVN revision: 70407
2012-04-23 08:09:54 +00:00
Tom Hacohen
1390200ede
Eobj: Fixed issue with FindEina.cmake and things using it.
...
SVN revision: 70406
2012-04-23 08:09:49 +00:00
Tom Hacohen
a5742a341c
Eobj: Allocate the data blob at the end of the object.
...
This replaces the obj->data_blob pointer. Hopefully will be better.
SVN revision: 70405
2012-04-23 08:09:45 +00:00
Tom Hacohen
84a698c972
Eobj: A bit of code cleanup.
...
SVN revision: 70404
2012-04-23 08:09:42 +00:00
Tom Hacohen
b126854a86
Eobj: Added EINA_LIKELY/UNLIKELY to eobj_data_get.
...
SVN revision: 70403
2012-04-23 08:09:40 +00:00
Tom Hacohen
e066c0041c
Eobj: Add a couple of funcs_set tests and fixed a bug related.
...
SVN revision: 70402
2012-04-23 08:09:37 +00:00
Tom Hacohen
95eaccb0cc
Eobj: s/__UNUSED__/EINA_UNUSED/ I had no idea that exists.
...
SVN revision: 70332
2012-04-19 11:30:17 +00:00
Tom Hacohen
9fee446cc1
Eobj: Fixed naming of the internal con/destructor wrapper.
...
It's a lot less confusing now.
SVN revision: 70331
2012-04-19 11:30:12 +00:00
Tom Hacohen
bfe38419bd
Eobj: Enforce some interface restrictions.
...
SVN revision: 70330
2012-04-19 11:30:10 +00:00
Tom Hacohen
a59a972f8b
Eobj: Change obj of eobj_data_get to be const.
...
Thanks to Daniel Zaoui for the report.
SVN revision: 70325
2012-04-19 08:56:29 +00:00
Tom Hacohen
11361eae41
Eobj: Added mixin data support.
...
SVN revision: 70324
2012-04-19 08:52:25 +00:00
Tom Hacohen
c2e55db47d
Eobj: Added forgotten docs to eobj_xref/xunref.
...
SVN revision: 70323
2012-04-19 08:52:22 +00:00
Tom Hacohen
965952c3a5
Eobj: Improved tests.
...
And one cosmetic change.
SVN revision: 70322
2012-04-19 08:52:18 +00:00
Tom Hacohen
5bfbd5f9d1
Eobj: Add checks to ensure consistent method rosulotion order.
...
SVN revision: 70321
2012-04-19 08:52:15 +00:00