[libc++][ranges] Implement the changes to `basic_string` from P1206 (`ranges::to`):
authorvarconst <varconsteq@gmail.com>
Sat, 1 Jul 2023 00:04:33 +0000 (17:04 -0700)
committervarconst <varconsteq@gmail.com>
Wed, 5 Jul 2023 21:50:59 +0000 (14:50 -0700)
commitbaf6f91851edcdd72e3a6214299f295ec58337f6
treeb8a5a4f7665bfecfee4bf6a9bb566320526866e3
parent99dcc9ff0e545e5061635a1ef24a6a9f71a0e4b6
[libc++][ranges] Implement the changes to `basic_string` from P1206 (`ranges::to`):

- add the `from_range_t` constructors and the related deduction guides;
- add the `insert_range`/`assign_range`/etc. member functions.

(Note: this patch is split from https://reviews.llvm.org/D142335)

Differential Revision: https://reviews.llvm.org/D149832
libcxx/include/string
libcxx/test/std/strings/basic.string/string.cons/from_range.pass.cpp [new file with mode: 0644]
libcxx/test/std/strings/basic.string/string.cons/from_range_deduction.pass.cpp [new file with mode: 0644]
libcxx/test/std/strings/basic.string/string.cons/iter_alloc_deduction.pass.cpp
libcxx/test/std/strings/basic.string/string.modifiers/string_append/append_range.pass.cpp [new file with mode: 0644]
libcxx/test/std/strings/basic.string/string.modifiers/string_assign/assign_range.pass.cpp [new file with mode: 0644]
libcxx/test/std/strings/basic.string/string.modifiers/string_insert/insert_range.pass.cpp [new file with mode: 0644]
libcxx/test/std/strings/basic.string/string.modifiers/string_replace/replace_with_range.pass.cpp [new file with mode: 0644]