Commit Graph

101 Commits

Author SHA1 Message Date
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
Tom Hacohen 7713059d6d Eobj: Modified the mixin test to test the mixin mro.
SVN revision: 70320
2012-04-19 08:52:11 +00:00
Tom Hacohen 51bf71c131 Eobj: Improved error reporting.
SVN revision: 70288
2012-04-18 07:58:39 +00:00
Tom Hacohen 25ab72e2ee Eobj: Ensure we don't allow calling super functions out of place.
And improved error reporting.

SVN revision: 70287
2012-04-18 07:58:34 +00:00
Tom Hacohen f4fd7944b7 Eobj: Use xref.
SVN revision: 70275
2012-04-17 15:36:41 +00:00
Tom Hacohen ff0482180f Eobj: Add a mixin inheritance test.
SVN revision: 70274
2012-04-17 15:22:27 +00:00
Tom Hacohen d6146c132e Eobj: Add named (by obj ptr) ref - xref.
SVN revision: 70273
2012-04-17 15:22:22 +00:00
Tom Hacohen 69afa9d2ad Eobj: EOBJ_CLASS_BASE -> EOBJ_BASE_CLASS.
SVN revision: 70272
2012-04-17 14:01:09 +00:00
Tom Hacohen ec413015da Eobj: Doxygen - moved EOBJ_EV_* to be under EOBJ_BASE_CLASS.
SVN revision: 70271
2012-04-17 14:01:03 +00:00
Tom Hacohen 294c932c9e Eobj: Added EOBJ_BASE_DATA free function tests.
SVN revision: 70270
2012-04-17 14:00:56 +00:00
Tom Hacohen 856cf05f5c Eobj: Added weak ref.
SVN revision: 70269
2012-04-17 13:38:41 +00:00
Tom Hacohen 45f75b670a Eobj: Fixed docs.
Thanks to Daniel.

SVN revision: 70268
2012-04-17 12:58:33 +00:00
Tom Hacohen 2764023655 Eobj: eobj_generic_data_*->EOBJ_BASE_DATA_*.
And also split the base class away from eobj.c

SVN revision: 70267
2012-04-17 12:49:53 +00:00
Tom Hacohen bad7533b67 Eobj: Improved tests.
SVN revision: 70264
2012-04-17 10:27:40 +00:00
Tom Hacohen 544a663dd2 Eobj: Fixed inheritance checks and fixed mixin examples accordingly.
SVN revision: 70263
2012-04-17 10:27:37 +00:00
Tom Hacohen ceca1938c4 Eobj: add a "class errors" test.
SVN revision: 70262
2012-04-17 10:27:34 +00:00
Tom Hacohen e787f5aeae Eobj: Improved error reporting.
SVN revision: 70261
2012-04-17 10:27:31 +00:00
Tom Hacohen 3f2c369c26 Eobj: Made eobj_class_new return a const class.
Once a class is created, we are no longer allowed to touch it.

SVN revision: 70260
2012-04-17 10:27:25 +00:00
Tom Hacohen 3d245132cc Eobj: Enforce Op description order.
SVN revision: 70259
2012-04-17 08:05:09 +00:00
Tom Hacohen 519adcf26c Eobj: Add missing op descriptions in examples.
SVN revision: 70258
2012-04-17 08:05:07 +00:00
Tom Hacohen fc75dd0032 Eobj: eobj_super_do -> eobj_do_super.
SVN revision: 70257
2012-04-17 08:05:03 +00:00
Tom Hacohen 154e1b6f1b Eobj: Improved config.h a bit and fixed a pkg-config error.
SVN revision: 70236
2012-04-16 16:02:41 +00:00
Tom Hacohen 7bcda618a2 Eobj: Add pkg-config file and start installing stuff.
SVN revision: 70233
2012-04-16 15:27:32 +00:00
Tom Hacohen 8c40b3de26 Eobj: Small documentation adjustments.
SVN revision: 70232
2012-04-16 15:27:29 +00:00
Tom Hacohen eb6c52240f Eobj: Added event callbacks for Object free/del.
SVN revision: 70231
2012-04-16 14:22:11 +00:00
Tom Hacohen 18258b9002 Eobj: Renamed EOBJ_SIG_CALLBACK_* to EOBJ_EV_CALLBACK_*.
SVN revision: 70230
2012-04-16 14:22:08 +00:00
Tom Hacohen 94efb39c34 Eobj: Added EOBJ_SIG_CALLBACK_ADD/DEL to Eobj's Event desc.
SVN revision: 70229
2012-04-16 14:22:04 +00:00
Tom Hacohen bb25247d46 Eobj: Better grouped docs in doxygen.
SVN revision: 70228
2012-04-16 12:52:28 +00:00