• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #include <string_view>
9 
10 #include "base/strings/strcat_internal.h"
11 
12 namespace base {
13 
StrCat(span<const std::string_view> pieces)14 std::string StrCat(span<const std::string_view> pieces) {
15   return internal::StrCatT(pieces);
16 }
17 
StrCat(span<const std::u16string_view> pieces)18 std::u16string StrCat(span<const std::u16string_view> pieces) {
19   return internal::StrCatT(pieces);
20 }
21 
StrCat(span<const std::string> pieces)22 std::string StrCat(span<const std::string> pieces) {
23   return internal::StrCatT(pieces);
24 }
25 
StrCat(span<const std::u16string> pieces)26 std::u16string StrCat(span<const std::u16string> pieces) {
27   return internal::StrCatT(pieces);
28 }
29 
StrAppend(std::string * dest,span<const std::string_view> pieces)30 void StrAppend(std::string* dest, span<const std::string_view> pieces) {
31   internal::StrAppendT(*dest, pieces);
32 }
33 
StrAppend(std::u16string * dest,span<const std::u16string_view> pieces)34 void StrAppend(std::u16string* dest, span<const std::u16string_view> pieces) {
35   internal::StrAppendT(*dest, pieces);
36 }
37 
StrAppend(std::string * dest,span<const std::string> pieces)38 void StrAppend(std::string* dest, span<const std::string> pieces) {
39   internal::StrAppendT(*dest, pieces);
40 }
41 
StrAppend(std::u16string * dest,span<const std::u16string> pieces)42 void StrAppend(std::u16string* dest, span<const std::u16string> pieces) {
43   internal::StrAppendT(*dest, pieces);
44 }
45 
46 }  // namespace base
47