cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=0e2a2cbacf270766d5c0e2b5c8a09575a7660979

commit 0e2a2cbacf270766d5c0e2b5c8a09575a7660979
Author: Jee-Yong Um <jc9...@samsung.com>
Date:   Mon Nov 28 10:55:27 2016 -0800

    eolian: remove all duplicated affix
    
    Summary:
    Currently eolian abbreviates when only the last word of class name and
    the first word of method name are same, but this patch abbreviates
    generated c name of function to remove all duplicated affix.
    For example, "efl_io_closer_fd_closer_fd_set" will be 
"efl_io_closer_fd_set".
    
    Reviewers: jpeg
    
    Subscribers: cedric
    
    Differential Revision: https://phab.enlightenment.org/D4430
    
    Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/ecore/efl_io_closer_fd.c       | 10 +++----
 src/lib/ecore/efl_io_file.c            | 10 +++----
 src/lib/ecore/efl_io_positioner_fd.c   |  4 +--
 src/lib/ecore/efl_io_reader_fd.c       |  6 ++--
 src/lib/ecore/efl_io_sizer_fd.c        |  4 +--
 src/lib/ecore/efl_io_stderr.c          |  2 +-
 src/lib/ecore/efl_io_stdin.c           |  2 +-
 src/lib/ecore/efl_io_stdout.c          |  2 +-
 src/lib/ecore/efl_io_writer_fd.c       |  4 +--
 src/lib/ecore_con/efl_net_socket_fd.c  | 24 ++++++++--------
 src/lib/ecore_con/efl_net_socket_udp.c |  4 +--
 src/lib/eolian/database_function_api.c | 50 +++++++++++++++++++++++++---------
 12 files changed, 73 insertions(+), 49 deletions(-)

