Eolian/Generator: Fix comments generation.

This patch:
- removes the @def from Doxygen, as it is not correct for API
functions.
- fixes the generation of class comments. When no class description is
supplied, no comment should be added.
This commit is contained in:
Daniel Zaoui 2014-06-09 10:05:17 +03:00
parent cbee652621
commit 4c1cf87419
2 changed files with 14 additions and 18 deletions

View File

@ -62,7 +62,6 @@ const Eo_Class *@#class_class_get(void) EINA_CONST;\n\
static const char
tmpl_eo_funcdef_doxygen[] = "\
/**\n\
* @def %s\n\
*\n\
@#desc\n\
*\n\
@ -122,7 +121,7 @@ eo_fundef_generate(const Eolian_Class class, Eolian_Function func, Eolian_Functi
if (scope == EOLIAN_SCOPE_PROTECTED)
eina_strbuf_append_printf(str_func, "#ifdef %s_PROTECTED\n", class_env.upper_classname);
eina_strbuf_append_printf(str_func, tmpl_eo_funcdef_doxygen, func_env.lower_eo_func);
eina_strbuf_append(str_func, tmpl_eo_funcdef_doxygen);
eina_strbuf_append_printf(str_func, "EAPI @#rettype %s(@#full_params);\n", func_env.lower_eo_func);
if (scope == EOLIAN_SCOPE_PROTECTED)
@ -230,21 +229,20 @@ eo_header_generate(const Eolian_Class class, Eina_Strbuf *buf)
Eina_Strbuf * str_hdr = eina_strbuf_new();
const char *desc = eolian_class_description_get(class);
Eina_Strbuf *linedesc = eina_strbuf_new();
eina_strbuf_append(linedesc, "/**\n");
_class_env_create(class, NULL, &class_env);
if (desc)
{
Eina_Strbuf *linedesc = eina_strbuf_new();
eina_strbuf_append(linedesc, "/**\n");
eina_strbuf_append(linedesc, desc);
eina_strbuf_replace_all(linedesc, "\n", "\n * ");
eina_strbuf_append(linedesc, "\n */\n");
eina_strbuf_replace_all(linedesc, " * \n", " *\n"); /* Remove trailing whitespaces */
eina_strbuf_append(buf, eina_strbuf_string_get(linedesc));
eina_strbuf_free(linedesc);
}
eina_strbuf_append(linedesc, "\n */\n");
eina_strbuf_replace_all(linedesc, " * \n", " *\n"); /* Remove trailing whitespaces */
eina_strbuf_append(buf, eina_strbuf_string_get(linedesc));
eina_strbuf_free(linedesc);
_template_fill(str_hdr, tmpl_eo_obj_header, class, NULL, NULL, EINA_TRUE);
eina_strbuf_replace_all(str_hdr, "@#EOPREFIX", class_env.upper_eo_prefix);

View File

@ -11,7 +11,6 @@ static _eolian_class_vars class_env;
static const char
tmpl_eapi_funcdef[] = "\n\
/**\n\
* @def %s\n\
*\n\
@#desc\n\
*\n\
@ -84,7 +83,7 @@ _eapi_decl_func_generate(Eolian_Class class, Eolian_Function funcid, Eolian_Func
if (ftype == EOLIAN_PROP_SET) suffix = "_set";
if (func_env.legacy_func[0] == '\0') goto end;
eina_strbuf_append_printf(fbody, tmpl_eapi_funcdef, func_env.legacy_func, func_env.legacy_func);
eina_strbuf_append_printf(fbody, tmpl_eapi_funcdef, func_env.legacy_func);
sprintf (tmpstr, "comment%s", suffix);
const char *desc = eolian_function_description_get(funcid, tmpstr);
@ -309,19 +308,18 @@ legacy_header_generate(const Eolian_Class class, Eina_Strbuf *buf)
_class_env_create(class, NULL, &class_env);
const char *desc = eolian_class_description_get(class);
Eina_Strbuf *linedesc = eina_strbuf_new();
eina_strbuf_append(linedesc, "/**\n");
if (desc)
{
Eina_Strbuf *linedesc = eina_strbuf_new();
eina_strbuf_append(linedesc, "/**\n");
eina_strbuf_append(linedesc, desc);
eina_strbuf_replace_all(linedesc, "\n", "\n * ");
eina_strbuf_append(linedesc, "\n */\n");
eina_strbuf_replace_all(linedesc, " * \n", " *\n"); /* Remove trailing whitespaces */
eina_strbuf_append(buf, eina_strbuf_string_get(linedesc));
eina_strbuf_free(linedesc);
}
eina_strbuf_append(linedesc, "\n */\n");
eina_strbuf_replace_all(linedesc, " * \n", " *\n"); /* Remove trailing whitespaces */
eina_strbuf_append(buf, eina_strbuf_string_get(linedesc));
eina_strbuf_free(linedesc);
int i;
for (i = 0; i < 2; i++)
EINA_LIST_FOREACH(eolian_class_functions_list_get(class, ftype_order[i]), l, data)