eolian: use c_name when building complex C symbol names
authorDaniel Kolesa <d.kolesa@samsung.com>
Thu, 30 May 2019 15:00:52 +0000 (17:00 +0200)
committerWonki Kim <wonki_.kim@samsung.com>
Mon, 3 Jun 2019 08:09:36 +0000 (17:09 +0900)
src/lib/eolian/database_class_api.c
src/lib/eolian/database_function_api.c

index 5733d6c..07e781d 100644 (file)
@@ -155,7 +155,7 @@ eolian_class_c_get_function_name_get(const Eolian_Class *cl)
    Eina_Stringshare *ret;
    Eina_Strbuf *buf = eina_strbuf_new();
    char *bufp;
-   eina_strbuf_append(buf, cl->base.name);
+   eina_strbuf_append(buf, cl->base.c_name);
    switch (cl->type)
      {
       case EOLIAN_CLASS_INTERFACE:
@@ -168,7 +168,6 @@ eolian_class_c_get_function_name_get(const Eolian_Class *cl)
         eina_strbuf_append(buf, "_class_get");
         break;
      }
-   eina_strbuf_replace_all(buf, ".", "_");
    bufp = eina_strbuf_string_steal(buf);
    eina_str_tolower(&bufp);
    ret = eina_stringshare_add(bufp);
@@ -184,7 +183,7 @@ eolian_class_c_macro_get(const Eolian_Class *cl)
    Eina_Stringshare *ret;
    Eina_Strbuf *buf = eina_strbuf_new();
    char *bufp;
-   eina_strbuf_append(buf, cl->base.name);
+   eina_strbuf_append(buf, cl->base.c_name);
    switch (cl->type)
      {
       case EOLIAN_CLASS_INTERFACE:
@@ -197,7 +196,6 @@ eolian_class_c_macro_get(const Eolian_Class *cl)
         eina_strbuf_append(buf, "_CLASS");
         break;
      }
-   eina_strbuf_replace_all(buf, ".", "_");
    bufp = eina_strbuf_string_steal(buf);
    eina_str_toupper(&bufp);
    ret = eina_stringshare_add(bufp);
@@ -212,7 +210,7 @@ eolian_class_c_data_type_get(const Eolian_Class *cl)
    char buf[512];
    EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
    if (!cl->data_type)
-     snprintf(buf, sizeof(buf), "%s_Data", cl->base.name);
+     snprintf(buf, sizeof(buf), "%s_Data", cl->base.c_name);
    else if (!strcmp(cl->data_type, "null"))
      return eina_stringshare_add("void");
    else
index 9b67624..123b99b 100644 (file)
@@ -40,12 +40,10 @@ eolian_function_type_get(const Eolian_Function *fid)
 static const char *
 _get_c_prefix(const Eolian_Function *foo_id, char *buf)
 {
-    char *tmp = buf;
     if (foo_id->klass->c_prefix)
       return foo_id->klass->c_prefix;
-    strcpy(buf, foo_id->klass->base.name);
+    strcpy(buf, foo_id->klass->base.c_name);
     eina_str_tolower(&buf);
-    while ((tmp = strchr(tmp, '.'))) *tmp = '_';
     return buf;
 }