eolian: make by-file variable lookups take unit

This commit is contained in:
Daniel Kolesa 2017-05-18 16:33:31 +02:00
parent 653cf6bac3
commit cee3b604a3
3 changed files with 14 additions and 10 deletions

View File

@ -369,8 +369,8 @@ ffi.cdef [[
Eolian_Value_t eolian_expression_value_get(const Eolian_Expression *expr);
const Eolian_Variable *eolian_variable_global_get_by_name(const Eolian_Unit *unit, const char *name);
const Eolian_Variable *eolian_variable_constant_get_by_name(const Eolian_Unit *unit, const char *name);
Eina_Iterator *eolian_variable_globals_get_by_file(const char *fname);
Eina_Iterator *eolian_variable_constants_get_by_file(const char *fname);
Eina_Iterator *eolian_variable_globals_get_by_file(const Eolian_Unit *unit, const char *fname);
Eina_Iterator *eolian_variable_constants_get_by_file(const Eolian_Unit *unit, const char *fname);
Eina_Iterator *eolian_variable_all_constants_get(void);
Eina_Iterator *eolian_variable_all_globals_get(void);
Eolian_Variable_Type eolian_variable_type_get(const Eolian_Variable *var);
@ -1374,14 +1374,14 @@ M.variable_constant_get_by_name = function(unit, name)
return v
end
M.variable_globals_get_by_file = function(fname)
M.variable_globals_get_by_file = function(unit, fname)
return Ptr_Iterator("const Eolian_Variable*",
eolian.eolian_variable_globals_get_by_file(fname))
eolian.eolian_variable_globals_get_by_file(unit, fname))
end
M.variable_constants_get_by_file = function(fname)
M.variable_constants_get_by_file = function(unit, fname)
return Ptr_Iterator("const Eolian_Variable*",
eolian.eolian_variable_constants_get_by_file(fname))
eolian.eolian_variable_constants_get_by_file(unit, fname))
end
M.variable_all_constants_get = function()

View File

@ -2077,6 +2077,7 @@ EAPI const Eolian_Variable *eolian_variable_constant_get_by_name(const Eolian_Un
/*
* @brief Get an iterator to all global variables contained in a file.
*
* @param[in] unit the unit to look in
* @param[in] fname the file name without full path
* @return the iterator or NULL
*
@ -2084,11 +2085,12 @@ EAPI const Eolian_Variable *eolian_variable_constant_get_by_name(const Eolian_Un
*
* @ingroup Eolian
*/
EAPI Eina_Iterator *eolian_variable_globals_get_by_file(const char *fname);
EAPI Eina_Iterator *eolian_variable_globals_get_by_file(const Eolian_Unit *unit, const char *fname);
/*
* @brief Get an iterator to all constant variables contained in a file.
*
* @param[in] unit the unit to look in
* @param[in] fname the file name without full path
* @return the iterator or NULL
*
@ -2096,7 +2098,7 @@ EAPI Eina_Iterator *eolian_variable_globals_get_by_file(const char *fname);
*
* @ingroup Eolian
*/
EAPI Eina_Iterator *eolian_variable_constants_get_by_file(const char *fname);
EAPI Eina_Iterator *eolian_variable_constants_get_by_file(const Eolian_Unit *unit, const char *fname);
/*
* @brief Get an iterator to all constant variables in the Eolian database.

View File

@ -28,7 +28,8 @@ eolian_variable_constant_get_by_name(const Eolian_Unit *unit EINA_UNUSED,
}
EAPI Eina_Iterator *
eolian_variable_globals_get_by_file(const char *fname)
eolian_variable_globals_get_by_file(const Eolian_Unit *unit EINA_UNUSED,
const char *fname)
{
if (!_globalsf) return NULL;
Eina_Stringshare *shr = eina_stringshare_add(fname);
@ -39,7 +40,8 @@ eolian_variable_globals_get_by_file(const char *fname)
}
EAPI Eina_Iterator *
eolian_variable_constants_get_by_file(const char *fname)
eolian_variable_constants_get_by_file(const Eolian_Unit *unit EINA_UNUSED,
const char *fname)
{
if (!_constantsf) return NULL;
Eina_Stringshare *shr = eina_stringshare_add(fname);