]> git.xonotic.org Git - xonotic/gmqcc.git/blobdiff - gmqcc.h
Cleanups and add the corrector to the makefile. Starting integration with the parser.
[xonotic/gmqcc.git] / gmqcc.h
diff --git a/gmqcc.h b/gmqcc.h
index 0bfe7ce23c0a902d4585c406bbe6506e204a0793..036cab99eb59d7b5fba3e52dbbd5770cc2d27ef2 100644 (file)
--- a/gmqcc.h
+++ b/gmqcc.h
 /*===================================================================*/
 /*=========================== util.c ================================*/
 /*===================================================================*/
-void *util_memory_a      (size_t,       unsigned int, const char *);
-void  util_memory_d      (void       *, unsigned int, const char *);
-void *util_memory_r      (void       *, size_t,       unsigned int, const char *);
+void *util_memory_a      (size_t, /*****/ unsigned int, const char *);
+void *util_memory_r      (void *, size_t, unsigned int, const char *);
+void  util_memory_d      (void *);
 void  util_meminfo       ();
 
 bool  util_filexists     (const char *);
@@ -275,7 +275,7 @@ int util_asprintf (char **ret, const char *fmt, ...);
 #    define mem_r(x, n) realloc((void*)x, n)
 #else
 #    define mem_a(x)    util_memory_a((x), __LINE__, __FILE__)
-#    define mem_d(x)    util_memory_d((void*)(x),      __LINE__, __FILE__)
+#    define mem_d(x)    util_memory_d((void*)(x))
 #    define mem_r(x, n) util_memory_r((void*)(x), (n), __LINE__, __FILE__)
 #endif
 
@@ -423,6 +423,13 @@ GMQCC_INLINE FILE   *file_open   (const char *, const char *);
 /*NOINLINE*/ int     file_getline(char  **, size_t *, FILE *);
 
 
+/*===================================================================*/
+/*=========================== correct.c =============================*/
+/*===================================================================*/
+void  correct_del(ht, size_t **);
+void  correct_add(ht, size_t ***, const char *);
+char *correct_str(ht, /********/  const char *);
+
 /*===================================================================*/
 /*=========================== code.c ================================*/
 /*===================================================================*/
@@ -963,6 +970,18 @@ void parser_cleanup       ();
 /*===================================================================*/
 /*====================== ftepp.c commandline ========================*/
 /*===================================================================*/
+struct lex_file_s;
+typedef struct {
+    const char  *name;
+    char      *(*func)(struct lex_file_s *);
+} ftepp_predef_t;
+
+/*
+ * line, file, counter, counter_last, random, random_last, date, time
+ * increment when items are added
+ */
+#define FTEPP_PREDEF_COUNT 8
+
 bool        ftepp_init             ();
 bool        ftepp_preprocess_file  (const char *filename);
 bool        ftepp_preprocess_string(const char *name, const char *str);
@@ -972,6 +991,8 @@ void        ftepp_flush            ();
 void        ftepp_add_define       (const char *source, const char *name);
 void        ftepp_add_macro        (const char *name,   const char *value);
 
+extern const ftepp_predef_t ftepp_predefs[FTEPP_PREDEF_COUNT];
+
 /*===================================================================*/
 /*======================= main.c commandline ========================*/
 /*===================================================================*/