diff options
author | Yakov Goldberg <yakov.g@samsung.com> | 2013-04-22 09:21:08 +0300 |
---|---|---|
committer | Yakov Goldberg <yakov.g@samsung.com> | 2014-04-16 09:21:16 +0300 |
commit | 638c39653ec60e8355b927b3bb4012516394d6a5 (patch) | |
tree | c75f2570ca0094dc3cfb9a50afbe04cc71f903de | |
parent | f81f1d6172066c7b725250ca777f9986a8863db2 (diff) | |
download | efl-devs/yakov/eo_class_mro_get.tar.gz |
add names in MROdevs/yakov/eo_class_mro_get
Signed-off-by: Yakov Goldberg <yakov.g@samsung.com>
-rw-r--r-- | src/lib/eo/eo.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c index 4acf0f6b28..3fc854de0e 100644 --- a/src/lib/eo/eo.c +++ b/src/lib/eo/eo.c @@ -910,6 +910,20 @@ _eo_class_mro_has(const _Eo_Class *klass, const _Eo_Class *find) } #endif +EAPI Eina_List * +eo_class_mro_get(const Eo_Class *class_id) +{ + EINA_SAFETY_ON_NULL_RETURN_VAL(class_id, NULL); + const _Eo_Class *klass = _eo_class_pointer_get(class_id); + const _Eo_Class **itr; + Eina_List *mro = NULL; + for (itr = klass->mro ; *itr ; itr++) + { + mro = eina_list_append(mro, _eo_class_id_get(*itr)); + } + return mro; +} + static Eina_List * _eo_class_list_remove_duplicates(Eina_List* list) { |