summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'extract/src/astring.h')
-rw-r--r--extract/src/astring.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/extract/src/astring.h b/extract/src/astring.h
new file mode 100644
index 00000000..947e6587
--- /dev/null
+++ b/extract/src/astring.h
@@ -0,0 +1,23 @@
+#ifndef ARTIFEX_EXTRACT_AUTOSTRING_XML
+#define ARTIFEX_EXTRACT_AUTOSTRING_XML
+
+/* Only for internal use by extract code. */
+
+/* A simple string struct that reallocs as required. */
+typedef struct
+{
+ char* chars; /* NULL or zero-terminated. */
+ size_t chars_num; /* Length of string pointed to by .chars. */
+} extract_astring_t;
+
+void extract_astring_init(extract_astring_t* string);
+
+void extract_astring_free(extract_alloc_t* alloc, extract_astring_t* string);
+
+int extract_astring_catl(extract_alloc_t* alloc, extract_astring_t* string, const char* s, size_t s_len);
+
+int extract_astring_catc(extract_alloc_t* alloc, extract_astring_t* string, char c);
+
+int extract_astring_cat(extract_alloc_t* alloc, extract_astring_t* string, const char* s);
+
+#endif