Eina_Iterator *eolian_typedecl_aliases_get_by_file(const char *fname);
Eina_Iterator *eolian_typedecl_structs_get_by_file(const char *fname);
Eina_Iterator *eolian_typedecl_enums_get_by_file(const char *fname);
+ Eina_Iterator *eolian_typedecl_all_aliases_get(void);
+ Eina_Iterator *eolian_typedecl_all_structs_get(void);
+ Eina_Iterator *eolian_typedecl_all_enums_get(void);
Eolian_Type_Type eolian_type_type_get(const Eolian_Type *tp);
Eolian_Typedecl_Type eolian_typedecl_type_get(const Eolian_Typedecl *tp);
Eina_Iterator *eolian_type_subtypes_get(const Eolian_Type *tp);
const Eolian_Variable *eolian_variable_constant_get_by_name(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_all_constants_get(void);
+ Eina_Iterator *eolian_variable_all_globals_get(void);
Eolian_Variable_Type eolian_variable_type_get(const Eolian_Variable *var);
const Eolian_Documentation *eolian_variable_documentation_get(const Eolian_Variable *var);
const char *eolian_variable_file_get(const Eolian_Variable *var);
Eina_Bool eolian_variable_is_extern(const Eolian_Variable *var);
const Eolian_Declaration *eolian_declaration_get_by_name(const char *name);
Eina_Iterator *eolian_declarations_get_by_file(const char *fname);
+ Eina_Iterator *eolian_all_declarations_get(void);
Eolian_Declaration_Type eolian_declaration_type_get(const Eolian_Declaration *decl);
const char *eolian_declaration_name_get(const Eolian_Declaration *decl);
const Eolian_Class *eolian_declaration_class_get(const Eolian_Declaration *decl);
eolian.eolian_type_enums_get_by_file(self))
end
+M.typedecl_all_aliases_get = function()
+ return Ptr_Iterator("const Eolian_Typedecl *",
+ eolian.eolian_typedecl_all_aliases_get())
+end
+
+M.typedecl_all_structs_get = function()
+ return Ptr_Iterator("const Eolian_Typedecl *",
+ eolian.eolian_typedecl_all_structs_get())
+end
+
+M.typedecl_all_enums_get = function()
+ return Ptr_Iterator("const Eolian_Typedecl *",
+ eolian.eolian_typedecl_all_enums_get())
+end
+
M.expression_type = {
UNKNOWN = 0,
INT = 1,
eolian.eolian_variable_constants_get_by_file(fname))
end
+M.variable_all_constants_get = function()
+ return Ptr_Iterator("const Eolian_Variable *",
+ eolian.eolian_variable_all_constants_get())
+end
+
+M.variable_all_globals_get = function()
+ return Ptr_Iterator("const Eolian_Variable *",
+ eolian.eolian_variable_all_globals_get())
+end
+
M.Variable = ffi.metatype("Eolian_Variable", {
__index = {
type_get = function(self)
eolian.eolian_declarations_get_by_file(fname))
end
+M.all_declarations_get = function()
+ return Ptr_Iterator("const Eolian_Declaration *",
+ eolian.eolian_all_declarations_get())
+end
+
M.Declaration = ffi.metatype("Eolian_Declaration", {
__index = {
type_get = function(self)
EAPI Eina_Iterator *eolian_typedecl_enums_get_by_file(const char *fname);
/*
+ * @brief Get an iterator to all aliases in the Eolian database.
+ *
+ * @return the iterator or NULL
+ *
+ * Thanks to internal caching, this is an O(1) operation.
+ *
+ * @ingroup Eolian
+ */
+EAPI Eina_Iterator *eolian_typedecl_all_aliases_get(void);
+
+/*
+ * @brief Get an iterator to all structs in the Eolian database.
+ *
+ * @return the iterator or NULL
+ *
+ * Thanks to internal caching, this is an O(1) operation.
+ *
+ * @ingroup Eolian
+ */
+EAPI Eina_Iterator *eolian_typedecl_all_structs_get(void);
+
+/*
+ * @brief Get an iterator to all enums in the Eolian database.
+ *
+ * @return the iterator or NULL
+ *
+ * Thanks to internal caching, this is an O(1) operation.
+ *
+ * @ingroup Eolian
+ */
+EAPI Eina_Iterator *eolian_typedecl_all_enums_get(void);
+
+/*
* @brief Get the type of a type declaration.
*
* @param[in] tp the type declaration.
EAPI Eina_Iterator *eolian_variable_constants_get_by_file(const char *fname);
/*
+ * @brief Get an iterator to all constant variables in the Eolian database.
+ *
+ * @return the iterator or NULL
+ *
+ * Thanks to internal caching, this is an O(1) operation.
+ *
+ * @ingroup Eolian
+ */
+EAPI Eina_Iterator *eolian_variable_all_constants_get(void);
+
+/*
+ * @brief Get an iterator to all global variables in the Eolian database.
+ *
+ * @return the iterator or NULL
+ *
+ * Thanks to internal caching, this is an O(1) operation.
+ *
+ * @ingroup Eolian
+ */
+EAPI Eina_Iterator *eolian_variable_all_globals_get(void);
+
+/*
* @brief Get the type of a variable (global, constant)
*
* @param[in] var the variable.
EAPI Eina_Iterator *eolian_declarations_get_by_file(const char *fname);
/*
+ * @brief Get an iterator to all declarations in the Eolian database.
+ *
+ * @return the iterator or NULL.
+ *
+ * Thanks to internal caching this is an O(1) operation.
+ *
+ * @ingroup Eolian
+ */
+EAPI Eina_Iterator *eolian_all_declarations_get(void);
+
+/*
* @brief Get the type of a declaration
*
* @param[in] decl the declaration