path: root/src/tests/eo/suite/eo_test_class_simple.c (follow)
AgeCommit message (Collapse)Author
2019-03-08eo: make reflection getter const function.Cedric BAIL
Getter are usually not modifying there object. This is going to put a strong limit on what a getter property for MVVM is, as it will prevent any side effect on getting a property from a View. Reviewed-by: Xavi Artigas <> Differential Revision:
2019-02-21eo: make reflection setter able to return an error code in case of failure.Cedric BAIL
Reviewed-by: Marcel Hollerbach <> Differential Revision:
2019-02-13eo: remove class functions from eoMarcel Hollerbach
As in the previous commit explained, we want to get rid of class functions in eo, and make them just c functions right away. This commit removes the class parameter from the eo_class_function_set call, and adjusts the tests to not depend on class functions anymore. Class functions are now not tested anymore, tests that used them as a way to test *things* are adjusted to test them now with object functions, tests that just tested the working of class functions are dropped. This fixes T7675. Reviewed-by: Cedric BAIL <> Differential Revision:
2019-02-07eo: here comes reflection APIMarcel Hollerbach
this adds support in eo to generate a reflection API. To get the actaul reflection to the klass, the API efl_class_reflection_table_set needs to be called, the table in the end can be generated by eolian. Reflection API is inherited by the extended class. This means, if you have two reflection tables, first, the most upperst is called, then the next lower one is called. For now this API accepts NULL setter or getter, and will ignore them silently when they are called. fix T7681 Differential Revision:
2019-02-07eo: change API call of efl_class_functions_setMarcel Hollerbach
The next commit will bring support for something like reflection. This commit prepares the whole tree for getting another argument in efl_class_functions_set. ref T7681 Differential Revision:
2017-06-14eo: Add API efl_data_scope_safe_getJean-Philippe Andre
This is a safe version of efl_data_scope_get, meaning that it will return NULL if the object is not of the required type, or if there is no data for that class, or if the given class was used as an interface (and isn't a mixin). @feature
2016-09-09Eo: Change the way functions are registered to classesTom Hacohen
This change lets us remove a field from the structure that leads to around 20KiB more of saving in private dirty pages in elementary. This also looks a bit better and feels a bit cleaner. Breaks API and ABI.
2016-09-08Eo: Make function overrides implicit.Tom Hacohen
Before this commit, function overrides were explicit. That is, you'd have to explicitly state you were overriding a function instead of creating a new one. This made the code a tad more complex, and was also a bit more annoying to use. This commit removes this extra piece of information. This means we now store much less information per function, that will let us further optimise out structures in the future.
2016-09-05Adjust the EFL to the Eo class_initilizer changes.Tom Hacohen
2016-08-26Efl Object: remove legacy callback calls from event_callback_callVitor Sousa
Efl.Object.event_callback_call no longer calls legacy smart callbacks; calling only event callbacks registered with the given event description pointer. Create the method Efl.Object.event_callback_legacy_call to inherit the old behavior from Efl.Object.event_callback_call, calling both Efl.Object events and legacy smart callbacks. Update all other files accordingly in order to still supply legacy callbacks while they are necessary.
2016-08-23Efl object: Don't pass events to eo class creation.Tom Hacohen
This was never used and there is no plan to ever use it. I'm going to soon add a different mechanism with which it will be possible to provide them again to Eo if ever needed without breaking ABI. Though it's unlikely it will ever be.
2016-08-15Eo: Finish the renaming of Eo to the EFL.Tom Hacohen
This renames all the rest of the API to the EFL namespace except for Eo_Event that will follow soon. Obviously breaks both API and ABI.
2016-08-11Change the EFL to follow the new Eo rename.Tom Hacohen
2016-05-04eo: replace loop_get with object_findMarcel Hollerbach
Summary: object_find is more generic, so other mechanisms can also reuse the code. The object itself has to support the function, so there is no need for eo_isa which would have a negative performance impact. The base class implementation calls interface_get on the parent, so a override of the function can just call the super function to continue in the recursion. Test Plan: just run the eo test suite Reviewers: raster, tasn, jpeg Reviewed By: tasn, jpeg Subscribers: felipealmeida, netstar, cedric, jpeg Differential Revision:
2016-04-11eolian: Make promise eolian generation use macros for hooksFelipe Magno de Almeida
Modify the way hooks are defined and used by promise generation in Eolian in the Eo API. Instead of passing macro names as parameters to EO_FUNC_BODY macros, just re-define the actual hooks when it is needed.
2016-04-06eo: add before and after macro hooks for API generation functionsFelipe Magno de Almeida
Add two parameters for macros that generate API functions in Eo so that the generation can be customized with macros used by Eolian. Signed-off-by: Cedric Bail <>
2016-04-06Eo tests: Also test function calls in reinit test.Tom Hacohen
Since we cache ops we also need to check function calls work when we reinit eo, not just class_get functions. This commit essentially verifies that 5284b62e930f0bef0ed3125b3a485e0599451ef8 was done correctly.
2016-03-11Revert "Automatic migration to the new eo_add syntax."Tom Hacohen
This reverts commit 4f949a2757b6332306264d7f126b15ba7bfd37d4.
2016-03-09Automatic migration to the new eo_add syntax.Tom Hacohen
2016-03-03Fix migration script mistakes and compilation warnings.Tom Hacohen
Mostly unused vars following the removal of eo_do_ret(). However, there are some cases where the migration script got some things wrong, and I had to manually fix them.
2016-03-03Automatic migration to Eo4.Tom Hacohen
I just ran my script (email to follow) to migrate all of the EFL automatically. This commit is *only* the automatic conversion, so it can be easily reverted and re-run.
2015-09-29Eo: add a regression test for broken callback comparison.Tom Hacohen
This bug was fixed in d889da6b12e6123073edb54d766c9af1fc6db822, but it was too late at night to start hacking on extracting a regression test and adding it to the suite, so adding it now. This test makes sure that we only fallback to string comparison with legacy events.
2015-09-28Eo: Remove EO_SENTINEL.Tom Hacohen
This was never really needed because we always had the count. Removing this now because we are already breaking API and ABI.
2015-09-28Eo: Drop doc field from ops and events.Tom Hacohen
This hasn't been used for a while. Since we are going to break Eo a bit anyway it's a good opportunity to drop this. This may cause a slight performance issues with legacy events, such as smart callbacks. This shouldn't really be a problem as we've migrated away from them. If it does, we need to migrate the remaining parts. Only relevant for callbacks that are added before the classes are created, which shouldn't be possible except for smart, only for old evas callbacks.
2015-05-06Eo: Add eo_do_part.Tom Hacohen
This is a convenience macro to be used by the common pattern of getting a part and then immediately calling functions on it. For example, without this macro, you'd have to write code like: Eo *part; eo_do(obj, part = efl_part_name_get("partname")); eo_do(part, a_set(7)); while using the helper function trims it to: eo_do_part(obj, efl_part_name_get("partname"), a_set(7)); @feature
2014-04-10Eo: EO_BASE_CLASS->EO_CLASS.Tom Hacohen
2014-04-10Eo2: Updated naming Eo2->Eo.Tom Hacohen
2014-04-10eo2: add tests for method call error msgsJérémy Zurcher
2014-04-10eo2: add tests for call stack grow and shrinkJérémy Zurcher
2014-04-10eo2: change the order of EO2_OP_FUNC* to put EAPI first.Tom Hacohen
This looks cleaner and more aligned. Also, it makes more sense as the internal function is bound to the EAPI and not the other way around.
2014-04-10eo2: migrated the eo-suite test to eo2.Tom Hacohen
2013-09-27Revert "eo: libs,test,benchmarks Eo_Class -> Eo"Tom Hacohen
This reverts commit 1714fe93f42d6950171d0ab9069bfb808a62fd31. We actually want this type, it makes things clearer. Conflicts: src/tests/eo/function_overrides/function_overrides_inherit2.c src/tests/eo/function_overrides/function_overrides_simple.c src/tests/eo/suite/eo_test_class_simple.c
2013-09-27Eo: unify the class func and normal func prototypes.Tom Hacohen
Conflicts: src/lib/eo/eo.c
2013-09-27eo: libs,test,benchmarks Eo_Class -> EoJérémy Zurcher
Conflicts: src/tests/eo/suite/eo_test_general.c
2013-04-24Eo: Added test to the special eina value type.Tom Hacohen
2013-04-12Eo: Added eo_event_callback_array_* functions.Tom Hacohen
These functions let you pass an array of callbacks instead of just one. It's more memory efficient to use this if you just add a bulk of events on the same object. This commits breaks ABI, and breaks API of the EO_EV_CALLBACK_ADD/DEL signals (the event info passed).
2012-09-26merge: add eoVincent Torri
SVN revision: 77072