Skip to content

Commit 332b3dd

Browse files
committed
util: Make ToLower and ToUpper take a char
Unfortunately, `std::string` elements are (bare) chars. As these are the most likely type to be passed to these functions, make them use char instead of unsigned char. This avoids some casts.
1 parent edb5bb3 commit 332b3dd

File tree

4 files changed

+6
-6
lines changed

4 files changed

+6
-6
lines changed

src/test/util_tests.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1224,7 +1224,7 @@ BOOST_AUTO_TEST_CASE(test_ToLower)
12241224
BOOST_CHECK_EQUAL(ToLower('Z'), 'z');
12251225
BOOST_CHECK_EQUAL(ToLower('['), '[');
12261226
BOOST_CHECK_EQUAL(ToLower(0), 0);
1227-
BOOST_CHECK_EQUAL(ToLower(255), 255);
1227+
BOOST_CHECK_EQUAL(ToLower('\xff'), '\xff');
12281228

12291229
std::string testVector;
12301230
Downcase(testVector);
@@ -1246,7 +1246,7 @@ BOOST_AUTO_TEST_CASE(test_ToUpper)
12461246
BOOST_CHECK_EQUAL(ToUpper('z'), 'Z');
12471247
BOOST_CHECK_EQUAL(ToUpper('{'), '{');
12481248
BOOST_CHECK_EQUAL(ToUpper(0), 0);
1249-
BOOST_CHECK_EQUAL(ToUpper(255), 255);
1249+
BOOST_CHECK_EQUAL(ToUpper('\xff'), '\xff');
12501250
}
12511251

12521252
BOOST_AUTO_TEST_CASE(test_Capitalize)

src/uint256.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ void base_blob<BITS>::SetHex(const char* psz)
3333
psz++;
3434

3535
// skip 0x
36-
if (psz[0] == '0' && ToLower((unsigned char)psz[1]) == 'x')
36+
if (psz[0] == '0' && ToLower(psz[1]) == 'x')
3737
psz += 2;
3838

3939
// hex string to uint

src/util/strencodings.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -589,7 +589,7 @@ bool ParseHDKeypath(const std::string& keypath_str, std::vector<uint32_t>& keypa
589589

590590
void Downcase(std::string& str)
591591
{
592-
std::transform(str.begin(), str.end(), str.begin(), [](unsigned char c){return ToLower(c);});
592+
std::transform(str.begin(), str.end(), str.begin(), [](char c){return ToLower(c);});
593593
}
594594

595595
std::string Capitalize(std::string str)

src/util/strencodings.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ NODISCARD bool ParseHDKeypath(const std::string& keypath_str, std::vector<uint32
208208
* @return the lowercase equivalent of c; or the argument
209209
* if no conversion is possible.
210210
*/
211-
constexpr unsigned char ToLower(unsigned char c)
211+
constexpr char ToLower(char c)
212212
{
213213
return (c >= 'A' && c <= 'Z' ? (c - 'A') + 'a' : c);
214214
}
@@ -229,7 +229,7 @@ void Downcase(std::string& str);
229229
* @return the uppercase equivalent of c; or the argument
230230
* if no conversion is possible.
231231
*/
232-
constexpr unsigned char ToUpper(unsigned char c)
232+
constexpr char ToUpper(char c)
233233
{
234234
return (c >= 'a' && c <= 'z' ? (c - 'a') + 'A' : c);
235235
}

0 commit comments

Comments
 (0)