q66 pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=7d001fd93fcc4edd8ee2377166ab00d3bc3ae409
commit 7d001fd93fcc4edd8ee2377166ab00d3bc3ae409 Author: Daniel Kolesa <d.kol...@osg.samsung.com> Date: Tue Feb 27 15:46:39 2018 +0100 eolian: add API to get children of a unit --- src/lib/eolian/Eolian.h | 11 +++++++++++ src/lib/eolian/eolian_database.c | 7 +++++++ 2 files changed, 18 insertions(+) diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h index 94eb9a0b49..dbd6ed891e 100644 --- a/src/lib/eolian/Eolian.h +++ b/src/lib/eolian/Eolian.h @@ -560,6 +560,17 @@ EAPI const Eolian_Unit *eolian_state_unit_by_file_get(const Eolian_State *state, EAPI Eina_Iterator *eolian_state_units_get(const Eolian_State *state); /* + * @brief Get the children (dependencies) of a unit. + * + * The iterator is obviously again to `const Eolian_Unit *`. + * + * @param[in] unit The unit. + * + * @ingroup Eolian + */ +EAPI Eina_Iterator *eolian_unit_children_get(const Eolian_Unit *unit); + +/* * @brief Parse the given .eo or .eot file and fill the database. * * The input can be either a full path to the file or only a filename. diff --git a/src/lib/eolian/eolian_database.c b/src/lib/eolian/eolian_database.c index 3749e511a8..af786fa07f 100644 --- a/src/lib/eolian/eolian_database.c +++ b/src/lib/eolian/eolian_database.c @@ -677,6 +677,13 @@ eolian_state_units_get(const Eolian_State *state) return eina_hash_iterator_data_new(state->units); } +EAPI Eina_Iterator * +eolian_unit_children_get(const Eolian_Unit *unit) +{ + if (!unit) return NULL; + return eina_hash_iterator_data_new(unit->children); +} + char * database_class_to_filename(const char *cname) { --