aboutsummaryrefslogtreecommitdiff
path: root/09-september/tomcat/util/str.h
diff options
context:
space:
mode:
Diffstat (limited to '09-september/tomcat/util/str.h')
-rw-r--r--09-september/tomcat/util/str.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/09-september/tomcat/util/str.h b/09-september/tomcat/util/str.h
new file mode 100644
index 0000000..d8182e1
--- /dev/null
+++ b/09-september/tomcat/util/str.h
@@ -0,0 +1,29 @@
+#ifndef STR_H
+#define STR_H
+
+#include <stdbool.h>
+
+typedef struct _String
+{
+ char *data;
+ unsigned int length;
+ unsigned int allocated_length;
+} String;
+
+extern String *string_create( const char *init );
+extern String *string_create_by_size( unsigned int reserved_size);
+
+extern void string_assign( String *string_, const char *val );
+
+extern void string_append( String *string_, const char *val );
+extern void string_append_char( String *string_, char c );
+
+extern void string_insert( String *string_, int index, const char *val);
+extern void string_insert_char( String *string_, int index, char val);
+
+extern void string_free( String *string_ );
+
+extern unsigned int string_hash( String *string_ );
+extern bool string_equal( String *a, String *b );
+
+#endif // STR_H