Eo gdb: Implement eo_data_get to get eo data.
authorTom Hacohen <tom@stosb.com>
Wed, 7 Dec 2016 12:33:59 +0000 (12:33 +0000)
committerTom Hacohen <tom@stosb.com>
Wed, 7 Dec 2016 12:51:54 +0000 (12:51 +0000)
commit5614e46f1f01aa02a779358177907fc08223f3ac
tree2a67277c1028f705d4615d42e77fd99a2614e5be
parentfcef8d8392b8c8d1d7b96baacaf5e7e89fcf6b45
Eo gdb: Implement eo_data_get to get eo data.

Like 79d76fb25ece4ffbf5785b4be2b030f062ef9f2c, this is useful when
debugging a core dump.

It accepts a valid pointer to an object, for example as returned from
$eo_resolve, and a name of a class or mixin, and returns a pointer to
the private data. Essentially the same as efl_data_scope_get(), but also
works on core dumps, and accepts a class name instead of a class
pointer.

Usage:
Print the pointer:
 (gdb) print $eo_data_get($eo_resolve(obj), "Efl_Canvas_Object")
 $1 = (void *) 0x555555eb9290

Use it directly (e.g. to print a value):
 (gdb) print ((Evas_Object_Protected_Data *) $eo_data_get($eo_resolve(obj),
              "Efl_Canvas_Object"))->last_event_type
 $2 = EVAS_CALLBACK_MOUSE_UP

@feature
data/eo/eo_gdb.py