#define DO_SLIST(type, prefix, dtor) \
static inline type *prefix##_list_pop(type **list) { \
if (*list) { \
#define DO_SLIST(type, prefix, dtor) \
static inline type *prefix##_list_pop(type **list) { \
if (*list) { \
DO_SLIST(string_list_t, string, string_item_delete);
string_list_t *string_list_dup(const string_list_t *);
DO_SLIST(string_list_t, string, string_item_delete);
string_list_t *string_list_dup(const string_list_t *);
/* add an element to a list */
string_list_t *mutt_add_list_n(string_list_t*, const void*, size_t len);
static inline string_list_t *mutt_add_list(string_list_t *head, const char *data) {
/* add an element to a list */
string_list_t *mutt_add_list_n(string_list_t*, const void*, size_t len);
static inline string_list_t *mutt_add_list(string_list_t *head, const char *data) {