aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/eolian/eolian_database.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/eolian/eolian_database.h')
-rw-r--r--src/lib/eolian/eolian_database.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/lib/eolian/eolian_database.h b/src/lib/eolian/eolian_database.h
index 0dce769370..950e4114d4 100644
--- a/src/lib/eolian/eolian_database.h
+++ b/src/lib/eolian/eolian_database.h
@@ -41,6 +41,7 @@ struct _Eolian_Unit
Eina_Hash *classes;
Eina_Hash *globals;
Eina_Hash *constants;
+ Eina_Hash *errors;
Eina_Hash *aliases;
Eina_Hash *structs;
Eina_Hash *enums;
@@ -60,6 +61,7 @@ typedef struct _Eolian_State_Area
Eina_Hash *enums_f;
Eina_Hash *globals_f;
Eina_Hash *constants_f;
+ Eina_Hash *errors_f;
Eina_Hash *objects_f;
} Eolian_State_Area;
@@ -267,6 +269,7 @@ struct _Eolian_Type
{
Eolian_Class *klass;
Eolian_Typedecl *tdecl;
+ Eolian_Error *error;
};
Eina_Bool is_const :1;
Eina_Bool is_ptr :1;
@@ -325,6 +328,14 @@ struct _Eolian_Event
Eina_Bool is_restart :1;
};
+struct _Eolian_Error
+{
+ Eolian_Object base;
+ Eina_Stringshare *msg;
+ Eolian_Documentation *doc;
+ Eina_Bool is_extern :1;
+};
+
struct _Eolian_Struct_Type_Field
{
Eolian_Object base;
@@ -448,4 +459,8 @@ void database_event_del(Eolian_Event *event);
/* parts */
void database_part_del(Eolian_Part *part);
+/* errors */
+void database_error_del(Eolian_Error *err);
+void database_error_add(Eolian_Unit *unit, Eolian_Error *err);
+
#endif