1 // Copyright 2017 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/strings/strcat.h"
6
7 #include <string>
8
9 #include "base/strings/strcat_internal.h"
10
11 namespace base {
12
StrCat(span<const StringPiece> pieces)13 std::string StrCat(span<const StringPiece> pieces) {
14 return internal::StrCatT(pieces);
15 }
16
StrCat(span<const StringPiece16> pieces)17 std::u16string StrCat(span<const StringPiece16> pieces) {
18 return internal::StrCatT(pieces);
19 }
20
StrCat(span<const std::string> pieces)21 std::string StrCat(span<const std::string> pieces) {
22 return internal::StrCatT(pieces);
23 }
24
StrCat(span<const std::u16string> pieces)25 std::u16string StrCat(span<const std::u16string> pieces) {
26 return internal::StrCatT(pieces);
27 }
28
StrAppend(std::string * dest,span<const StringPiece> pieces)29 void StrAppend(std::string* dest, span<const StringPiece> pieces) {
30 internal::StrAppendT(*dest, pieces);
31 }
32
StrAppend(std::u16string * dest,span<const StringPiece16> pieces)33 void StrAppend(std::u16string* dest, span<const StringPiece16> pieces) {
34 internal::StrAppendT(*dest, pieces);
35 }
36
StrAppend(std::string * dest,span<const std::string> pieces)37 void StrAppend(std::string* dest, span<const std::string> pieces) {
38 internal::StrAppendT(*dest, pieces);
39 }
40
StrAppend(std::u16string * dest,span<const std::u16string> pieces)41 void StrAppend(std::u16string* dest, span<const std::u16string> pieces) {
42 internal::StrAppendT(*dest, pieces);
43 }
44
45 } // namespace base
46