From a58f56cd71045e13fef41ac1faf61070dbf882a4 Mon Sep 17 00:00:00 2001 From: "smckay@chromium.org" Date: Mon, 27 Aug 2012 22:58:36 +0000 Subject: Add support for joining strings on strings rather than just chars. BUG= Review URL: https://chromiumcodereview.appspot.com/10828217 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153568 0039d316-1c4b-4281-b951-d872f2087c98 --- base/string_util.cc | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'base/string_util.cc') diff --git a/base/string_util.cc b/base/string_util.cc index 2eecb79..9e3422d 100644 --- a/base/string_util.cc +++ b/base/string_util.cc @@ -750,8 +750,7 @@ size_t Tokenize(const base::StringPiece& str, } template -static STR JoinStringT(const std::vector& parts, - typename STR::value_type sep) { +static STR JoinStringT(const std::vector& parts, const STR& sep) { if (parts.empty()) return STR(); @@ -768,11 +767,21 @@ static STR JoinStringT(const std::vector& parts, } std::string JoinString(const std::vector& parts, char sep) { - return JoinStringT(parts, sep); + return JoinStringT(parts, std::string(1, sep)); } string16 JoinString(const std::vector& parts, char16 sep) { - return JoinStringT(parts, sep); + return JoinStringT(parts, string16(1, sep)); +} + +std::string JoinString(const std::vector& parts, + const std::string& separator) { + return JoinStringT(parts, separator); +} + +string16 JoinString(const std::vector& parts, + const string16& separator) { + return JoinStringT(parts, separator); } template -- cgit v1.1