diff --git a/src/lib/ecore/efl_io_closer_fd.c b/src/lib/ecore/efl_io_closer_fd.c
index db2bcaa..3cb77e7 100644
--- a/src/lib/ecore/efl_io_closer_fd.c
+++ b/src/lib/ecore/efl_io_closer_fd.c
@@ -32,12 +32,12 @@ _efl_io_closer_fd_closer_fd_get(Eo *o EINA_UNUSED, 
Efl_Io_Closer_Fd_Data *pd)
 EOLIAN static Eina_Error
 _efl_io_closer_fd_efl_io_closer_close(Eo *o, Efl_Io_Closer_Fd_Data *pd 
EINA_UNUSED)
 {
-   int fd = efl_io_closer_fd_closer_fd_get(o);
+   int fd = efl_io_closer_fd_get(o);
    Eina_Error err = 0;
 
    EINA_SAFETY_ON_TRUE_RETURN_VAL(fd < 0, EBADF);
 
-   efl_io_closer_fd_closer_fd_set(o, -1);
+   efl_io_closer_fd_set(o, -1);
    if (close(fd) < 0) err = errno;
    efl_event_callback_call(o, EFL_IO_CLOSER_EVENT_CLOSED, NULL);
    return err;
@@ -46,7 +46,7 @@ _efl_io_closer_fd_efl_io_closer_close(Eo *o, 
Efl_Io_Closer_Fd_Data *pd EINA_UNUS
 EOLIAN static Eina_Bool
 _efl_io_closer_fd_efl_io_closer_closed_get(Eo *o, Efl_Io_Closer_Fd_Data *pd 
EINA_UNUSED)
 {
-   return efl_io_closer_fd_closer_fd_get(o) < 0;
+   return efl_io_closer_fd_get(o) < 0;
 }
 
 EOLIAN static Eina_Bool
@@ -62,7 +62,7 @@ _efl_io_closer_fd_efl_io_closer_close_on_exec_set(Eo *o, 
Efl_Io_Closer_Fd_Data *
 
    pd->close_on_exec = close_on_exec;
 
-   fd = efl_io_closer_fd_closer_fd_get(o);
+   fd = efl_io_closer_fd_get(o);
    if (fd < 0) return EINA_TRUE; /* postpone until fd_set(), users
                                   * must apply MANUALLY if it's not
                                   * already set!
@@ -98,7 +98,7 @@ _efl_io_closer_fd_efl_io_closer_close_on_exec_get(Eo *o, 
Efl_Io_Closer_Fd_Data *
 #else
    int flags, fd;
 
-   fd = efl_io_closer_fd_closer_fd_get(o);
+   fd = efl_io_closer_fd_get(o);
    if (fd < 0) return pd->close_on_exec;
 
    /* if there is a fd, always query it directly as it may be modified
diff --git a/src/lib/ecore/efl_io_file.c b/src/lib/ecore/efl_io_file.c
index f6588bb..3cab329 100644
--- a/src/lib/ecore/efl_io_file.c
+++ b/src/lib/ecore/efl_io_file.c
@@ -63,11 +63,11 @@ EOLIAN static void
 _efl_io_file_efl_loop_fd_fd_file_set(Eo *o, Efl_Io_File_Data *pd, int fd)
 {
    efl_loop_fd_file_set(efl_super(o, MY_CLASS), fd);
-   efl_io_positioner_fd_positioner_fd_set(o, fd);
-   efl_io_sizer_fd_sizer_fd_set(o, fd);
-   efl_io_reader_fd_reader_fd_set(o, fd);
-   efl_io_writer_fd_writer_fd_set(o, fd);
-   efl_io_closer_fd_closer_fd_set(o, fd);
+   efl_io_positioner_fd_set(o, fd);
+   efl_io_sizer_fd_set(o, fd);
+   efl_io_reader_fd_set(o, fd);
+   efl_io_writer_fd_set(o, fd);
+   efl_io_closer_fd_set(o, fd);
    if (fd >= 0) _efl_io_file_state_update(o, pd);
 }
 
diff --git a/src/lib/ecore/efl_io_positioner_fd.c 
b/src/lib/ecore/efl_io_positioner_fd.c
index a1df02f..3100789 100644
--- a/src/lib/ecore/efl_io_positioner_fd.c
+++ b/src/lib/ecore/efl_io_positioner_fd.c
@@ -41,7 +41,7 @@ _efl_io_positioner_whence_convert(Efl_Io_Positioner_Whence 
whence)
 EOLIAN static Eina_Error
 _efl_io_positioner_fd_efl_io_positioner_seek(Eo *o, Efl_Io_Positioner_Fd_Data 
*pd EINA_UNUSED, int64_t offset, Efl_Io_Positioner_Whence whence)
 {
-   int fd = efl_io_positioner_fd_positioner_fd_get(o);
+   int fd = efl_io_positioner_fd_get(o);
    if (lseek(fd, (off_t)offset, _efl_io_positioner_whence_convert(whence)) < 0)
      return errno;
    efl_event_callback_call(o, EFL_IO_POSITIONER_EVENT_POSITION_CHANGED, NULL);
@@ -51,7 +51,7 @@ _efl_io_positioner_fd_efl_io_positioner_seek(Eo *o, 
Efl_Io_Positioner_Fd_Data *p
 EOLIAN static uint64_t
 _efl_io_positioner_fd_efl_io_positioner_position_get(Eo *o, 
Efl_Io_Positioner_Fd_Data *pd EINA_UNUSED)
 {
-   int fd = efl_io_positioner_fd_positioner_fd_get(o);
+   int fd = efl_io_positioner_fd_get(o);
    off_t offset;
 
    EINA_SAFETY_ON_TRUE_RETURN_VAL(fd < 0, 0);
diff --git a/src/lib/ecore/efl_io_reader_fd.c b/src/lib/ecore/efl_io_reader_fd.c
index b5a9427..a376355 100644
--- a/src/lib/ecore/efl_io_reader_fd.c
+++ b/src/lib/ecore/efl_io_reader_fd.c
@@ -32,7 +32,7 @@ _efl_io_reader_fd_reader_fd_get(Eo *o EINA_UNUSED, 
Efl_Io_Reader_Fd_Data *pd)
 EOLIAN static Eina_Error
 _efl_io_reader_fd_efl_io_reader_read(Eo *o, Efl_Io_Reader_Fd_Data *pd 
EINA_UNUSED, Eina_Rw_Slice *rw_slice)
 {
-   int fd = efl_io_reader_fd_reader_fd_get(o);
+   int fd = efl_io_reader_fd_get(o);
    ssize_t r;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(rw_slice, EINVAL);
@@ -75,7 +75,7 @@ _efl_io_reader_fd_efl_io_reader_can_read_get(Eo *o 
EINA_UNUSED, Efl_Io_Reader_Fd
 EOLIAN static void
 _efl_io_reader_fd_efl_io_reader_can_read_set(Eo *o, Efl_Io_Reader_Fd_Data *pd, 
Eina_Bool can_read)
 {
-   EINA_SAFETY_ON_TRUE_RETURN(efl_io_reader_fd_reader_fd_get(o) < 0);
+   EINA_SAFETY_ON_TRUE_RETURN(efl_io_reader_fd_get(o) < 0);
    if (pd->can_read == can_read) return;
    pd->can_read = can_read;
    efl_event_callback_call(o, EFL_IO_READER_EVENT_CAN_READ_CHANGED, NULL);
@@ -90,7 +90,7 @@ _efl_io_reader_fd_efl_io_reader_eos_get(Eo *o EINA_UNUSED, 
Efl_Io_Reader_Fd_Data
 EOLIAN static void
 _efl_io_reader_fd_efl_io_reader_eos_set(Eo *o, Efl_Io_Reader_Fd_Data *pd, 
Eina_Bool is_eos)
 {
-   EINA_SAFETY_ON_TRUE_RETURN(efl_io_reader_fd_reader_fd_get(o) < 0);
+   EINA_SAFETY_ON_TRUE_RETURN(efl_io_reader_fd_get(o) < 0);
    if (pd->eos == is_eos) return;
    pd->eos = is_eos;
    if (is_eos)
diff --git a/src/lib/ecore/efl_io_sizer_fd.c b/src/lib/ecore/efl_io_sizer_fd.c
index a57d1a9..8dc6bb4 100644
--- a/src/lib/ecore/efl_io_sizer_fd.c
+++ b/src/lib/ecore/efl_io_sizer_fd.c
@@ -29,7 +29,7 @@ _efl_io_sizer_fd_sizer_fd_get(Eo *o EINA_UNUSED, 
Efl_Io_Sizer_Fd_Data *pd)
 EOLIAN static Eina_Error
 _efl_io_sizer_fd_efl_io_sizer_resize(Eo *o, Efl_Io_Sizer_Fd_Data *pd 
EINA_UNUSED, uint64_t size)
 {
-   int fd = efl_io_sizer_fd_sizer_fd_get(o);
+   int fd = efl_io_sizer_fd_get(o);
    if (ftruncate(fd, size) < 0) return errno;
    efl_event_callback_call(o, EFL_IO_SIZER_EVENT_SIZE_CHANGED, NULL);
    return 0;
@@ -38,7 +38,7 @@ _efl_io_sizer_fd_efl_io_sizer_resize(Eo *o, 
Efl_Io_Sizer_Fd_Data *pd EINA_UNUSED
 EOLIAN static uint64_t
 _efl_io_sizer_fd_efl_io_sizer_size_get(Eo *o, Efl_Io_Sizer_Fd_Data *pd 
EINA_UNUSED)
 {
-   int fd = efl_io_sizer_fd_sizer_fd_get(o);
+   int fd = efl_io_sizer_fd_get(o);
    struct stat st;
    int r;
 
diff --git a/src/lib/ecore/efl_io_stderr.c b/src/lib/ecore/efl_io_stderr.c
index 6992901..8ce65d3 100644
--- a/src/lib/ecore/efl_io_stderr.c
+++ b/src/lib/ecore/efl_io_stderr.c
@@ -26,7 +26,7 @@ EOLIAN static void
 _efl_io_stderr_efl_loop_fd_fd_set(Eo *o, void *pd EINA_UNUSED, int fd)
 {
    efl_loop_fd_file_set(efl_super(o, MY_CLASS), fd);
-   efl_io_writer_fd_writer_fd_set(o, fd);
+   efl_io_writer_fd_set(o, fd);
 }
 
 EOLIAN static Efl_Object *
diff --git a/src/lib/ecore/efl_io_stdin.c b/src/lib/ecore/efl_io_stdin.c
index 6da700e..2a6c87e 100644
--- a/src/lib/ecore/efl_io_stdin.c
+++ b/src/lib/ecore/efl_io_stdin.c
@@ -28,7 +28,7 @@ EOLIAN static void
 _efl_io_stdin_efl_loop_fd_fd_set(Eo *o, void *pd EINA_UNUSED, int fd)
 {
    efl_loop_fd_file_set(efl_super(o, MY_CLASS), fd);
-   efl_io_reader_fd_reader_fd_set(o, fd);
+   efl_io_reader_fd_set(o, fd);
 }
 
 EOLIAN static Efl_Object *
diff --git a/src/lib/ecore/efl_io_stdout.c b/src/lib/ecore/efl_io_stdout.c
index 026d79b..73c09b7 100644
--- a/src/lib/ecore/efl_io_stdout.c
+++ b/src/lib/ecore/efl_io_stdout.c
@@ -26,7 +26,7 @@ EOLIAN static void
 _efl_io_stdout_efl_loop_fd_fd_set(Eo *o, void *pd EINA_UNUSED, int fd)
 {
    efl_loop_fd_file_set(efl_super(o, MY_CLASS), fd);
-   efl_io_writer_fd_writer_fd_set(o, fd);
+   efl_io_writer_fd_set(o, fd);
 }
 
 EOLIAN static Efl_Object *
diff --git a/src/lib/ecore/efl_io_writer_fd.c b/src/lib/ecore/efl_io_writer_fd.c
index dac739b..3058c4a 100644
--- a/src/lib/ecore/efl_io_writer_fd.c
+++ b/src/lib/ecore/efl_io_writer_fd.c
@@ -31,7 +31,7 @@ _efl_io_writer_fd_writer_fd_get(Eo *o EINA_UNUSED, 
Efl_Io_Writer_Fd_Data *pd)
 EOLIAN static Eina_Error
 _efl_io_writer_fd_efl_io_writer_write(Eo *o, Efl_Io_Writer_Fd_Data *pd 
EINA_UNUSED, Eina_Slice *ro_slice, Eina_Slice *remaining)
 {
-   int fd = efl_io_writer_fd_writer_fd_get(o);
+   int fd = efl_io_writer_fd_get(o);
    ssize_t r;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(ro_slice, EINVAL);
@@ -79,7 +79,7 @@ _efl_io_writer_fd_efl_io_writer_can_write_get(Eo *o 
EINA_UNUSED, Efl_Io_Writer_F
 EOLIAN static void
 _efl_io_writer_fd_efl_io_writer_can_write_set(Eo *o, Efl_Io_Writer_Fd_Data 
*pd, Eina_Bool can_write)
 {
-   EINA_SAFETY_ON_TRUE_RETURN(efl_io_writer_fd_writer_fd_get(o) < 0);
+   EINA_SAFETY_ON_TRUE_RETURN(efl_io_writer_fd_get(o) < 0);
    if (pd->can_write == can_write) return;
    pd->can_write = can_write;
    efl_event_callback_call(o, EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED, NULL);
diff --git a/src/lib/ecore_con/efl_net_socket_fd.c 
b/src/lib/ecore_con/efl_net_socket_fd.c
index e2ddcc2..4bed00d 100644
--- a/src/lib/ecore_con/efl_net_socket_fd.c
+++ b/src/lib/ecore_con/efl_net_socket_fd.c
@@ -100,9 +100,9 @@ static void
 _efl_net_socket_fd_set(Eo *o, Efl_Net_Socket_Fd_Data *pd, SOCKET fd)
 {
    Eina_Bool close_on_exec = efl_io_closer_close_on_exec_get(o); /* get cached 
value, otherwise will query from set fd */
-   efl_io_reader_fd_reader_fd_set(o, fd);
-   efl_io_writer_fd_writer_fd_set(o, fd);
-   efl_io_closer_fd_closer_fd_set(o, fd);
+   efl_io_reader_fd_set(o, fd);
+   efl_io_writer_fd_set(o, fd);
+   efl_io_closer_fd_set(o, fd);
 
    /* apply postponed values */
    efl_io_closer_close_on_exec_set(o, close_on_exec);
@@ -116,9 +116,9 @@ _efl_net_socket_fd_set(Eo *o, Efl_Net_Socket_Fd_Data *pd, 
SOCKET fd)
 static void
 _efl_net_socket_fd_unset(Eo *o)
 {
-   efl_io_reader_fd_reader_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
-   efl_io_writer_fd_writer_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
-   efl_io_closer_fd_closer_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
+   efl_io_reader_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
+   efl_io_writer_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
+   efl_io_closer_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
 
    efl_net_socket_address_local_set(o, NULL);
    efl_net_socket_address_remote_set(o, NULL);
@@ -148,7 +148,7 @@ _efl_net_socket_fd_efl_loop_fd_fd_set(Eo *o, 
Efl_Net_Socket_Fd_Data *pd, int pfd
 EOLIAN static Eina_Error
 _efl_net_socket_fd_efl_io_closer_close(Eo *o, Efl_Net_Socket_Fd_Data *pd 
EINA_UNUSED)
 {
-   SOCKET fd = efl_io_closer_fd_closer_fd_get(o);
+   SOCKET fd = efl_io_closer_fd_get(o);
    Eina_Error ret = 0;
 
    EINA_SAFETY_ON_TRUE_RETURN_VAL(efl_io_closer_closed_get(o), EBADF);
@@ -158,12 +158,12 @@ _efl_net_socket_fd_efl_io_closer_close(Eo *o, 
Efl_Net_Socket_Fd_Data *pd EINA_UN
    efl_io_reader_eos_set(o, EINA_TRUE);
 
    /* skip _efl_net_socket_fd_efl_loop_fd_fd_set() since we want to
-    * retain efl_io_closer_fd_closer_fd_get() so close(super()) works
+    * retain efl_io_closer_fd_get() so close(super()) works
     * and we emit the events with proper addresses.
     */
    efl_loop_fd_set(efl_super(o, MY_CLASS), SOCKET_TO_LOOP_FD(INVALID_SOCKET));
 
-   efl_io_closer_fd_closer_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
+   efl_io_closer_fd_set(o, SOCKET_TO_LOOP_FD(INVALID_SOCKET));
    if (closesocket(fd) != 0) ret = efl_net_socket_error_get();
    efl_event_callback_call(o, EFL_IO_CLOSER_EVENT_CLOSED, NULL);
 
@@ -176,13 +176,13 @@ _efl_net_socket_fd_efl_io_closer_close(Eo *o, 
Efl_Net_Socket_Fd_Data *pd EINA_UN
 EOLIAN static Eina_Bool
 _efl_net_socket_fd_efl_io_closer_closed_get(Eo *o, Efl_Net_Socket_Fd_Data *pd 
EINA_UNUSED)
 {
-   return (SOCKET)efl_io_closer_fd_closer_fd_get(o) == INVALID_SOCKET;
+   return (SOCKET)efl_io_closer_fd_get(o) == INVALID_SOCKET;
 }
 
 EOLIAN static Eina_Error
 _efl_net_socket_fd_efl_io_reader_read(Eo *o, Efl_Net_Socket_Fd_Data *pd 
EINA_UNUSED, Eina_Rw_Slice *rw_slice)
 {
-   SOCKET fd = efl_io_reader_fd_reader_fd_get(o);
+   SOCKET fd = efl_io_reader_fd_get(o);
    ssize_t r;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(rw_slice, EINVAL);
@@ -256,7 +256,7 @@ _efl_net_socket_fd_efl_io_reader_eos_set(Eo *o, 
Efl_Net_Socket_Fd_Data *pd EINA_
 EOLIAN static Eina_Error
 _efl_net_socket_fd_efl_io_writer_write(Eo *o, Efl_Net_Socket_Fd_Data *pd 
EINA_UNUSED, Eina_Slice *ro_slice, Eina_Slice *remaining)
 {
-   SOCKET fd = efl_io_writer_fd_writer_fd_get(o);
+   SOCKET fd = efl_io_writer_fd_get(o);
    ssize_t r;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(ro_slice, EINVAL);
diff --git a/src/lib/ecore_con/efl_net_socket_udp.c 
b/src/lib/ecore_con/efl_net_socket_udp.c
index b534a90..ebce857 100644
--- a/src/lib/ecore_con/efl_net_socket_udp.c
+++ b/src/lib/ecore_con/efl_net_socket_udp.c
@@ -508,7 +508,7 @@ _efl_net_socket_udp_efl_object_destructor(Eo *o, 
Efl_Net_Socket_Udp_Data *pd)
 EOLIAN static Eina_Error
 _efl_net_socket_udp_efl_io_reader_read(Eo *o, Efl_Net_Socket_Udp_Data *pd, 
Eina_Rw_Slice *rw_slice)
 {
-   SOCKET fd = efl_io_reader_fd_reader_fd_get(o);
+   SOCKET fd = efl_io_reader_fd_get(o);
    ssize_t r;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(rw_slice, EINVAL);
@@ -587,7 +587,7 @@ _efl_net_socket_udp_efl_io_reader_read(Eo *o, 
Efl_Net_Socket_Udp_Data *pd, Eina_
 EOLIAN static Eina_Error
 _efl_net_socket_udp_efl_io_writer_write(Eo *o, Efl_Net_Socket_Udp_Data *pd, 
Eina_Slice *ro_slice, Eina_Slice *remaining)
 {
-   SOCKET fd = efl_io_writer_fd_writer_fd_get(o);
+   SOCKET fd = efl_io_writer_fd_get(o);
    ssize_t r;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(ro_slice, EINVAL);
diff --git a/src/lib/eolian/database_function_api.c 
b/src/lib/eolian/database_function_api.c
index bf61d44..7ae544b 100644
--- a/src/lib/eolian/database_function_api.c
+++ b/src/lib/eolian/database_function_api.c
@@ -45,6 +45,39 @@ _get_eo_prefix(const Eolian_Function *foo_id, char *buf, 
Eina_Bool use_legacy)
     return buf;
 }
 
+static char *
+_get_abbreviated_name(const char *prefix, const char *fname)
+{
+   Eina_Strbuf *buf = eina_strbuf_new();
+
+   const char *last_p = strrchr(prefix, '_');
+   last_p = (last_p) ? (last_p + 1) : prefix;
+
+   const char *tmp = strstr(fname, last_p);
+   int len = strlen(last_p);
+
+   if ((tmp) &&
+       ((tmp == fname) || (*(tmp - 1) == '_')) &&
+       ((*(tmp + len) == '\0') || (*(tmp + len) == '_')))
+     {
+        int plen = strlen(prefix);
+        len += (tmp - fname);
+
+        if ((plen >= len) && !strncmp(prefix + plen - len, fname, len))
+          {
+             eina_strbuf_append_n(buf, prefix, plen - len);
+          }
+     }
+
+   if (eina_strbuf_length_get(buf) == 0)
+     eina_strbuf_append_printf(buf, "%s_", prefix);
+   eina_strbuf_append(buf, fname);
+
+   char *ret = eina_strbuf_string_steal(buf);
+   eina_strbuf_free(buf);
+   return ret;
+}
+
 EAPI Eina_Stringshare *
 eolian_function_full_c_name_get(const Eolian_Function *foo_id,
                                 Eolian_Function_Type ftype,
@@ -80,18 +113,10 @@ eolian_function_full_c_name_get(const Eolian_Function 
*foo_id,
      return NULL;
 
    const char  *funcn = eolian_function_name_get(foo_id);
-   const char  *last_p = strrchr(prefix, '_');
-   const char  *func_p = strchr(funcn, '_');
    Eina_Strbuf *buf = eina_strbuf_new();
    Eina_Stringshare *ret;
-   int   len;
 
-   if (!last_p) last_p = prefix;
-   else last_p++;
-   if (!func_p) len = strlen(funcn);
-   else len = func_p - funcn;
-
-   if (use_legacy || (int)strlen(last_p) != len || strncmp(last_p, funcn, len))
+   if (use_legacy)
      {
         eina_strbuf_append(buf, prefix);
         eina_strbuf_append_char(buf, '_');
@@ -107,10 +132,9 @@ eolian_function_full_c_name_get(const Eolian_Function 
*foo_id,
         return ret;
      }
 
-   if (last_p != prefix)
-      eina_strbuf_append_n(buf, prefix, last_p - prefix); /* includes _ */
-
-   eina_strbuf_append(buf, funcn);
+   char *abbr = _get_abbreviated_name(prefix, funcn);
+   eina_strbuf_append(buf, abbr);
+   free(abbr);
 
    if ((ftype == EOLIAN_PROP_GET) || (ftype == EOLIAN_PROPERTY))
      eina_strbuf_append(buf, "_get");

-- 


Reply via email to