New function svec_join().
authorBen Pfaff <blp@nicira.com>
Tue, 20 Jan 2009 21:34:02 +0000 (13:34 -0800)
committerBen Pfaff <blp@nicira.com>
Wed, 21 Jan 2009 00:44:14 +0000 (16:44 -0800)
lib/svec.c
lib/svec.h

index 728866b640f52175cd26b14922042e826ea1f995..7f7e75943c890f7d151ad11d7688b6e909f217e8 100644 (file)
@@ -321,3 +321,19 @@ svec_equal(const struct svec *a, const struct svec *b)
     }
     return true;
 }
+
+char *
+svec_join(const struct svec *svec, const char *delimiter)
+{
+    struct ds ds;
+    size_t i;
+
+    ds_init(&ds);
+    for (i = 0; i < svec->n; i++) {
+        if (i) {
+            ds_put_cstr(&ds, delimiter);
+        }
+        ds_put_cstr(&ds, svec->names[i]);
+    }
+    return ds_cstr(&ds);
+}
index 084d2e85f8269b4b6157402c99c6cdfb7fbf8633..68d361c4c6b24078dfa79de3f8fcf11b954ea523 100644 (file)
@@ -65,5 +65,6 @@ void svec_swap(struct svec *a, struct svec *b);
 void svec_print(const struct svec *svec, const char *title);
 void svec_parse_words(struct svec *svec, const char *words);
 bool svec_equal(const struct svec *, const struct svec *);
+char *svec_join(const struct svec *, const char *delimiter);
 
 #endif /* svec.h */