Use def_elt_end instead of destroying the context directly.
[gedcom-parse.git] / gom / gom_internal.h
index 5b707a5791049b67df201fadd86bef398bcce12c..9f1e6ea03c9556bc4826129352295ae643cdf259 100644 (file)
@@ -52,7 +52,9 @@ typedef enum {
   T_address, T_event, T_place, T_source_citation, T_text,
   T_note_sub, T_multimedia_link, T_lds_event, T_user_ref_number,
   T_change_date, T_personal_name, T_family_link, T_pedigree,
-  T_association, T_source_event, T_source_description
+  T_association, T_source_event, T_source_description,
+
+  T_LAST
 } OBJ_TYPE;
 
 /* Assumptions for context:
@@ -76,6 +78,9 @@ void gom_cast_error(const char* file, int line,
 void gom_no_context(const char* file, int line);
 void gom_unexpected_context(const char* file, int line, OBJ_TYPE found);
 void gom_xref_already_in_use(const char *xrefstr);
+void gom_move_error(const char* type);
+void gom_find_error(const char* type);
+void unref_xref_value(struct xref_value *xref);
 
 int gom_write_xref_list(Gedcom_write_hndl hndl,
                        Gedcom_elt elt, int tag, int parent_rec_or_elt,
@@ -116,8 +121,9 @@ int  update_time(char** tv, struct tm* tm_ptr);
 
 void NULL_DESTROY(void* anything);
 
-#define xref_list_cleanup NULL_DESTROY
-
 #include "func_template.h"
 
+DECLARE_UNREFALLFUNC(xref_list);
+DECLARE_CLEANFUNC(xref_list);
+  
 #endif /* __GOM_INTERNAL_H */