From 4c1cf8741939e345961b14df9ced5d5e80b61538 Mon Sep 17 00:00:00 2001 From: Daniel Zaoui Date: Mon, 9 Jun 2014 10:05:17 +0300 Subject: [PATCH] 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. --- src/bin/eolian/eo_generator.c | 16 +++++++--------- src/bin/eolian/legacy_generator.c | 16 +++++++--------- 2 files changed, 14 insertions(+), 18 deletions(-) diff --git a/src/bin/eolian/eo_generator.c b/src/bin/eolian/eo_generator.c index 1eab486..9151db6 100644 --- a/src/bin/eolian/eo_generator.c +++ b/src/bin/eolian/eo_generator.c @@ -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); diff --git a/src/bin/eolian/legacy_generator.c b/src/bin/eolian/legacy_generator.c index a8f8d20..6d6c3bd 100644 --- a/src/bin/eolian/legacy_generator.c +++ b/src/bin/eolian/legacy_generator.c @@ -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) -- 2.7.4