C++20 Round 4: enum class TxnOutType, remove boost string alg, boost::int64_t -> int64_t

- txnouttype -> enum class TxnOutType (NonStandard, PubKey, PubKeyHash, ScriptHash, MultiSig)
  Updated script.h/cpp, main.cpp, wallet.cpp, rpcrawtransaction.cpp, rpcwallet.cpp, multisig_tests.cpp
- boost::int64_t/uint64_t -> int64_t/uint64_t across all RPC files (7 files, 52 replacements)
- Replace all boost string algorithm includes with std:: equivalents:
  - Added TrimString(), ToLower(), ReplaceAll(), SplitString(), JoinStrings() to util.h
  - boost::trim -> TrimString() (bootstrap.cpp, trianglesrpc.cpp, rest.cpp)
  - boost::to_lower -> ToLower() (netbase.cpp, trianglesrpc.cpp)
  - boost::split/is_any_of -> SplitString() (rpcdump.cpp, trianglesrpc.cpp, rest.cpp)
  - boost::replace_all -> ReplaceAll() (main.cpp, wallet.cpp)
  - boost::algorithm::starts_with/ends_with -> std::string::starts_with/ends_with (rpcdump.cpp, smessage.cpp)
  - boost::algorithm::istarts_with -> case-insensitive lambda (init.cpp, qtipcserver.cpp)
  - boost::algorithm::join -> JoinStrings() (util.cpp)
- boost::bind -> lambda in trianglesrpc.cpp async_accept handler
- IsHex() parameter: const string& -> string_view
This commit is contained in:
2026-05-08 22:26:31 -07:00
parent 150828b806
commit 9d80ddb6ac
19 changed files with 224 additions and 209 deletions
+5 -6
View File
@@ -7,7 +7,6 @@
#include <filesystem>
#include <fstream>
#include <boost/algorithm/string.hpp>
#include <zlib.h>
@@ -300,7 +299,7 @@ bool DownloadFile(const std::string& host, const std::string& urlPath,
location = headerData.substr(valStart, lineEnd - valStart);
else
location = headerData.substr(valStart);
boost::trim(location);
location = TrimString(location);
// Parse redirect URL — supports http://, https://, and relative paths
if (location.compare(0, 7, "http://") == 0 ||
@@ -416,7 +415,7 @@ bool FetchFileList(const std::string& host,
files.clear();
std::string line;
while (std::getline(in, line)) {
boost::trim(line);
line = TrimString(line);
if (!line.empty() && line[0] != '#')
files.push_back(line);
}
@@ -576,7 +575,7 @@ bool ParseManifest(const fs::path& manifestPath,
std::string line;
while (std::getline(in, line)) {
boost::trim(line);
line = TrimString(line);
if (line.empty() || line[0] == '#')
continue;
@@ -586,8 +585,8 @@ bool ParseManifest(const fs::path& manifestPath,
std::string key = line.substr(0, eq);
std::string val = line.substr(eq + 1);
boost::trim(key);
boost::trim(val);
key = TrimString(key);
val = TrimString(val);
if (key == "format")
manifest.format = std::atoi(val.c_str());