forked from enlightenment/efl
eolian generator: add obj as first param to header method prototypes
This commit is contained in:
parent
0ceca701bf
commit
eb5aa57159
|
@ -97,7 +97,7 @@ eo_fundef_generate(const Eolian_Class *class, const Eolian_Function *func, Eolia
|
||||||
eina_strbuf_append_char(str_func, '\n');
|
eina_strbuf_append_char(str_func, '\n');
|
||||||
eina_strbuf_free(dbuf);
|
eina_strbuf_free(dbuf);
|
||||||
}
|
}
|
||||||
eina_strbuf_append_printf(str_func, "EOAPI @#rettype@#retspace%s(@#full_params);\n", func_env.lower_eo_func);
|
eina_strbuf_append_printf(str_func, "EOAPI @#rettype@#retspace%s(Eo *obj@#full_params);\n", func_env.lower_eo_func);
|
||||||
|
|
||||||
if (scope == EOLIAN_SCOPE_PROTECTED)
|
if (scope == EOLIAN_SCOPE_PROTECTED)
|
||||||
eina_strbuf_append_printf(str_func, "#endif\n");
|
eina_strbuf_append_printf(str_func, "#endif\n");
|
||||||
|
@ -106,7 +106,6 @@ eo_fundef_generate(const Eolian_Class *class, const Eolian_Function *func, Eolia
|
||||||
eina_strbuf_append_printf(str_func, "\n");
|
eina_strbuf_append_printf(str_func, "\n");
|
||||||
|
|
||||||
Eina_Strbuf *str_par = eina_strbuf_new();
|
Eina_Strbuf *str_par = eina_strbuf_new();
|
||||||
Eina_Strbuf *str_pardesc = eina_strbuf_new();
|
|
||||||
|
|
||||||
itr = eolian_property_keys_get(func, ftype);
|
itr = eolian_property_keys_get(func, ftype);
|
||||||
EINA_ITERATOR_FOREACH(itr, data)
|
EINA_ITERATOR_FOREACH(itr, data)
|
||||||
|
@ -115,9 +114,7 @@ eo_fundef_generate(const Eolian_Class *class, const Eolian_Function *func, Eolia
|
||||||
const Eolian_Type *ptypet = eolian_parameter_type_get(param);
|
const Eolian_Type *ptypet = eolian_parameter_type_get(param);
|
||||||
const char *pname = eolian_parameter_name_get(param);
|
const char *pname = eolian_parameter_name_get(param);
|
||||||
const char *ptype = eolian_type_c_type_get(ptypet);
|
const char *ptype = eolian_type_c_type_get(ptypet);
|
||||||
|
eina_strbuf_append_printf(str_par, ", %s %s", ptype, pname);
|
||||||
if (eina_strbuf_length_get(str_par)) eina_strbuf_append(str_par, ", ");
|
|
||||||
eina_strbuf_append_printf(str_par, "%s %s", ptype, pname);
|
|
||||||
eina_stringshare_del(ptype);
|
eina_stringshare_del(ptype);
|
||||||
}
|
}
|
||||||
eina_iterator_free(itr);
|
eina_iterator_free(itr);
|
||||||
|
@ -142,8 +139,7 @@ eo_fundef_generate(const Eolian_Class *class, const Eolian_Function *func, Eolia
|
||||||
if (ftype == EOLIAN_UNRESOLVED || ftype == EOLIAN_METHOD) add_star = (pdir == EOLIAN_OUT_PARAM || pdir == EOLIAN_INOUT_PARAM);
|
if (ftype == EOLIAN_UNRESOLVED || ftype == EOLIAN_METHOD) add_star = (pdir == EOLIAN_OUT_PARAM || pdir == EOLIAN_INOUT_PARAM);
|
||||||
Eina_Bool had_star = !!strchr(ptype, '*');
|
Eina_Bool had_star = !!strchr(ptype, '*');
|
||||||
|
|
||||||
if (eina_strbuf_length_get(str_par)) eina_strbuf_append(str_par, ", ");
|
eina_strbuf_append_printf(str_par, ", %s%s%s%s",
|
||||||
eina_strbuf_append_printf(str_par, "%s%s%s%s",
|
|
||||||
ptype, had_star?"":" ", add_star?"*":"", pname);
|
ptype, had_star?"":" ", add_star?"*":"", pname);
|
||||||
|
|
||||||
eina_stringshare_del(ptype);
|
eina_stringshare_del(ptype);
|
||||||
|
@ -159,15 +155,11 @@ eo_fundef_generate(const Eolian_Class *class, const Eolian_Function *func, Eolia
|
||||||
else
|
else
|
||||||
eina_strbuf_replace_all(str_func, "@#retspace", "");
|
eina_strbuf_replace_all(str_func, "@#retspace", "");
|
||||||
|
|
||||||
eina_strbuf_replace_all(str_func, "@#list_param", eina_strbuf_string_get(str_par));
|
|
||||||
if (!eina_strbuf_length_get(str_par)) eina_strbuf_append(str_par, "void");
|
|
||||||
eina_strbuf_replace_all(str_func, "@#full_params", eina_strbuf_string_get(str_par));
|
eina_strbuf_replace_all(str_func, "@#full_params", eina_strbuf_string_get(str_par));
|
||||||
eina_strbuf_replace_all(str_func, "@#list_desc_param", eina_strbuf_string_get(str_pardesc));
|
|
||||||
|
|
||||||
if (rettype) eina_stringshare_del(rettype);
|
if (rettype) eina_stringshare_del(rettype);
|
||||||
|
|
||||||
eina_strbuf_free(str_par);
|
eina_strbuf_free(str_par);
|
||||||
eina_strbuf_free(str_pardesc);
|
|
||||||
|
|
||||||
eina_strbuf_append(functext, eina_strbuf_string_get(str_func));
|
eina_strbuf_append(functext, eina_strbuf_string_get(str_func));
|
||||||
eina_strbuf_free(str_func);
|
eina_strbuf_free(str_func);
|
||||||
|
|
Loading…
Reference in New Issue