efl/src/lib/eo
Vitor Sousa fb7f9d4ed3 eo: add an API entry for custom instantiation of Eo objects for binding usage
Add a new function in the Eo API in order to provide more options on object
instantiation for binding creators.

For the Eo lib to be able to construct objects that inherit from bindings in
many languages we should provide a way for bindings to call different kinds of
constructors, in a way that simply overriding the `efl_constructor` method is
not enough.
We need a way to differentiate at construction time if the Eo is being
constructed from C or from the binding, because if it is the
former we need too call the inherited object constructor from C and instantiate
a new object, and if it is the later we need to avoid instantiating a
new object because we are already in the middle of the process of creating
a new one.
`efl_constructor` alone does not provide any way of distinguishing between
those situations, so, being able to pass additional information for
efl_add_start (like a custom constructor pointer) is necessary to make the
right distinction.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9070
2019-06-25 17:08:53 -07:00
..
Eo.h eo: add an API entry for custom instantiation of Eo objects for binding usage 2019-06-25 17:08:53 -07:00
efl_class.eo docs: Add @since 1.22 to all stable classes' EO docs 2019-03-22 16:57:36 +01:00
efl_object.eo eo: add events to track the ownership status of an Eo object 2019-05-29 15:53:23 -07:00
efl_object_override.eo Mark BETA classes individually 2019-02-14 17:46:50 +01:00
eina_types.eot docs: Add Eina.Value extern to eina_types.eot 2019-03-29 12:35:49 +01:00
eo.c eo: add an API entry for custom instantiation of Eo objects for binding usage 2019-06-25 17:08:53 -07:00
eo_add_fallback.c mmap memory allocation - do not used when under valgrind 2018-01-12 03:02:43 +09:00
eo_add_fallback.h Eo: Finish the renaming of Eo to the EFL. 2016-08-15 15:07:42 +01:00
eo_base_class.c eo: add events to track the ownership status of an Eo object 2019-05-29 15:53:23 -07:00
eo_class_class.c eo: lets drop efl_interfaces 2019-02-08 10:27:27 +01:00
eo_internal.h eo: Correctly name Realized classes. 2019-04-02 11:02:27 +02:00
eo_private.h eo: add events to track the ownership status of an Eo object 2019-05-29 15:53:23 -07:00
eo_ptr_indirection.c eo: Improve invalid EO ID error message 2017-06-22 13:19:23 +09:00
eo_ptr_indirection.h eo: repair EO_CLASS_POINTER macros 2019-02-06 10:00:57 +01:00
eo_ptr_indirection.x mmap memory allocation - do not used when under valgrind 2018-01-12 03:02:43 +09:00
meson.build build: add a option to disable eo file installation 2019-03-14 12:44:00 -04:00