diff options
author | Werner Henze <34543625+beinhaerter@users.noreply.github.com> | 2021-10-27 02:50:58 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-27 02:50:58 +0300 |
commit | da80ce15d87463cd9dd507b004d3d4e92c8e84f0 (patch) | |
tree | 9dd8c21a02ed6f839c75a4bf921bfc5da33a8201 | |
parent | f09b24970dfed112c57c3d21cf3b90273c9f7ff2 (diff) |
make zstring family don't require empty angle brackets any more (#998)
Co-authored-by: Werner Henze <werner.henze+gitcommits@posteo.de>
-rw-r--r-- | README.md | 16 | ||||
-rw-r--r-- | include/gsl/string_span | 24 | ||||
-rw-r--r-- | tests/string_span_tests.cpp | 8 |
3 files changed, 20 insertions, 28 deletions
@@ -30,14 +30,14 @@ not_null | ☑ | restricts a pointer / smart po span | ☑ | a view over a contiguous sequence of memory. Based on the standardized verison of `std::span`, however `gsl::span` enforces bounds checking. See the [wiki](https://github.com/microsoft/GSL/wiki/gsl::span-and-std::span) for additional information. span_p | ☐ | spans a range starting from a pointer to the first place for which the predicate is true basic_zstring | ☑ | A pointer to a C-string (zero-terminated array) with a templated char type -zstring | ☑ | An alias to `basic_zstring` with a char type of char -czstring | ☑ | An alias to `basic_zstring` with a char type of const char -wzstring | ☑ | An alias to `basic_zstring` with a char type of wchar_t -cwzstring | ☑ | An alias to `basic_zstring` with a char type of const wchar_t -u16zstring | ☑ | An alias to `basic_zstring` with a char type of char16_t -cu16zstring | ☑ | An alias to `basic_zstring` with a char type of const char16_t -u32zstring | ☑ | An alias to `basic_zstring` with a char type of char32_t -cu32zstring | ☑ | An alias to `basic_zstring` with a char type of const char32_t +zstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of char +czstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of const char +wzstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of wchar_t +cwzstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of const wchar_t +u16zstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of char16_t +cu16zstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of const char16_t +u32zstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of char32_t +cu32zstring | ☑ | An alias to `basic_zstring` with dynamic extent and a char type of const char32_t [**2. Owners**][cg-owners] | | unique_ptr | ☑ | an alias to `std::unique_ptr` shared_ptr | ☑ | an alias to `std::shared_ptr` diff --git a/include/gsl/string_span b/include/gsl/string_span index a76236d..bcc672a 100644 --- a/include/gsl/string_span +++ b/include/gsl/string_span @@ -59,29 +59,21 @@ namespace gsl template <typename CharT, std::size_t Extent = dynamic_extent>
using basic_zstring = CharT*;
-template <std::size_t Extent = dynamic_extent>
-using czstring = basic_zstring<const char, Extent>;
+using czstring = basic_zstring<const char, dynamic_extent>;
-template <std::size_t Extent = dynamic_extent>
-using cwzstring = basic_zstring<const wchar_t, Extent>;
+using cwzstring = basic_zstring<const wchar_t, dynamic_extent>;
-template <std::size_t Extent = dynamic_extent>
-using cu16zstring = basic_zstring<const char16_t, Extent>;
+using cu16zstring = basic_zstring<const char16_t, dynamic_extent>;
-template <std::size_t Extent = dynamic_extent>
-using cu32zstring = basic_zstring<const char32_t, Extent>;
+using cu32zstring = basic_zstring<const char32_t, dynamic_extent>;
-template <std::size_t Extent = dynamic_extent>
-using zstring = basic_zstring<char, Extent>;
+using zstring = basic_zstring<char, dynamic_extent>;
-template <std::size_t Extent = dynamic_extent>
-using wzstring = basic_zstring<wchar_t, Extent>;
+using wzstring = basic_zstring<wchar_t, dynamic_extent>;
-template <std::size_t Extent = dynamic_extent>
-using u16zstring = basic_zstring<char16_t, Extent>;
+using u16zstring = basic_zstring<char16_t, dynamic_extent>;
-template <std::size_t Extent = dynamic_extent>
-using u32zstring = basic_zstring<char32_t, Extent>;
+using u32zstring = basic_zstring<char32_t, dynamic_extent>;
namespace details
{
diff --git a/tests/string_span_tests.cpp b/tests/string_span_tests.cpp index 8cc45c6..ed42b38 100644 --- a/tests/string_span_tests.cpp +++ b/tests/string_span_tests.cpp @@ -985,7 +985,7 @@ TEST(string_span_tests, zstring) auto name = CreateTempName({buf, 10}); if (!name.empty()) { - czstring<> str = name.assume_z(); + czstring str = name.assume_z(); EXPECT_TRUE(generic::strlen(str) == 3); EXPECT_TRUE(*(str + 3) == '\0'); } @@ -1028,7 +1028,7 @@ TEST(string_span_tests, wzstring) const auto name = CreateTempNameW({buf, 10}); if (!name.empty()) { - cwzstring<> str = name.assume_z(); + cwzstring str = name.assume_z(); EXPECT_TRUE(generic::strnlen(str, 10) == 3); EXPECT_TRUE(*(str + 3) == L'\0'); } @@ -1071,7 +1071,7 @@ TEST(string_span_tests, u16zstring) const auto name = CreateTempNameU16({buf, 10}); if (!name.empty()) { - cu16zstring<> str = name.assume_z(); + cu16zstring str = name.assume_z(); EXPECT_TRUE(generic::strnlen(str, 10) == 3); EXPECT_TRUE(*(str + 3) == L'\0'); } @@ -1114,7 +1114,7 @@ TEST(string_span_tests, u32zstring) const auto name = CreateTempNameU32({buf, 10}); if (!name.empty()) { - cu32zstring<> str = name.assume_z(); + cu32zstring str = name.assume_z(); EXPECT_TRUE(generic::strnlen(str, 10) == 3); EXPECT_TRUE(*(str + 3) == L'\0'); } |