return dest;
}
+char *
+mp_str_from_mem(struct mempool *a, const void *mem, uns len)
+{
+ char *str = mp_alloc_noalign(a, len+1);
+ memcpy(str, mem, len);
+ str[len] = 0;
+ return str;
+}
+
#ifdef TEST
#include <stdio.h>
char *a[] = { "bugs", "gnats", "insects" };
puts(mp_strjoin(p, a, 3, '.'));
puts(mp_strjoin(p, a, 3, 0));
+ puts(mp_str_from_mem(p, s+1, 2));
return 0;
}
* tells how many there is of them.
**/
char *mp_strjoin(struct mempool *p, char **a, uns n, uns sep) LIKE_MALLOC;
+/**
+ * Convert memory block to a string. Makes a copy of the given memory block
+ * in the mempool @p, adding an extra terminating zero byte at the end.
+ **/
+char *mp_str_from_mem(struct mempool *p, const void *mem, uns len) LIKE_MALLOC;
/***