Tue Oct 31 19:29:05 2006 Ben Pfaff <blp@gnu.org>
[pspp-builds.git] / src / libpspp / str.h
index c3c008a61b24944c0c8dde085a39f56a7a24a874..d8698ba4383bdc56f16122e4868924d3ae660f85 100644 (file)
 #include "strtok_r.h"
 #include "vsnprintf.h"
 #include "xvasprintf.h"
-
-#ifndef HAVE_STRCHR
-#define strchr index
-#endif
-#ifndef HAVE_STRRCHR
-#define strrchr rindex
-#endif
 \f
 /* Miscellaneous. */
 
@@ -151,6 +144,11 @@ void ds_init_cstr (struct string *, const char *);
 void ds_destroy (struct string *);
 void ds_swap (struct string *, struct string *);
 
+/* Pools. */
+struct pool;
+void ds_register_pool (struct string *, struct pool *);
+void ds_unregister_pool (struct string *, struct pool *);
+
 /* Replacement. */
 void ds_assign_string (struct string *, const struct string *);
 void ds_assign_substring (struct string *, struct substring);
@@ -172,6 +170,7 @@ bool ds_separate (const struct string *src, struct substring delimiters,
 bool ds_tokenize (const struct string *src, struct substring delimiters,
                   size_t *save_idx, struct substring *token);
 void ds_rpad (struct string *, size_t length, char pad);
+void ds_set_length (struct string *, size_t new_length, char pad);
 
 /* Extracting substrings. */
 struct substring ds_ss (const struct string *);