summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Hacohen <tom@stosb.com>2015-09-28 14:15:15 +0100
committerTom Hacohen <tom@stosb.com>2015-09-28 15:09:16 +0100
commit37f84b7e966372384e2dfe5d191a6f907a17962e (patch)
tree49d261ffd0ca6cc5a3a8498a352d5aad7ff2bd49 /src
parent5f74afe4f79f660022cae07f6d113b07bfaa23a7 (diff)
Eo: Drop doc field from ops and events.
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.
Diffstat (limited to 'src')
-rw-r--r--src/bin/eolian/common_funcs.c17
-rw-r--r--src/bin/eolian/common_funcs.h2
-rw-r--r--src/bin/eolian/eo_generator.c25
-rw-r--r--src/bindings/eo_cxx/eo_inherit_bindings.hh2
-rw-r--r--src/examples/eo/evas/evas_elw_button.c2
-rw-r--r--src/lib/efl/interfaces/efl_interfaces_main.c4
-rw-r--r--src/lib/eo/Eo.h21
-rw-r--r--src/lib/eo/eo.c44
-rw-r--r--src/lib/eo/eo_base.eo1
-rw-r--r--src/lib/eo/eo_base_class.c17
-rw-r--r--src/lib/eolian_cxx/grammar/inheritance_base_generator.hh1
-rw-r--r--src/lib/evas/canvas/evas_callbacks.c24
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_node_callback.h4
-rw-r--r--src/tests/eo/access/access_inherit.c2
-rw-r--r--src/tests/eo/access/access_simple.c4
-rw-r--r--src/tests/eo/composite_objects/composite_objects_simple.c134
-rw-r--r--src/tests/eo/constructors/constructors_mixin.c2
-rw-r--r--src/tests/eo/constructors/constructors_simple.c8
-rw-r--r--src/tests/eo/function_overrides/function_overrides_inherit2.c4
-rw-r--r--src/tests/eo/function_overrides/function_overrides_simple.c8
-rw-r--r--src/tests/eo/interface/interface_interface.c2
-rw-r--r--src/tests/eo/interface/interface_interface2.c2
-rw-r--r--src/tests/eo/interface/interface_simple.c8
-rw-r--r--src/tests/eo/mixin/mixin_mixin.c2
-rw-r--r--src/tests/eo/mixin/mixin_simple.c8
-rw-r--r--src/tests/eo/signals/signals_simple.c4
-rw-r--r--src/tests/eo/suite/eo_test_class_errors.c6
-rw-r--r--src/tests/eo/suite/eo_test_class_simple.c16
-rw-r--r--src/tests/eo/suite/eo_test_general.c4
-rw-r--r--src/tests/eo/suite/eo_test_threaded_calls.c6
-rw-r--r--src/tests/eolian/data/class_simple_ref.c6
-rw-r--r--src/tests/eolian/data/override_ref.c16
32 files changed, 184 insertions, 222 deletions
diff --git a/src/bin/eolian/common_funcs.c b/src/bin/eolian/common_funcs.c
index d00effd2f0..515f249eb5 100644
--- a/src/bin/eolian/common_funcs.c
+++ b/src/bin/eolian/common_funcs.c
@@ -155,20 +155,3 @@ _startline(char *str, char *pos)
155 155
156 return ret; 156 return ret;
157} 157}
158
159char*
160_source_desc_get(const char *str)
161{
162 Eina_Strbuf *part = eina_strbuf_new();
163 if (str)
164 {
165 const char *p = strchr(str, '\n');
166 size_t offs = (p) ? (size_t)(p - str) : strlen(str);
167 eina_strbuf_append_n(part, str, offs);
168 eina_strbuf_replace_all(part, "\\", "\\\\");
169 eina_strbuf_replace_all(part, "\"", "\\\"");
170 }
171 char *ret = eina_strbuf_string_steal(part);
172 eina_strbuf_free(part);
173 return ret;
174}
diff --git a/src/bin/eolian/common_funcs.h b/src/bin/eolian/common_funcs.h
index a92bffd9b3..4f72a9b6f2 100644
--- a/src/bin/eolian/common_funcs.h
+++ b/src/bin/eolian/common_funcs.h
@@ -63,8 +63,6 @@ char *_nextline(char *str, unsigned int lines);
63 63
64char *_startline(char *str, char *pos); 64char *_startline(char *str, char *pos);
65 65
66char *_source_desc_get(const char *str);
67
68void _class_env_create(const Eolian_Class *class, const char *over_classname, _eolian_class_vars *env); 66void _class_env_create(const Eolian_Class *class, const char *over_classname, _eolian_class_vars *env);
69 67
70void _class_func_env_create(const Eolian_Class *class, const char *funcname, Eolian_Function_Type ftype EINA_UNUSED, _eolian_class_func_vars *env); 68void _class_func_env_create(const Eolian_Class *class, const char *funcname, Eolian_Function_Type ftype EINA_UNUSED, _eolian_class_func_vars *env);
diff --git a/src/bin/eolian/eo_generator.c b/src/bin/eolian/eo_generator.c
index a07bdfc539..5ade88d2bd 100644
--- a/src/bin/eolian/eo_generator.c
+++ b/src/bin/eolian/eo_generator.c
@@ -586,7 +586,7 @@ eo_bind_func_generate(const Eolian_Class *class, const Eolian_Function *funcid,
586 586
587static Eina_Bool 587static Eina_Bool
588eo_op_desc_generate(const Eolian_Class *class, const Eolian_Function *fid, Eolian_Function_Type ftype, 588eo_op_desc_generate(const Eolian_Class *class, const Eolian_Function *fid, Eolian_Function_Type ftype,
589 const char *desc, Eina_Strbuf *buf) 589 Eina_Strbuf *buf)
590{ 590{
591 _eolian_class_func_vars func_env; 591 _eolian_class_func_vars func_env;
592 const char *funcname = eolian_function_name_get(fid); 592 const char *funcname = eolian_function_name_get(fid);
@@ -603,12 +603,12 @@ eo_op_desc_generate(const Eolian_Class *class, const Eolian_Function *fid, Eolia
603 if (!is_virtual_pure) 603 if (!is_virtual_pure)
604 { 604 {
605 Eolian_Function_Type ftype2 = (Eolian_Function_Type) eina_hash_find(_funcs_params_init, funcname); 605 Eolian_Function_Type ftype2 = (Eolian_Function_Type) eina_hash_find(_funcs_params_init, funcname);
606 eina_strbuf_append_printf(buf, "%s_%s_%s%s, \"%s\"),", 606 eina_strbuf_append_printf(buf, "%s_%s_%s%s),",
607 ftype == ftype2?"__eolian":"", 607 ftype == ftype2?"__eolian":"",
608 class_env.lower_classname, funcname, suffix, desc); 608 class_env.lower_classname, funcname, suffix);
609 } 609 }
610 else 610 else
611 eina_strbuf_append_printf(buf, "NULL, \"%s\"),", desc); 611 eina_strbuf_append_printf(buf, "NULL),");
612 612
613 return EINA_TRUE; 613 return EINA_TRUE;
614} 614}
@@ -625,16 +625,11 @@ eo_source_beginning_generate(const Eolian_Class *class, Eina_Strbuf *buf)
625 EINA_ITERATOR_FOREACH(itr, event) 625 EINA_ITERATOR_FOREACH(itr, event)
626 { 626 {
627 Eina_Stringshare *evname = eolian_event_c_name_get(event); 627 Eina_Stringshare *evname = eolian_event_c_name_get(event);
628 const char *evdesc = NULL;
629 const Eolian_Documentation *doc = eolian_event_documentation_get(event);
630 if (doc) evdesc = eolian_documentation_summary_get(doc);
631 char *evdesc_line1 = _source_desc_get(evdesc);
632 628
633 eina_strbuf_append_printf(tmpbuf, 629 eina_strbuf_append_printf(tmpbuf,
634 "EOAPI const Eo_Event_Description _%s =\n EO_EVENT_DESCRIPTION(\"%s\", \"%s\");\n", 630 "EOAPI const Eo_Event_Description _%s =\n EO_EVENT_DESCRIPTION(\"%s\");\n",
635 evname, eolian_event_name_get(event), evdesc_line1); 631 evname, eolian_event_name_get(event));
636 eina_stringshare_del(evname); 632 eina_stringshare_del(evname);
637 free(evdesc_line1);
638 } 633 }
639 eina_iterator_free(itr); 634 eina_iterator_free(itr);
640 635
@@ -652,14 +647,8 @@ _desc_generate(const Eolian_Class *class, const Eolian_Function *fid, Eolian_Fun
652 snprintf(tmpstr, sizeof(tmpstr), "%s%s", funcname, (ftype == EOLIAN_PROP_SET) 647 snprintf(tmpstr, sizeof(tmpstr), "%s%s", funcname, (ftype == EOLIAN_PROP_SET)
653 ? "_set" : ((ftype == EOLIAN_PROP_GET) ? "_get" : "")); 648 ? "_set" : ((ftype == EOLIAN_PROP_GET) ? "_get" : ""));
654 649
655 const char *opdesc = NULL; 650 eo_op_desc_generate(class, fid, ftype, tmpbuf);
656 const Eolian_Documentation *doc = eolian_function_documentation_get(fid, ftype);
657 if (doc) opdesc = eolian_documentation_summary_get(doc);
658
659 char *desc = _source_desc_get(opdesc);
660 eo_op_desc_generate(class, fid, ftype, desc, tmpbuf);
661 eina_strbuf_append(str_op, eina_strbuf_string_get(tmpbuf)); 651 eina_strbuf_append(str_op, eina_strbuf_string_get(tmpbuf));
662 free(desc);
663} 652}
664 653
665static Eina_Bool 654static Eina_Bool
diff --git a/src/bindings/eo_cxx/eo_inherit_bindings.hh b/src/bindings/eo_cxx/eo_inherit_bindings.hh
index 6022c1d305..9d8ca6df6b 100644
--- a/src/bindings/eo_cxx/eo_inherit_bindings.hh
+++ b/src/bindings/eo_cxx/eo_inherit_bindings.hh
@@ -138,13 +138,11 @@ Eo_Class const* create_class(eina::index_sequence<S...>)
138 ); 138 );
139 op_descs[detail::operation_description_size<E...>::value].op = EO_NOOP; 139 op_descs[detail::operation_description_size<E...>::value].op = EO_NOOP;
140 op_descs[detail::operation_description_size<E...>::value].op_type = EO_OP_TYPE_REGULAR; 140 op_descs[detail::operation_description_size<E...>::value].op_type = EO_OP_TYPE_REGULAR;
141 op_descs[detail::operation_description_size<E...>::value].doc = NULL;
142 141
143 op_descs[detail::operation_description_size<E...>::value+1].func = 0; 142 op_descs[detail::operation_description_size<E...>::value+1].func = 0;
144 op_descs[detail::operation_description_size<E...>::value+1].api_func = 0; 143 op_descs[detail::operation_description_size<E...>::value+1].api_func = 0;
145 op_descs[detail::operation_description_size<E...>::value+1].op = 0; 144 op_descs[detail::operation_description_size<E...>::value+1].op = 0;
146 op_descs[detail::operation_description_size<E...>::value+1].op_type = EO_OP_TYPE_INVALID; 145 op_descs[detail::operation_description_size<E...>::value+1].op_type = EO_OP_TYPE_INVALID;
147 op_descs[detail::operation_description_size<E...>::value+1].doc = NULL;
148 146
149 typedef inherit<D, E...> inherit_type; 147 typedef inherit<D, E...> inherit_type;
150 using namespace detail; 148 using namespace detail;
diff --git a/src/examples/eo/evas/evas_elw_button.c b/src/examples/eo/evas/evas_elw_button.c
index 2618a4bd8a..7067171dc4 100644
--- a/src/examples/eo/evas/evas_elw_button.c
+++ b/src/examples/eo/evas/evas_elw_button.c
@@ -11,7 +11,7 @@
11EAPI Eo_Op ELW_BUTTON_BASE_ID = 0; 11EAPI Eo_Op ELW_BUTTON_BASE_ID = 0;
12 12
13EAPI const Eo_Event_Description _EV_CLICKED = 13EAPI const Eo_Event_Description _EV_CLICKED =
14 EO_EVENT_DESCRIPTION("clicked", "Called when there was a click."); 14 EO_EVENT_DESCRIPTION("clicked");
15 15
16typedef struct 16typedef struct
17{ 17{
diff --git a/src/lib/efl/interfaces/efl_interfaces_main.c b/src/lib/efl/interfaces/efl_interfaces_main.c
index 5b044ff87e..1f2eeb8969 100644
--- a/src/lib/efl/interfaces/efl_interfaces_main.c
+++ b/src/lib/efl/interfaces/efl_interfaces_main.c
@@ -23,9 +23,9 @@
23#include "interfaces/efl_gfx_filter.eo.c" 23#include "interfaces/efl_gfx_filter.eo.c"
24 24
25EAPI const Eo_Event_Description _EFL_GFX_CHANGED = 25EAPI const Eo_Event_Description _EFL_GFX_CHANGED =
26 EO_EVENT_DESCRIPTION("Graphics changed", "The visual representation of the object changed"); 26 EO_EVENT_DESCRIPTION("Graphics changed");
27 27
28EAPI const Eo_Event_Description _EFL_GFX_PATH_CHANGED = 28EAPI const Eo_Event_Description _EFL_GFX_PATH_CHANGED =
29 EO_EVENT_DESCRIPTION("Graphics path changed", "The path of a shape object changed"); 29 EO_EVENT_DESCRIPTION("Graphics path changed");
30 30
31#include "interfaces/efl_model_base.eo.c" 31#include "interfaces/efl_model_base.eo.c"
diff --git a/src/lib/eo/Eo.h b/src/lib/eo/Eo.h
index a9b97f1693..48f71c8e6f 100644
--- a/src/lib/eo/Eo.h
+++ b/src/lib/eo/Eo.h
@@ -242,24 +242,22 @@ typedef unsigned int Eo_Op;
242 */ 242 */
243 243
244/** 244/**
245 * @def EO_EVENT_DESCRIPTION(name, doc) 245 * @def EO_EVENT_DESCRIPTION(name)
246 * An helper macro to help populating #Eo_Event_Description 246 * An helper macro to help populating #Eo_Event_Description
247 * @param name The name of the event. 247 * @param name The name of the event.
248 * @param doc Additional doc for the event.
249 * @see Eo_Event_Description 248 * @see Eo_Event_Description
250 */ 249 */
251#define EO_EVENT_DESCRIPTION(name, doc) { name, doc, EINA_FALSE } 250#define EO_EVENT_DESCRIPTION(name) { name, EINA_FALSE }
252 251
253/** 252/**
254 * @def EO_HOT_EVENT_DESCRIPTION(name, doc) 253 * @def EO_HOT_EVENT_DESCRIPTION(name)
255 * An helper macro to help populating #Eo_Event_Description and make 254 * An helper macro to help populating #Eo_Event_Description and make
256 * the event impossible to freeze. 255 * the event impossible to freeze.
257 * @param name The name of the event. 256 * @param name The name of the event.
258 * @param doc Additional doc for the event.
259 * @see Eo_Event_Description 257 * @see Eo_Event_Description
260 * @see EO_EVENT_DESCRIPTION 258 * @see EO_EVENT_DESCRIPTION
261 */ 259 */
262#define EO_HOT_EVENT_DESCRIPTION(name, doc) { name, doc, EINA_TRUE } 260#define EO_HOT_EVENT_DESCRIPTION(name) { name, EINA_TRUE }
263 261
264 262
265 263
@@ -351,7 +349,6 @@ typedef struct _Eo_Op_Description
351 void *func; /**< The static function to call for the op. */ 349 void *func; /**< The static function to call for the op. */
352 Eo_Op op; /**< The op. */ 350 Eo_Op op; /**< The op. */
353 Eo_Op_Type op_type; /**< The type of the Op. */ 351 Eo_Op_Type op_type; /**< The type of the Op. */
354 const char *doc; /**< Explanation about the Op. */
355} Eo_Op_Description; 352} Eo_Op_Description;
356 353
357/** 354/**
@@ -540,11 +537,11 @@ EAPI extern Eo_Hook_Call eo_hook_call_post;
540# define _EO_OP_API_ENTRY(a) a, #a 537# define _EO_OP_API_ENTRY(a) a, #a
541#endif 538#endif
542 539
543#define EO_OP_FUNC(_api, _private, _doc) { _EO_OP_API_ENTRY(_api), _private, EO_NOOP, EO_OP_TYPE_REGULAR, _doc } 540#define EO_OP_FUNC(_api, _private) { _EO_OP_API_ENTRY(_api), _private, EO_NOOP, EO_OP_TYPE_REGULAR }
544#define EO_OP_CLASS_FUNC(_api, _private, _doc) { _EO_OP_API_ENTRY(_api), _private, EO_NOOP, EO_OP_TYPE_CLASS, _doc } 541#define EO_OP_CLASS_FUNC(_api, _private) { _EO_OP_API_ENTRY(_api), _private, EO_NOOP, EO_OP_TYPE_CLASS }
545#define EO_OP_FUNC_OVERRIDE(_api, _private) { _EO_OP_API_ENTRY(_api), _private, EO_OP_OVERRIDE, EO_OP_TYPE_REGULAR, NULL } 542#define EO_OP_FUNC_OVERRIDE(_api, _private) { _EO_OP_API_ENTRY(_api), _private, EO_OP_OVERRIDE, EO_OP_TYPE_REGULAR }
546#define EO_OP_CLASS_FUNC_OVERRIDE(_api, _private) { _EO_OP_API_ENTRY(_api), _private, EO_OP_OVERRIDE, EO_OP_TYPE_CLASS, NULL } 543#define EO_OP_CLASS_FUNC_OVERRIDE(_api, _private) { _EO_OP_API_ENTRY(_api), _private, EO_OP_OVERRIDE, EO_OP_TYPE_CLASS }
547#define EO_OP_SENTINEL { _EO_OP_API_ENTRY(NULL), NULL, 0, EO_OP_TYPE_INVALID, NULL } 544#define EO_OP_SENTINEL { _EO_OP_API_ENTRY(NULL), NULL, 0, EO_OP_TYPE_INVALID }
548 545
549// returns the OP id corresponding to the given api_func 546// returns the OP id corresponding to the given api_func
550EAPI Eo_Op _eo_api_op_id_get(const void *api_func, Eina_Bool is_main_loop, const char *file, int line); 547EAPI Eo_Op _eo_api_op_id_get(const void *api_func, Eina_Bool is_main_loop, const char *file, int line);
diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c
index 4cd992dc71..d7c3953a98 100644
--- a/src/lib/eo/eo.c
+++ b/src/lib/eo/eo.c
@@ -219,10 +219,32 @@ _eo_op_id_desc_get(Eo_Op op)
219} 219}
220 220
221static const char * 221static const char *
222_eo_op_desc_name_get(const Eo_Op_Description *desc)
223{
224 static const char *fct_name = "unknown";
225
226 if (!desc)
227 {
228 return fct_name;
229 }
230
231#ifndef _WIN32
232# ifdef HAVE_DLADDR
233 static Dl_info info;
234 if (dladdr(desc->api_func, &info) != 0)
235 fct_name = info.dli_sname;
236# endif
237#else
238 fct_name = api_func; /* Same on windows */
239#endif
240 return fct_name;
241}
242
243static const char *
222_eo_op_id_name_get(Eo_Op op) 244_eo_op_id_name_get(Eo_Op op)
223{ 245{
224 const Eo_Op_Description *desc = _eo_op_id_desc_get(op); 246 const Eo_Op_Description *desc = _eo_op_id_desc_get(op);
225 return (desc) ? desc->doc : NULL; 247 return _eo_op_desc_name_get(desc);
226} 248}
227 249
228static inline const op_type_funcs * 250static inline const op_type_funcs *
@@ -772,16 +794,7 @@ _eo_api_op_id_get(const void *api_func, Eina_Bool is_main_loop, const char *file
772 794
773 if (desc == NULL) 795 if (desc == NULL)
774 { 796 {
775 const char *fct_name = "unknown"; 797 const char *fct_name = _eo_op_desc_name_get(desc);
776#ifndef _WIN32
777# ifdef HAVE_DLADDR
778 Dl_info info;
779 if (dladdr(api_func, &info) != 0)
780 fct_name = info.dli_sname;
781# endif
782#else
783 fct_name = api_func; /* Same on windows */
784#endif
785 ERR("in %s:%d: unable to resolve %s api func '%s' %p in class '%s'.", 798 ERR("in %s:%d: unable to resolve %s api func '%s' %p in class '%s'.",
786 file, line, (class_ref ? "class" : "regular"), 799 file, line, (class_ref ? "class" : "regular"),
787 fct_name, api_func, klass->desc->name); 800 fct_name, api_func, klass->desc->name);
@@ -826,7 +839,7 @@ _eo_class_funcs_set(_Eo_Class *klass)
826 if(op_desc->api_func == NULL) 839 if(op_desc->api_func == NULL)
827 { 840 {
828 ERR("Class '%s': NULL API not allowed (%d NULL->%p '%s').", 841 ERR("Class '%s': NULL API not allowed (%d NULL->%p '%s').",
829 klass->desc->name, op_desc->op, op_desc->func, op_desc->doc); 842 klass->desc->name, op_desc->op, op_desc->func, _eo_op_desc_name_get(op_desc));
830 return EINA_FALSE; 843 return EINA_FALSE;
831 } 844 }
832 845
@@ -835,7 +848,7 @@ _eo_class_funcs_set(_Eo_Class *klass)
835 if (op_desc->api_func == last_api_func) 848 if (op_desc->api_func == last_api_func)
836 { 849 {
837 ERR("Class '%s': API previously defined (%d %p->%p '%s').", 850 ERR("Class '%s': API previously defined (%d %p->%p '%s').",
838 klass->desc->name, op_desc->op, op_desc->api_func, op_desc->func, op_desc->doc); 851 klass->desc->name, op_desc->op, op_desc->api_func, op_desc->func, _eo_op_desc_name_get(op_desc));
839 return EINA_FALSE; 852 return EINA_FALSE;
840 } 853 }
841 op_desc->op = op_id; 854 op_desc->op = op_id;
@@ -852,15 +865,14 @@ _eo_class_funcs_set(_Eo_Class *klass)
852 if (api_desc == NULL) 865 if (api_desc == NULL)
853 { 866 {
854 ERR("Class '%s': Can't find api func description in class hierarchy (%p->%p) (%s).", 867 ERR("Class '%s': Can't find api func description in class hierarchy (%p->%p) (%s).",
855 klass->desc->name, op_desc->api_func, op_desc->func, op_desc->doc); 868 klass->desc->name, op_desc->api_func, op_desc->func, _eo_op_desc_name_get(op_desc));
856 return EINA_FALSE; 869 return EINA_FALSE;
857 } 870 }
858 871
859 op_desc->op = api_desc->op; 872 op_desc->op = api_desc->op;
860 op_desc->doc = api_desc->doc;
861 } 873 }
862 874
863 DBG(" %4d %p->%p '%s'", op_desc->op, op_desc->api_func, op_desc->func, op_desc->doc); 875 DBG(" %4d %p->%p '%s'", op_desc->op, op_desc->api_func, op_desc->func, _eo_op_desc_name_get(op_desc));
864 876
865 if (!_dich_func_set(klass, op_desc->op, op_desc->func)) 877 if (!_dich_func_set(klass, op_desc->op, op_desc->func))
866 return EINA_FALSE; 878 return EINA_FALSE;
diff --git a/src/lib/eo/eo_base.eo b/src/lib/eo/eo_base.eo
index 73223e691c..fbce01c7a9 100644
--- a/src/lib/eo/eo_base.eo
+++ b/src/lib/eo/eo_base.eo
@@ -6,7 +6,6 @@ type @extern Eo.Event_Cb: __builtin_event_cb;
6struct Eo.Event_Description { 6struct Eo.Event_Description {
7 [[This struct holds the description of a specific event.]] 7 [[This struct holds the description of a specific event.]]
8 name: const(char) *; [[name of the event.]] 8 name: const(char) *; [[name of the event.]]
9 doc: const(char) *; [[Explanation about the event.]]
10 unfreezable: bool; [[Eina_True if the event cannot be frozen.]] 9 unfreezable: bool; [[Eina_True if the event cannot be frozen.]]
11} 10}
12 11
diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index bb0187790c..f85aa4e78a 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -401,7 +401,6 @@ _wref_destruct(Eo_Base_Data *pd)
401 401
402/* XXX: Legacy support, remove when legacy is dead. */ 402/* XXX: Legacy support, remove when legacy is dead. */
403static Eina_Hash *_legacy_events_hash = NULL; 403static Eina_Hash *_legacy_events_hash = NULL;
404static const char *_legacy_event_desc = "Dynamically generated legacy event";
405 404
406EAPI const Eo_Event_Description * 405EAPI const Eo_Event_Description *
407eo_base_legacy_only_event_description_get(const char *_event_name) 406eo_base_legacy_only_event_description_get(const char *_event_name)
@@ -412,7 +411,6 @@ eo_base_legacy_only_event_description_get(const char *_event_name)
412 { 411 {
413 event_desc = calloc(1, sizeof(Eo_Event_Description)); 412 event_desc = calloc(1, sizeof(Eo_Event_Description));
414 event_desc->name = event_name; 413 event_desc->name = event_name;
415 event_desc->doc = _legacy_event_desc;
416 eina_hash_add(_legacy_events_hash, event_name, event_desc); 414 eina_hash_add(_legacy_events_hash, event_name, event_desc);
417 } 415 }
418 else 416 else
@@ -643,22 +641,13 @@ _cb_desc_match(const Eo_Event_Description *a, const Eo_Event_Description *b)
643 if (!a) 641 if (!a)
644 return EINA_FALSE; 642 return EINA_FALSE;
645 643
646 /* If either is legacy, fallback to string comparison. */ 644 if (a == b)
647 if ((a->doc == _legacy_event_desc) || (b->doc == _legacy_event_desc))
648 { 645 {
649 /* Take stringshare shortcut if both are legacy */ 646 return EINA_TRUE;
650 if (a->doc == b->doc)
651 {
652 return (a->name == b->name);
653 }
654 else
655 {
656 return !strcmp(a->name, b->name);
657 }
658 } 647 }
659 else 648 else
660 { 649 {
661 return (a == b); 650 return !strcmp(a->name, b->name);
662 } 651 }
663} 652}
664 653
diff --git a/src/lib/eolian_cxx/grammar/inheritance_base_generator.hh b/src/lib/eolian_cxx/grammar/inheritance_base_generator.hh
index a3918a9ead..536c9e3668 100644
--- a/src/lib/eolian_cxx/grammar/inheritance_base_generator.hh
+++ b/src/lib/eolian_cxx/grammar/inheritance_base_generator.hh
@@ -49,7 +49,6 @@ operator<<(std::ostream& out, inheritance_operation const& x)
49 << func.impl << ");" << endl 49 << func.impl << ");" << endl
50 << tab(1) << "ops[i].op = EO_OP_OVERRIDE;" << endl 50 << tab(1) << "ops[i].op = EO_OP_OVERRIDE;" << endl
51 << tab(1) << "ops[i].op_type = EO_OP_TYPE_REGULAR;" << endl // XXX class ops 51 << tab(1) << "ops[i].op_type = EO_OP_TYPE_REGULAR;" << endl // XXX class ops
52 << tab(1) << "ops[i].doc = NULL;" << endl
53 << tab(1) << "++i;" << endl 52 << tab(1) << "++i;" << endl
54 << scope_guard_tail(x._cls, func) 53 << scope_guard_tail(x._cls, func)
55 << endl; 54 << endl;
diff --git a/src/lib/evas/canvas/evas_callbacks.c b/src/lib/evas/canvas/evas_callbacks.c
index 9c8e3f4c48..d217315657 100644
--- a/src/lib/evas/canvas/evas_callbacks.c
+++ b/src/lib/evas/canvas/evas_callbacks.c
@@ -8,32 +8,30 @@ EVAS_MEMPOOL(_mp_pc);
8extern Eina_Hash* signals_hash_table; 8extern Eina_Hash* signals_hash_table;
9 9
10EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_PRE = 10EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_PRE =
11 EO_EVENT_DESCRIPTION("Render Pre", "Called just before rendering starts on the canvas target @since 1.2"); 11 EO_EVENT_DESCRIPTION("Render Pre");
12EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_POST = 12EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_POST =
13 EO_EVENT_DESCRIPTION("Render Post", "Called just after rendering stops on the canvas target @since 1.2"); 13 EO_EVENT_DESCRIPTION("Render Post");
14 14
15EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_AXIS_UPDATE = 15EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_AXIS_UPDATE =
16 EO_EVENT_DESCRIPTION("Axis Update", "Device axis value changed"); 16 EO_EVENT_DESCRIPTION("Axis Update");
17 17
18EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_FOCUS_IN = 18EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_FOCUS_IN =
19 EO_HOT_EVENT_DESCRIPTION("Canvas Focus In", "Canvas got focus as a whole"); 19 EO_HOT_EVENT_DESCRIPTION("Canvas Focus In");
20EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_FOCUS_OUT = 20EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_FOCUS_OUT =
21 EO_HOT_EVENT_DESCRIPTION("Canvas Focus Out", "Canvas lost focus as a whole"); 21 EO_HOT_EVENT_DESCRIPTION("Canvas Focus Out");
22EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE = 22EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE =
23 EO_HOT_EVENT_DESCRIPTION("Render Flush Pre", "Called just before rendering is updated on the canvas target"); 23 EO_HOT_EVENT_DESCRIPTION("Render Flush Pre");
24EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_FLUSH_POST = 24EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_FLUSH_POST =
25 EO_HOT_EVENT_DESCRIPTION("Render Flush Post", "Called just after rendering is updated on the canvas target"); 25 EO_HOT_EVENT_DESCRIPTION("Render Flush Post");
26EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_OBJECT_FOCUS_IN = 26EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_OBJECT_FOCUS_IN =
27 EO_HOT_EVENT_DESCRIPTION("Canvas Object Focus In", "Canvas object got focus"); 27 EO_HOT_EVENT_DESCRIPTION("Canvas Object Focus In");
28EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_OBJECT_FOCUS_OUT = 28EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_OBJECT_FOCUS_OUT =
29 EO_HOT_EVENT_DESCRIPTION("Canvas Object Focus Out", "Canvas object lost focus"); 29 EO_HOT_EVENT_DESCRIPTION("Canvas Object Focus Out");
30 30
31EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_DEVICE_CHANGED = 31EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_DEVICE_CHANGED =
32 EO_HOT_EVENT_DESCRIPTION("Device changed", 32 EO_HOT_EVENT_DESCRIPTION("Device changed");
33 "Devices added, removed or changed to the canvas");
34EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE = 33EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE =
35 EO_HOT_EVENT_DESCRIPTION("Canvas viewport resize", 34 EO_HOT_EVENT_DESCRIPTION("Canvas viewport resize");
36 "Canvas viewport is resized");
37/** 35/**
38 * Evas events descriptions for Eo. 36 * Evas events descriptions for Eo.
39 */ 37 */
diff --git a/src/lib/evas/canvas/evas_canvas3d_node_callback.h b/src/lib/evas/canvas/evas_canvas3d_node_callback.h
index d61693f0ae..90a1f56226 100644
--- a/src/lib/evas/canvas/evas_canvas3d_node_callback.h
+++ b/src/lib/evas/canvas/evas_canvas3d_node_callback.h
@@ -18,8 +18,8 @@ typedef enum _Evas_Canvas3D_Node_Private_Callback_Type
18 18
19const Eo_Event_Description evas_canvas3d_node_private_event_desc[] = 19const Eo_Event_Description evas_canvas3d_node_private_event_desc[] =
20{ 20{
21 {"clicked,private", "private event clicked", EINA_FALSE}, 21 EO_EVENT_DESCRIPTION("clicked,private"),
22 {"collision,private", "private event collision", EINA_FALSE} 22 EO_EVENT_DESCRIPTION("collision,private")
23}; 23};
24 24
25/*Private callbacks */ 25/*Private callbacks */
diff --git a/src/tests/eo/access/access_inherit.c b/src/tests/eo/access/access_inherit.c
index 46db0c22ad..bf12979dab 100644
--- a/src/tests/eo/access/access_inherit.c
+++ b/src/tests/eo/access/access_inherit.c
@@ -19,7 +19,7 @@ _prot_print(Eo *obj, void *class_data EINA_UNUSED)
19EAPI EO_VOID_FUNC_BODY(inherit_prot_print); 19EAPI EO_VOID_FUNC_BODY(inherit_prot_print);
20 20
21static Eo_Op_Description op_descs[] = { 21static Eo_Op_Description op_descs[] = {
22 EO_OP_FUNC(inherit_prot_print, _prot_print, "Print protected var x1."), 22 EO_OP_FUNC(inherit_prot_print, _prot_print),
23 EO_OP_SENTINEL 23 EO_OP_SENTINEL
24}; 24};
25 25
diff --git a/src/tests/eo/access/access_simple.c b/src/tests/eo/access/access_simple.c
index 6bf44ded70..accf54122f 100644
--- a/src/tests/eo/access/access_simple.c
+++ b/src/tests/eo/access/access_simple.c
@@ -13,7 +13,7 @@ typedef struct
13} Private_Data; 13} Private_Data;
14 14
15EAPI const Eo_Event_Description _EV_A_CHANGED = 15EAPI const Eo_Event_Description _EV_A_CHANGED =
16 EO_EVENT_DESCRIPTION("a,changed", "Called when a has changed."); 16 EO_EVENT_DESCRIPTION("a,changed");
17 17
18#define MY_CLASS SIMPLE_CLASS 18#define MY_CLASS SIMPLE_CLASS
19 19
@@ -33,7 +33,7 @@ _a_set(Eo *obj, void *class_data, int a)
33EAPI EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a); 33EAPI EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a);
34 34
35static Eo_Op_Description op_descs[] = { 35static Eo_Op_Description op_descs[] = {
36 EO_OP_FUNC(simple_a_set, _a_set, "Set property A"), 36 EO_OP_FUNC(simple_a_set, _a_set),
37 EO_OP_SENTINEL 37 EO_OP_SENTINEL
38}; 38};
39 39
diff --git a/src/tests/eo/composite_objects/composite_objects_simple.c b/src/tests/eo/composite_objects/composite_objects_simple.c
index 3ea5b87ed1..cf95f998e0 100644
--- a/src/tests/eo/composite_objects/composite_objects_simple.c
+++ b/src/tests/eo/composite_objects/composite_objects_simple.c
@@ -6,7 +6,7 @@
6#include "composite_objects_simple.h" 6#include "composite_objects_simple.h"
7 7
8EAPI const Eo_Event_Description _EV_A_CHANGED = 8EAPI const Eo_Event_Description _EV_A_CHANGED =
9 EO_EVENT_DESCRIPTION("a,changed", "Called when a has changed."); 9 EO_EVENT_DESCRIPTION("a,changed");
10 10
11#define MY_CLASS SIMPLE_CLASS 11#define MY_CLASS SIMPLE_CLASS
12 12
@@ -100,72 +100,72 @@ EAPI EO_VOID_FUNC_BODYV(simple_a_get32, EO_FUNC_CALL(a), int a);
100 * This is needed in order to properly test some edge cases (see commit message 100 * This is needed in order to properly test some edge cases (see commit message
101 * for more info). */ 101 * for more info). */
102static Eo_Op_Description op_descs[] = { 102static Eo_Op_Description op_descs[] = {
103 EO_OP_FUNC(simple_a_set1, _a_set, "Littering the ids"), 103 EO_OP_FUNC(simple_a_set1, _a_set),
104 EO_OP_FUNC(simple_a_set2, _a_set, "Littering the ids"), 104 EO_OP_FUNC(simple_a_set2, _a_set),
105 EO_OP_FUNC(simple_a_set3, _a_set, "Littering the ids"), 105 EO_OP_FUNC(simple_a_set3, _a_set),
106 EO_OP_FUNC(simple_a_set4, _a_set, "Littering the ids"), 106 EO_OP_FUNC(simple_a_set4, _a_set),
107 EO_OP_FUNC(simple_a_set5, _a_set, "Littering the ids"), 107 EO_OP_FUNC(simple_a_set5, _a_set),
108 EO_OP_FUNC(simple_a_set6, _a_set, "Littering the ids"), 108 EO_OP_FUNC(simple_a_set6, _a_set),
109 EO_OP_FUNC(simple_a_set7, _a_set, "Littering the ids"), 109 EO_OP_FUNC(simple_a_set7, _a_set),
110 EO_OP_FUNC(simple_a_set8, _a_set, "Littering the ids"), 110 EO_OP_FUNC(simple_a_set8, _a_set),
111 EO_OP_FUNC(simple_a_set9, _a_set, "Littering the ids"), 111 EO_OP_FUNC(simple_a_set9, _a_set),
112 EO_OP_FUNC(simple_a_set10, _a_set, "Littering the ids"), 112 EO_OP_FUNC(simple_a_set10, _a_set),
113 EO_OP_FUNC(simple_a_set11, _a_set, "Littering the ids"), 113 EO_OP_FUNC(simple_a_set11, _a_set),
114 EO_OP_FUNC(simple_a_set12, _a_set, "Littering the ids"), 114 EO_OP_FUNC(simple_a_set12, _a_set),
115 EO_OP_FUNC(simple_a_set13, _a_set, "Littering the ids"), 115 EO_OP_FUNC(simple_a_set13, _a_set),
116 EO_OP_FUNC(simple_a_set14, _a_set, "Littering the ids"), 116 EO_OP_FUNC(simple_a_set14, _a_set),
117 EO_OP_FUNC(simple_a_set15, _a_set, "Littering the ids"), 117 EO_OP_FUNC(simple_a_set15, _a_set),
118 EO_OP_FUNC(simple_a_set16, _a_set, "Littering the ids"), 118 EO_OP_FUNC(simple_a_set16, _a_set),
119 EO_OP_FUNC(simple_a_set17, _a_set, "Littering the ids"), 119 EO_OP_FUNC(simple_a_set17, _a_set),
120 EO_OP_FUNC(simple_a_set18, _a_set, "Littering the ids"), 120 EO_OP_FUNC(simple_a_set18, _a_set),
121 EO_OP_FUNC(simple_a_set19, _a_set, "Littering the ids"), 121 EO_OP_FUNC(simple_a_set19, _a_set),
122 EO_OP_FUNC(simple_a_set20, _a_set, "Littering the ids"), 122 EO_OP_FUNC(simple_a_set20, _a_set),
123 EO_OP_FUNC(simple_a_set21, _a_set, "Littering the ids"), 123 EO_OP_FUNC(simple_a_set21, _a_set),
124 EO_OP_FUNC(simple_a_set22, _a_set, "Littering the ids"), 124 EO_OP_FUNC(simple_a_set22, _a_set),
125 EO_OP_FUNC(simple_a_set23, _a_set, "Littering the ids"), 125 EO_OP_FUNC(simple_a_set23, _a_set),
126 EO_OP_FUNC(simple_a_set24, _a_set, "Littering the ids"), 126 EO_OP_FUNC(simple_a_set24, _a_set),
127 EO_OP_FUNC(simple_a_set25, _a_set, "Littering the ids"), 127 EO_OP_FUNC(simple_a_set25, _a_set),
128 EO_OP_FUNC(simple_a_set26, _a_set, "Littering the ids"), 128 EO_OP_FUNC(simple_a_set26, _a_set),
129 EO_OP_FUNC(simple_a_set27, _a_set, "Littering the ids"), 129 EO_OP_FUNC(simple_a_set27, _a_set),
130 EO_OP_FUNC(simple_a_set28, _a_set, "Littering the ids"), 130 EO_OP_FUNC(simple_a_set28, _a_set),
131 EO_OP_FUNC(simple_a_set29, _a_set, "Littering the ids"), 131 EO_OP_FUNC(simple_a_set29, _a_set),
132 EO_OP_FUNC(simple_a_set30, _a_set, "Littering the ids"), 132 EO_OP_FUNC(simple_a_set30, _a_set),
133 EO_OP_FUNC(simple_a_set31, _a_set, "Littering the ids"), 133 EO_OP_FUNC(simple_a_set31, _a_set),
134 EO_OP_FUNC(simple_a_set32, _a_set, "Littering the ids"), 134 EO_OP_FUNC(simple_a_set32, _a_set),
135 EO_OP_FUNC(simple_a_get1, _a_get, "Littering the ids"), 135 EO_OP_FUNC(simple_a_get1, _a_get),
136 EO_OP_FUNC(simple_a_get2, _a_get, "Littering the ids"), 136 EO_OP_FUNC(simple_a_get2, _a_get),
137 EO_OP_FUNC(simple_a_get3, _a_get, "Littering the ids"), 137 EO_OP_FUNC(simple_a_get3, _a_get),
138 EO_OP_FUNC(simple_a_get4, _a_get, "Littering the ids"), 138 EO_OP_FUNC(simple_a_get4, _a_get),
139 EO_OP_FUNC(simple_a_get5, _a_get, "Littering the ids"), 139 EO_OP_FUNC(simple_a_get5, _a_get),
140 EO_OP_FUNC(simple_a_get6, _a_get, "Littering the ids"), 140 EO_OP_FUNC(simple_a_get6, _a_get),
141 EO_OP_FUNC(simple_a_get7, _a_get, "Littering the ids"), 141 EO_OP_FUNC(simple_a_get7, _a_get),
142 EO_OP_FUNC(simple_a_get8, _a_get, "Littering the ids"), 142 EO_OP_FUNC(simple_a_get8, _a_get),
143 EO_OP_FUNC(simple_a_get9, _a_get, "Littering the ids"), 143 EO_OP_FUNC(simple_a_get9, _a_get),
144 EO_OP_FUNC(simple_a_get10, _a_get, "Littering the ids"), 144 EO_OP_FUNC(simple_a_get10, _a_get),
145 EO_OP_FUNC(simple_a_get11, _a_get, "Littering the ids"), 145 EO_OP_FUNC(simple_a_get11, _a_get),
146 EO_OP_FUNC(simple_a_get12, _a_get, "Littering the ids"), 146 EO_OP_FUNC(simple_a_get12, _a_get),
147 EO_OP_FUNC(simple_a_get13, _a_get, "Littering the ids"), 147 EO_OP_FUNC(simple_a_get13, _a_get),
148 EO_OP_FUNC(simple_a_get14, _a_get, "Littering the ids"), 148 EO_OP_FUNC(simple_a_get14, _a_get),
149 EO_OP_FUNC(simple_a_get15, _a_get, "Littering the ids"), 149 EO_OP_FUNC(simple_a_get15, _a_get),
150 EO_OP_FUNC(simple_a_get16, _a_get, "Littering the ids"), 150 EO_OP_FUNC(simple_a_get16, _a_get),
151 EO_OP_FUNC(simple_a_get17, _a_get, "Littering the ids"), 151 EO_OP_FUNC(simple_a_get17, _a_get),
152 EO_OP_FUNC(simple_a_get18, _a_get, "Littering the ids"), 152 EO_OP_FUNC(simple_a_get18, _a_get),
153 EO_OP_FUNC(simple_a_get19, _a_get, "Littering the ids"), 153 EO_OP_FUNC(simple_a_get19, _a_get),
154 EO_OP_FUNC(simple_a_get20, _a_get, "Littering the ids"), 154 EO_OP_FUNC(simple_a_get20, _a_get),
155 EO_OP_FUNC(simple_a_get21, _a_get, "Littering the ids"), 155 EO_OP_FUNC(simple_a_get21, _a_get),
156 EO_OP_FUNC(simple_a_get22, _a_get, "Littering the ids"), 156 EO_OP_FUNC(simple_a_get22, _a_get),
157 EO_OP_FUNC(simple_a_get23, _a_get, "Littering the ids"), 157 EO_OP_FUNC(simple_a_get23, _a_get),
158 EO_OP_FUNC(simple_a_get24, _a_get, "Littering the ids"), 158 EO_OP_FUNC(simple_a_get24, _a_get),
159 EO_OP_FUNC(simple_a_get25, _a_get, "Littering the ids"), 159 EO_OP_FUNC(simple_a_get25, _a_get),
160 EO_OP_FUNC(simple_a_get26, _a_get, "Littering the ids"), 160 EO_OP_FUNC(simple_a_get26, _a_get),
161 EO_OP_FUNC(simple_a_get27, _a_get, "Littering the ids"), 161 EO_OP_FUNC(simple_a_get27, _a_get),
162 EO_OP_FUNC(simple_a_get28, _a_get, "Littering the ids"), 162 EO_OP_FUNC(simple_a_get28, _a_get),
163 EO_OP_FUNC(simple_a_get29, _a_get, "Littering the ids"), 163 EO_OP_FUNC(simple_a_get29, _a_get),
164 EO_OP_FUNC(simple_a_get30, _a_get, "Littering the ids"), 164 EO_OP_FUNC(simple_a_get30, _a_get),
165 EO_OP_FUNC(simple_a_get31, _a_get, "Littering the ids"), 165 EO_OP_FUNC(simple_a_get31, _a_get),
166 EO_OP_FUNC(simple_a_get32, _a_get, "Littering the ids"), 166 EO_OP_FUNC(simple_a_get32, _a_get),
167 EO_OP_FUNC(simple_a_set, _a_set, "Set property A"), 167 EO_OP_FUNC(simple_a_set, _a_set),
168 EO_OP_FUNC(simple_a_get, _a_get, "Get property A"), 168 EO_OP_FUNC(simple_a_get, _a_get),
169 EO_OP_SENTINEL 169 EO_OP_SENTINEL
170}; 170};
171 171
diff --git a/src/tests/eo/constructors/constructors_mixin.c b/src/tests/eo/constructors/constructors_mixin.c
index 3c21129487..3fb1c67673 100644
--- a/src/tests/eo/constructors/constructors_mixin.c
+++ b/src/tests/eo/constructors/constructors_mixin.c
@@ -37,7 +37,7 @@ _destructor(Eo *obj, void *class_data EINA_UNUSED)
37EAPI EO_VOID_FUNC_BODYV(mixin_add_and_print, EO_FUNC_CALL(x), int x); 37EAPI EO_VOID_FUNC_BODYV(mixin_add_and_print, EO_FUNC_CALL(x), int x);
38 38
39static Eo_Op_Description op_descs[] = { 39static Eo_Op_Description op_descs[] = {
40 EO_OP_FUNC(mixin_add_and_print, _add_and_print_set, "Add A + B + param and print it"), 40 EO_OP_FUNC(mixin_add_and_print, _add_and_print_set),
41 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor), 41 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor),
42 EO_OP_FUNC_OVERRIDE(eo_destructor, _destructor), 42 EO_OP_FUNC_OVERRIDE(eo_destructor, _destructor),
43 EO_OP_SENTINEL 43 EO_OP_SENTINEL
diff --git a/src/tests/eo/constructors/constructors_simple.c b/src/tests/eo/constructors/constructors_simple.c
index 6954bebe0c..2d1c4d78ec 100644
--- a/src/tests/eo/constructors/constructors_simple.c
+++ b/src/tests/eo/constructors/constructors_simple.c
@@ -89,10 +89,10 @@ static Eo_Op_Description op_descs[] = {
89 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor), 89 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor),
90 EO_OP_FUNC_OVERRIDE(eo_destructor, _destructor), 90 EO_OP_FUNC_OVERRIDE(eo_destructor, _destructor),
91 EO_OP_FUNC_OVERRIDE(eo_finalize, _finalize), 91 EO_OP_FUNC_OVERRIDE(eo_finalize, _finalize),
92 EO_OP_FUNC(simple_a_set, _a_set, "Set property a"), 92 EO_OP_FUNC(simple_a_set, _a_set),
93 EO_OP_FUNC(simple_a_get, _a_get, "Get property a"), 93 EO_OP_FUNC(simple_a_get, _a_get),
94 EO_OP_FUNC(simple_b_set, _b_set, "Set property b"), 94 EO_OP_FUNC(simple_b_set, _b_set),
95 EO_OP_FUNC(simple_b_get, _b_get, "Get property b"), 95 EO_OP_FUNC(simple_b_get, _b_get),
96 EO_OP_SENTINEL 96 EO_OP_SENTINEL
97}; 97};
98 98
diff --git a/src/tests/eo/function_overrides/function_overrides_inherit2.c b/src/tests/eo/function_overrides/function_overrides_inherit2.c
index a892aaf96e..27c3d206c6 100644
--- a/src/tests/eo/function_overrides/function_overrides_inherit2.c
+++ b/src/tests/eo/function_overrides/function_overrides_inherit2.c
@@ -60,8 +60,8 @@ EAPI EO_FUNC_BODY(inherit2_print, Eina_Bool, EINA_FALSE);
60EAPI EO_FUNC_BODY(inherit2_print2, Eina_Bool, EINA_FALSE); 60EAPI EO_FUNC_BODY(inherit2_print2, Eina_Bool, EINA_FALSE);
61 61
62static Eo_Op_Description op_descs[] = { 62static Eo_Op_Description op_descs[] = {
63 EO_OP_FUNC(inherit2_print, _print, "Print hey"), 63 EO_OP_FUNC(inherit2_print, _print),
64 EO_OP_FUNC(inherit2_print2, _print2, "Print hey2"), 64 EO_OP_FUNC(inherit2_print2, _print2),
65 EO_OP_CLASS_FUNC_OVERRIDE(simple_class_print, _class_print), 65 EO_OP_CLASS_FUNC_OVERRIDE(simple_class_print, _class_print),
66 EO_OP_FUNC_OVERRIDE(simple_a_set, _a_set), 66 EO_OP_FUNC_OVERRIDE(simple_a_set, _a_set),
67 EO_OP_SENTINEL 67 EO_OP_SENTINEL
diff --git a/src/tests/eo/function_overrides/function_overrides_simple.c b/src/tests/eo/function_overrides/function_overrides_simple.c
index 1ba2382948..be73ec437c 100644
--- a/src/tests/eo/function_overrides/function_overrides_simple.c
+++ b/src/tests/eo/function_overrides/function_overrides_simple.c
@@ -57,10 +57,10 @@ EAPI EO_FUNC_BODY(simple_class_print, Eina_Bool, EINA_FALSE);
57EAPI EO_FUNC_BODY(simple_class_print2, Eina_Bool, EINA_FALSE); 57EAPI EO_FUNC_BODY(simple_class_print2, Eina_Bool, EINA_FALSE);
58 58
59static Eo_Op_Description op_descs[] = { 59static Eo_Op_Description op_descs[] = {
60 EO_OP_FUNC(simple_a_set, _a_set, "Set property A"), 60 EO_OP_FUNC(simple_a_set, _a_set),
61 EO_OP_FUNC(simple_a_print, _a_print, "Print property A"), 61 EO_OP_FUNC(simple_a_print, _a_print),
62 EO_OP_FUNC(simple_class_print, _class_print, "Print class name."), 62 EO_OP_FUNC(simple_class_print, _class_print),
63 EO_OP_FUNC(simple_class_print2, _class_print2, "Print2 class name."), 63 EO_OP_FUNC(simple_class_print2, _class_print2),
64 EO_OP_SENTINEL 64 EO_OP_SENTINEL
65}; 65};
66 66
diff --git a/src/tests/eo/interface/interface_interface.c b/src/tests/eo/interface/interface_interface.c
index 7a58a3b8fa..479d64afc0 100644
--- a/src/tests/eo/interface/interface_interface.c
+++ b/src/tests/eo/interface/interface_interface.c
@@ -11,7 +11,7 @@
11EO_FUNC_BODY(interface_ab_sum_get, int, 0); 11EO_FUNC_BODY(interface_ab_sum_get, int, 0);
12 12
13static Eo_Op_Description op_descs[] = { 13static Eo_Op_Description op_descs[] = {
14 EO_OP_FUNC(interface_ab_sum_get, NULL, "Get the sum of a and b."), 14 EO_OP_FUNC(interface_ab_sum_get, NULL),
15 EO_OP_SENTINEL 15 EO_OP_SENTINEL
16}; 16};
17 17
diff --git a/src/tests/eo/interface/interface_interface2.c b/src/tests/eo/interface/interface_interface2.c
index 5e29c1712b..b8d28f941a 100644
--- a/src/tests/eo/interface/interface_interface2.c
+++ b/src/tests/eo/interface/interface_interface2.c
@@ -12,7 +12,7 @@
12EO_FUNC_BODY(interface2_ab_sum_get2, int, 0); 12EO_FUNC_BODY(interface2_ab_sum_get2, int, 0);
13 13
14static Eo_Op_Description op_descs[] = { 14static Eo_Op_Description op_descs[] = {
15 EO_OP_FUNC(interface2_ab_sum_get2, NULL, "Print the sum of a and b."), 15 EO_OP_FUNC(interface2_ab_sum_get2, NULL),
16 EO_OP_SENTINEL 16 EO_OP_SENTINEL
17}; 17};
18 18
diff --git a/src/tests/eo/interface/interface_simple.c b/src/tests/eo/interface/interface_simple.c
index d35e142d3a..19b0544e9f 100644
--- a/src/tests/eo/interface/interface_simple.c
+++ b/src/tests/eo/interface/interface_simple.c
@@ -55,10 +55,10 @@ _ab_sum_get2(Eo *obj, void *class_data EINA_UNUSED)
55} 55}
56 56
57static Eo_Op_Description op_descs[] = { 57static Eo_Op_Description op_descs[] = {
58 EO_OP_FUNC(simple_a_set, _a_set, "Set property a"), 58 EO_OP_FUNC(simple_a_set, _a_set),
59 EO_OP_FUNC(simple_a_get, _a_get, "Get property a"), 59 EO_OP_FUNC(simple_a_get, _a_get),
60 EO_OP_FUNC(simple_b_set, _b_set, "Set property b"), 60 EO_OP_FUNC(simple_b_set, _b_set),
61 EO_OP_FUNC(simple_b_get, _b_get, "Get property b"), 61 EO_OP_FUNC(simple_b_get, _b_get),
62 EO_OP_FUNC_OVERRIDE(interface_ab_sum_get, _ab_sum_get), 62 EO_OP_FUNC_OVERRIDE(interface_ab_sum_get, _ab_sum_get),
63 EO_OP_FUNC_OVERRIDE(interface2_ab_sum_get2, _ab_sum_get2), 63 EO_OP_FUNC_OVERRIDE(interface2_ab_sum_get2, _ab_sum_get2),
64 EO_OP_SENTINEL 64 EO_OP_SENTINEL
diff --git a/src/tests/eo/mixin/mixin_mixin.c b/src/tests/eo/mixin/mixin_mixin.c
index f5c23348d6..dc6f91cef3 100644
--- a/src/tests/eo/mixin/mixin_mixin.c
+++ b/src/tests/eo/mixin/mixin_mixin.c
@@ -34,7 +34,7 @@ EAPI EO_FUNC_BODY(mixin_ab_sum_get, int, 0);
34static Eo_Op_Description op_descs[] = { 34static Eo_Op_Description op_descs[] = {
35 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor), 35 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor),
36 EO_OP_FUNC_OVERRIDE(eo_destructor, _destructor), 36 EO_OP_FUNC_OVERRIDE(eo_destructor, _destructor),
37 EO_OP_FUNC(mixin_ab_sum_get, _ab_sum_get, "Get the sum of a and b."), 37 EO_OP_FUNC(mixin_ab_sum_get, _ab_sum_get),
38 EO_OP_SENTINEL 38 EO_OP_SENTINEL
39}; 39};
40 40
diff --git a/src/tests/eo/mixin/mixin_simple.c b/src/tests/eo/mixin/mixin_simple.c
index 0212939580..bc0a9f73a6 100644
--- a/src/tests/eo/mixin/mixin_simple.c
+++ b/src/tests/eo/mixin/mixin_simple.c
@@ -38,10 +38,10 @@ _GET_SET_FUNC(a)
38_GET_SET_FUNC(b) 38_GET_SET_FUNC(b)
39 39
40static Eo_Op_Description op_descs[] = { 40static Eo_Op_Description op_descs[] = {
41 EO_OP_FUNC(simple_a_set, _a_set, "Set property a"), 41 EO_OP_FUNC(simple_a_set, _a_set),
42 EO_OP_FUNC(simple_a_get, _a_get, "Get property a"), 42 EO_OP_FUNC(simple_a_get, _a_get),
43 EO_OP_FUNC(simple_b_set, _b_set, "Set property b"), 43 EO_OP_FUNC(simple_b_set, _b_set),
44 EO_OP_FUNC(simple_b_get, _b_get, "Get property b"), 44 EO_OP_FUNC(simple_b_get, _b_get),
45 EO_OP_SENTINEL 45 EO_OP_SENTINEL
46}; 46};
47 47
diff --git a/src/tests/eo/signals/signals_simple.c b/src/tests/eo/signals/signals_simple.c
index 08714fa836..437c78c319 100644
--- a/src/tests/eo/signals/signals_simple.c
+++ b/src/tests/eo/signals/signals_simple.c
@@ -12,7 +12,7 @@ typedef struct
12} Private_Data; 12} Private_Data;
13 13
14EAPI const Eo_Event_Description _EV_A_CHANGED = 14EAPI const Eo_Event_Description _EV_A_CHANGED =
15 EO_EVENT_DESCRIPTION("a,changed", "Called when a has changed."); 15 EO_EVENT_DESCRIPTION("a,changed");
16 16
17#define MY_CLASS SIMPLE_CLASS 17#define MY_CLASS SIMPLE_CLASS
18 18
@@ -77,7 +77,7 @@ EAPI EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a);
77 77
78static Eo_Op_Description op_descs[] = { 78static Eo_Op_Description op_descs[] = {
79 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor), 79 EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor),
80 EO_OP_FUNC(simple_a_set, _a_set, "Set property a"), 80 EO_OP_FUNC(simple_a_set, _a_set),
81 EO_OP_SENTINEL 81 EO_OP_SENTINEL
82}; 82};
83 83
diff --git a/src/tests/eo/suite/eo_test_class_errors.c b/src/tests/eo/suite/eo_test_class_errors.c
index cd9ddf5b55..c2501186e1 100644
--- a/src/tests/eo/suite/eo_test_class_errors.c
+++ b/src/tests/eo/suite/eo_test_class_errors.c
@@ -217,7 +217,7 @@ START_TEST(eo_null_api)
217 const Eo_Class *klass; 217 const Eo_Class *klass;
218 218
219 static Eo_Op_Description op_descs[] = { 219 static Eo_Op_Description op_descs[] = {
220 EO_OP_FUNC(NULL, _null_fct, "NULL API function"), 220 EO_OP_FUNC(NULL, _null_fct),
221 EO_OP_SENTINEL 221 EO_OP_SENTINEL
222 }; 222 };
223 static Eo_Class_Description class_desc = { 223 static Eo_Class_Description class_desc = {
@@ -283,8 +283,8 @@ START_TEST(eo_api_redefined)
283 const Eo_Class *klass; 283 const Eo_Class *klass;
284 284
285 static Eo_Op_Description op_descs[] = { 285 static Eo_Op_Description op_descs[] = {
286 EO_OP_FUNC(null_fct, _null_fct, "API function"), 286 EO_OP_FUNC(null_fct, _null_fct),
287 EO_OP_FUNC(null_fct, NULL, "Redefining API function"), 287 EO_OP_FUNC(null_fct, NULL),
288 EO_OP_SENTINEL 288 EO_OP_SENTINEL
289 }; 289 };
290 static Eo_Class_Description class_desc = { 290 static Eo_Class_Description class_desc = {
diff --git a/src/tests/eo/suite/eo_test_class_simple.c b/src/tests/eo/suite/eo_test_class_simple.c
index 4bc3904acb..64fe1fbb5f 100644
--- a/src/tests/eo/suite/eo_test_class_simple.c
+++ b/src/tests/eo/suite/eo_test_class_simple.c
@@ -8,7 +8,7 @@
8#define MY_CLASS SIMPLE_CLASS 8#define MY_CLASS SIMPLE_CLASS
9 9
10EAPI const Eo_Event_Description _EV_A_CHANGED = 10EAPI const Eo_Event_Description _EV_A_CHANGED =
11 EO_EVENT_DESCRIPTION("a,changed", "Called when a has changed."); 11 EO_EVENT_DESCRIPTION("a,changed");
12 12
13static void 13static void
14_a_set(Eo *obj EINA_UNUSED, void *class_data, int a) 14_a_set(Eo *obj EINA_UNUSED, void *class_data, int a)
@@ -87,13 +87,13 @@ EO_VOID_FUNC_BODY(simple_no_implementation);
87 87
88static Eo_Op_Description op_descs[] = { 88static Eo_Op_Description op_descs[] = {
89 EO_OP_FUNC_OVERRIDE(eo_dbg_info_get, _dbg_info_get), 89 EO_OP_FUNC_OVERRIDE(eo_dbg_info_get, _dbg_info_get),
90 EO_OP_FUNC(simple_a_set, _a_set, "Set property a"), 90 EO_OP_FUNC(simple_a_set, _a_set),
91 EO_OP_FUNC(simple_a_get, _a_get, "Get property a"), 91 EO_OP_FUNC(simple_a_get, _a_get),
92 EO_OP_FUNC(simple_a_print, _a_print, "Print property a"), 92 EO_OP_FUNC(simple_a_print, _a_print),
93 EO_OP_CLASS_FUNC(simple_class_hi_print, _class_hi_print, "Print property a"), 93 EO_OP_CLASS_FUNC(simple_class_hi_print, _class_hi_print),
94 EO_OP_FUNC(simple_recursive, _recursive, "Recursive function"), 94 EO_OP_FUNC(simple_recursive, _recursive),
95 EO_OP_FUNC(simple_part_get, _part_get, "Part getter"), 95 EO_OP_FUNC(simple_part_get, _part_get),
96 EO_OP_FUNC(simple_pure_virtual, NULL, "Pure Virtual function"), 96 EO_OP_FUNC(simple_pure_virtual, NULL),
97 EO_OP_SENTINEL 97 EO_OP_SENTINEL
98}; 98};
99 99
diff --git a/src/tests/eo/suite/eo_test_general.c b/src/tests/eo/suite/eo_test_general.c
index 9121f8fac0..9428fb8ba1 100644
--- a/src/tests/eo/suite/eo_test_general.c
+++ b/src/tests/eo/suite/eo_test_general.c
@@ -722,8 +722,8 @@ EO_FUNC_BODY(multi_a_print, Eina_Bool, EINA_FALSE);
722EO_FUNC_BODY(multi_class_hi_print, Eina_Bool, EINA_FALSE); 722EO_FUNC_BODY(multi_class_hi_print, Eina_Bool, EINA_FALSE);
723 723
724static Eo_Op_Description _multi_do_op_descs[] = { 724static Eo_Op_Description _multi_do_op_descs[] = {
725 EO_OP_FUNC(multi_a_print, _a_print, "Print property a"), 725 EO_OP_FUNC(multi_a_print, _a_print),
726 EO_OP_FUNC(multi_class_hi_print, _class_hi_print, "Print Hi"), 726 EO_OP_FUNC(multi_class_hi_print, _class_hi_print),
727 EO_OP_SENTINEL 727 EO_OP_SENTINEL
728}; 728};
729 729
diff --git a/src/tests/eo/suite/eo_test_threaded_calls.c b/src/tests/eo/suite/eo_test_threaded_calls.c
index 21b6015cd3..25cdbc63d9 100644
--- a/src/tests/eo/suite/eo_test_threaded_calls.c
+++ b/src/tests/eo/suite/eo_test_threaded_calls.c
@@ -60,9 +60,9 @@ _constructor(Eo *obj, void *class_data EINA_UNUSED, int v)
60} 60}
61 61
62static Eo_Op_Description op_descs[] = { 62static Eo_Op_Description op_descs[] = {
63 EO_OP_FUNC(thread_test_constructor, _constructor, "Constructor."), 63 EO_OP_FUNC(thread_test_constructor, _constructor),
64 EO_OP_FUNC(thread_test_v_get, _v_get, "Get property v."), 64 EO_OP_FUNC(thread_test_v_get, _v_get),
65 EO_OP_FUNC(thread_test_try_swap_stack, _try_swap_stack, "Swap call stack frames if it is not thread safe."), 65 EO_OP_FUNC(thread_test_try_swap_stack, _try_swap_stack),
66 EO_OP_SENTINEL 66 EO_OP_SENTINEL
67}; 67};
68 68
diff --git a/src/tests/eolian/data/class_simple_ref.c b/src/tests/eolian/data/class_simple_ref.c
index a7b868d31b..12eda029d6 100644
--- a/src/tests/eolian/data/class_simple_ref.c
+++ b/src/tests/eolian/data/class_simple_ref.c
@@ -26,9 +26,9 @@ int _class_simple_bar(Eo *obj, Evas_Simple_Data *pd, int x);
26EOAPI EO_FUNC_BODYV(evas_obj_simple_bar, int, 0, EO_FUNC_CALL(x), int x); 26EOAPI EO_FUNC_BODYV(evas_obj_simple_bar, int, 0, EO_FUNC_CALL(x), int x);
27 27
28static Eo_Op_Description _class_simple_op_desc[] = { 28static Eo_Op_Description _class_simple_op_desc[] = {
29 EO_OP_FUNC(evas_obj_simple_a_set, _class_simple_a_set, "comment a.set"), 29 EO_OP_FUNC(evas_obj_simple_a_set, _class_simple_a_set),
30 EO_OP_FUNC(evas_obj_simple_a_get, _class_simple_a_get, ""), 30 EO_OP_FUNC(evas_obj_simple_a_get, _class_simple_a_get),
31 EO_OP_FUNC(evas_obj_simple_foo, __eolian_class_simple_foo, "comment foo"), 31 EO_OP_FUNC(evas_obj_simple_foo, __eolian_class_simple_foo),
32 EO_OP_SENTINEL 32 EO_OP_SENTINEL
33}; 33};
34 34
diff --git a/src/tests/eolian/data/override_ref.c b/src/tests/eolian/data/override_ref.c
index 103536af80..5e68f31b55 100644
--- a/src/tests/eolian/data/override_ref.c
+++ b/src/tests/eolian/data/override_ref.c
@@ -57,14 +57,14 @@ static Eo_Op_Description _override_op_desc[] = {
57 EO_OP_FUNC_OVERRIDE(base_constructor, _override_base_constructor), 57 EO_OP_FUNC_OVERRIDE(base_constructor, _override_base_constructor),
58 EO_OP_FUNC_OVERRIDE(base_z_get, __eolian_override_base_z_get), 58 EO_OP_FUNC_OVERRIDE(base_z_get, __eolian_override_base_z_get),
59 EO_OP_FUNC_OVERRIDE(base_z_set, __eolian_override_base_z_set), 59 EO_OP_FUNC_OVERRIDE(base_z_set, __eolian_override_base_z_set),
60 EO_OP_FUNC(override_a_set, NULL, ""), 60 EO_OP_FUNC(override_a_set, NULL),
61 EO_OP_FUNC(override_foo, NULL, ""), 61 EO_OP_FUNC(override_foo, NULL),
62 EO_OP_FUNC(override_b_set, __eolian_override_b_set, ""), 62 EO_OP_FUNC(override_b_set, __eolian_override_b_set),
63 EO_OP_FUNC(override_bar, __eolian_override_bar, ""), 63 EO_OP_FUNC(override_bar, __eolian_override_bar),
64 EO_OP_FUNC(override_c_get, __eolian_override_c_get, ""), 64 EO_OP_FUNC(override_c_get, __eolian_override_c_get),
65 EO_OP_FUNC(override_a_get, _override_a_get, ""), 65 EO_OP_FUNC(override_a_get, _override_a_get),
66 EO_OP_FUNC(override_b_get, _override_b_get, ""), 66 EO_OP_FUNC(override_b_get, _override_b_get),
67 EO_OP_FUNC(override_c_set, _override_c_set, ""), 67 EO_OP_FUNC(override_c_set, _override_c_set),
68 EO_OP_SENTINEL 68 EO_OP_SENTINEL
69}; 69};
70 70