@@ -65,8 +65,7 @@ pqxx::internal::encoding_group enc_group(std::string_view encoding_name)
6565 return pqxx::internal::encoding_group::BIG5;
6666 [[unlikely]] break ;
6767 case ' E' :
68- // C++20: Use string_view::starts_with().
69- if ((sz >= 6u ) and (encoding_name.substr (0 , 4 ) == " EUC_" sv))
68+ if (encoding_name.starts_with (" EUC_" sv))
7069 {
7170 auto const subtype{encoding_name.substr (4 )};
7271 static constexpr std::array<mapping, 5 > subtypes{
@@ -90,8 +89,7 @@ pqxx::internal::encoding_group enc_group(std::string_view encoding_name)
9089 [[unlikely]] break ;
9190 case ' I' :
9291 // We know iso-8859-X, where 5 <= X < 9. They're all monobyte encodings.
93- // C++20: Use string_view::starts_with().
94- if ((sz == 10 ) and (encoding_name.substr (0 , 9 ) == " ISO_8859_" sv))
92+ if (encoding_name.starts_with (" ISO_8859_" sv))
9593 {
9694 char const subtype{encoding_name[9 ]};
9795 if ((' 5' <= subtype) and (subtype < ' 9' ))
@@ -108,8 +106,7 @@ pqxx::internal::encoding_group enc_group(std::string_view encoding_name)
108106 [[unlikely]] break ;
109107 case ' L' :
110108 // We know LATIN1 through LATIN10.
111- // C++20: Use string_view::starts_with().
112- if (encoding_name.substr (0 , 5 ) == " LATIN" sv)
109+ if (encoding_name.starts_with (" LATIN" sv))
113110 {
114111 auto const subtype{encoding_name.substr (5 )};
115112 if (subtype.size () == 1 )
@@ -140,7 +137,7 @@ pqxx::internal::encoding_group enc_group(std::string_view encoding_name)
140137 if (encoding_name == " UHC" sv)
141138 return pqxx::internal::encoding_group::UHC;
142139 else if (encoding_name == " UTF8" sv)
143- return pqxx::internal::encoding_group::UTF8;
140+ [[likely]] return pqxx::internal::encoding_group::UTF8;
144141 [[unlikely]] break ;
145142 case ' W' :
146143 if (encoding_name.substr (0 , 3 ) == " WIN" sv)
0 commit comments