eo: Add debug_name read-only property to ease debugging
authorJean-Philippe Andre <jp.andre@samsung.com>
Fri, 14 Jul 2017 06:57:36 +0000 (15:57 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Fri, 4 Aug 2017 01:24:03 +0000 (10:24 +0900)
commitc4769ff8989bab2b745017b843f073e5737e91e0
tree604752c6183f7615cacf5be15fdab1a947549fb9
parent0834511067a99faafc2c59f0aabcd58dab1cbc0b
eo: Add debug_name read-only property to ease debugging

This will include the following information, by default:
 - class name
 - whether the class is an override
 - eo id (pointer)
 - refcount
 - name if one was set (Efl.Object property)

This also supports classes, which is why it's an EAPI in eo.c
and not only a method of Efl.Object

This can be overriden by subclasses using the empty method
Efl.Object.debug_name_override.get

If the function is overriden, then the returned string is used
as is and so it is left to the subclass to include all the
necessary information (as above). This can easily be achieved
by calling efl_debug_name_get(efl_super()) and then concatenating
the strings.

Think of this function as something like Java's toString(), but
only for debugging (i.e. a string class should not just return
its string value).

@feature
src/lib/eo/Eo.h
src/lib/eo/efl_object.eo
src/lib/eo/eo.c
src/lib/eo/eo_base_class.c
src/lib/eo/eo_ptr_indirection.h