/* Constructors and destructor that allocate and deallocate
memory. */
struct pool;
-void ss_alloc_substring (struct substring *, struct substring);
+struct substring ss_clone (struct substring);
+struct substring ss_clone_pool (struct substring, struct pool *);
void ss_alloc_uninit (struct substring *, size_t);
void ss_realloc (struct substring *, size_t);
-void ss_alloc_substring_pool (struct substring *, struct substring,
- struct pool *);
void ss_alloc_uninit_pool (struct substring *, size_t, struct pool *);
void ss_dealloc (struct substring *);
size_t ss_find_byte (struct substring, char);
size_t ss_find_substring (struct substring, struct substring);
int ss_compare (struct substring, struct substring);
+int ss_compare_rpad (struct substring, struct substring);
int ss_compare_case (struct substring, struct substring);
int ss_equals (struct substring, struct substring);
int ss_equals_case (struct substring, struct substring);