Skip to content

Commit 532b134

Browse files
author
MarcoFalke
committed
Merge #19373: refactor: Replace HexStr(o.begin(), o.end()) with HexStr(o)
bd93e32 refactor: Replace HexStr(o.begin(), o.end()) with HexStr(o) (Wladimir J. van der Laan) Pull request description: HexStr can be called with anything that bas `begin()` and `end()` functions, so clean up the redundant calls. (context: I tried to convert `HexStr` to use span, but this turns out to be somewhat more involved than I thought, because of the limitation to pre-c++17 Span lacking iterator-based constructor) . This commit is a first step which stands on its own though) ACKs for top commit: jonatack: ACK bd93e32 troygiorshev: ACK bd93e32 MarcoFalke: review ACK bd93e32 🔌 Tree-SHA512: 7e4c9d0259b8d23271d233095f1c51db1ee021e865361d74c05c10dd5129aa6d34a243323e2b4596d648e2d7b25c7ebdee37a3e4f99a27883cb4c3cd26432b08
2 parents 205b87d + bd93e32 commit 532b134

18 files changed

+43
-43
lines changed

src/core_write.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -131,13 +131,13 @@ std::string EncodeHexTx(const CTransaction& tx, const int serializeFlags)
131131
{
132132
CDataStream ssTx(SER_NETWORK, PROTOCOL_VERSION | serializeFlags);
133133
ssTx << tx;
134-
return HexStr(ssTx.begin(), ssTx.end());
134+
return HexStr(ssTx);
135135
}
136136

137137
void ScriptToUniv(const CScript& script, UniValue& out, bool include_address)
138138
{
139139
out.pushKV("asm", ScriptToAsmStr(script));
140-
out.pushKV("hex", HexStr(script.begin(), script.end()));
140+
out.pushKV("hex", HexStr(script));
141141

142142
std::vector<std::vector<unsigned char>> solns;
143143
txnouttype type = Solver(script, solns);
@@ -158,7 +158,7 @@ void ScriptPubKeyToUniv(const CScript& scriptPubKey,
158158

159159
out.pushKV("asm", ScriptToAsmStr(scriptPubKey));
160160
if (fIncludeHex)
161-
out.pushKV("hex", HexStr(scriptPubKey.begin(), scriptPubKey.end()));
161+
out.pushKV("hex", HexStr(scriptPubKey));
162162

163163
if (!ExtractDestinations(scriptPubKey, type, addresses, nRequired) || type == TX_PUBKEY) {
164164
out.pushKV("type", GetTxnOutputType(type));
@@ -190,19 +190,19 @@ void TxToUniv(const CTransaction& tx, const uint256& hashBlock, UniValue& entry,
190190
const CTxIn& txin = tx.vin[i];
191191
UniValue in(UniValue::VOBJ);
192192
if (tx.IsCoinBase())
193-
in.pushKV("coinbase", HexStr(txin.scriptSig.begin(), txin.scriptSig.end()));
193+
in.pushKV("coinbase", HexStr(txin.scriptSig));
194194
else {
195195
in.pushKV("txid", txin.prevout.hash.GetHex());
196196
in.pushKV("vout", (int64_t)txin.prevout.n);
197197
UniValue o(UniValue::VOBJ);
198198
o.pushKV("asm", ScriptToAsmStr(txin.scriptSig, true));
199-
o.pushKV("hex", HexStr(txin.scriptSig.begin(), txin.scriptSig.end()));
199+
o.pushKV("hex", HexStr(txin.scriptSig));
200200
in.pushKV("scriptSig", o);
201201
}
202202
if (!tx.vin[i].scriptWitness.IsNull()) {
203203
UniValue txinwitness(UniValue::VARR);
204204
for (const auto& item : tx.vin[i].scriptWitness.stack) {
205-
txinwitness.push_back(HexStr(item.begin(), item.end()));
205+
txinwitness.push_back(HexStr(item));
206206
}
207207
in.pushKV("txinwitness", txinwitness);
208208
}

src/rest.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ static bool rest_headers(const util::Ref& context,
188188
ssHeader << pindex->GetBlockHeader();
189189
}
190190

191-
std::string strHex = HexStr(ssHeader.begin(), ssHeader.end()) + "\n";
191+
std::string strHex = HexStr(ssHeader) + "\n";
192192
req->WriteHeader("Content-Type", "text/plain");
193193
req->WriteReply(HTTP_OK, strHex);
194194
return true;
@@ -253,7 +253,7 @@ static bool rest_block(HTTPRequest* req,
253253
case RetFormat::HEX: {
254254
CDataStream ssBlock(SER_NETWORK, PROTOCOL_VERSION | RPCSerializationFlags());
255255
ssBlock << block;
256-
std::string strHex = HexStr(ssBlock.begin(), ssBlock.end()) + "\n";
256+
std::string strHex = HexStr(ssBlock) + "\n";
257257
req->WriteHeader("Content-Type", "text/plain");
258258
req->WriteReply(HTTP_OK, strHex);
259259
return true;
@@ -391,7 +391,7 @@ static bool rest_tx(const util::Ref& context, HTTPRequest* req, const std::strin
391391
CDataStream ssTx(SER_NETWORK, PROTOCOL_VERSION | RPCSerializationFlags());
392392
ssTx << tx;
393393

394-
std::string strHex = HexStr(ssTx.begin(), ssTx.end()) + "\n";
394+
std::string strHex = HexStr(ssTx) + "\n";
395395
req->WriteHeader("Content-Type", "text/plain");
396396
req->WriteReply(HTTP_OK, strHex);
397397
return true;
@@ -556,7 +556,7 @@ static bool rest_getutxos(const util::Ref& context, HTTPRequest* req, const std:
556556
case RetFormat::HEX: {
557557
CDataStream ssGetUTXOResponse(SER_NETWORK, PROTOCOL_VERSION);
558558
ssGetUTXOResponse << ::ChainActive().Height() << ::ChainActive().Tip()->GetBlockHash() << bitmap << outs;
559-
std::string strHex = HexStr(ssGetUTXOResponse.begin(), ssGetUTXOResponse.end()) + "\n";
559+
std::string strHex = HexStr(ssGetUTXOResponse) + "\n";
560560

561561
req->WriteHeader("Content-Type", "text/plain");
562562
req->WriteReply(HTTP_OK, strHex);

src/rpc/blockchain.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -779,7 +779,7 @@ static UniValue getblockheader(const JSONRPCRequest& request)
779779
{
780780
CDataStream ssBlock(SER_NETWORK, PROTOCOL_VERSION);
781781
ssBlock << pblockindex->GetBlockHeader();
782-
std::string strHex = HexStr(ssBlock.begin(), ssBlock.end());
782+
std::string strHex = HexStr(ssBlock);
783783
return strHex;
784784
}
785785

@@ -905,7 +905,7 @@ static UniValue getblock(const JSONRPCRequest& request)
905905
{
906906
CDataStream ssBlock(SER_NETWORK, PROTOCOL_VERSION | RPCSerializationFlags());
907907
ssBlock << block;
908-
std::string strHex = HexStr(ssBlock.begin(), ssBlock.end());
908+
std::string strHex = HexStr(ssBlock);
909909
return strHex;
910910
}
911911

@@ -2159,7 +2159,7 @@ UniValue scantxoutset(const JSONRPCRequest& request)
21592159
UniValue unspent(UniValue::VOBJ);
21602160
unspent.pushKV("txid", outpoint.hash.GetHex());
21612161
unspent.pushKV("vout", (int32_t)outpoint.n);
2162-
unspent.pushKV("scriptPubKey", HexStr(txo.scriptPubKey.begin(), txo.scriptPubKey.end()));
2162+
unspent.pushKV("scriptPubKey", HexStr(txo.scriptPubKey));
21632163
unspent.pushKV("desc", descriptors[txo.scriptPubKey]);
21642164
unspent.pushKV("amount", ValueFromAmount(txo.nValue));
21652165
unspent.pushKV("height", (int32_t)coin.nHeight);

src/rpc/mining.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -873,7 +873,7 @@ static UniValue getblocktemplate(const JSONRPCRequest& request)
873873
result.pushKV("height", (int64_t)(pindexPrev->nHeight+1));
874874

875875
if (!pblocktemplate->vchCoinbaseCommitment.empty()) {
876-
result.pushKV("default_witness_commitment", HexStr(pblocktemplate->vchCoinbaseCommitment.begin(), pblocktemplate->vchCoinbaseCommitment.end()));
876+
result.pushKV("default_witness_commitment", HexStr(pblocktemplate->vchCoinbaseCommitment));
877877
}
878878

879879
return result;

src/rpc/misc.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ static UniValue validateaddress(const JSONRPCRequest& request)
6363
ret.pushKV("address", currentAddress);
6464

6565
CScript scriptPubKey = GetScriptForDestination(dest);
66-
ret.pushKV("scriptPubKey", HexStr(scriptPubKey.begin(), scriptPubKey.end()));
66+
ret.pushKV("scriptPubKey", HexStr(scriptPubKey));
6767

6868
UniValue detail = DescribeAddress(dest);
6969
ret.pushKVs(detail);
@@ -131,7 +131,7 @@ static UniValue createmultisig(const JSONRPCRequest& request)
131131

132132
UniValue result(UniValue::VOBJ);
133133
result.pushKV("address", EncodeDestination(dest));
134-
result.pushKV("redeemScript", HexStr(inner.begin(), inner.end()));
134+
result.pushKV("redeemScript", HexStr(inner));
135135
result.pushKV("descriptor", descriptor->ToString());
136136

137137
return result;

src/rpc/rawtransaction.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ static UniValue gettxoutproof(const JSONRPCRequest& request)
305305
CDataStream ssMB(SER_NETWORK, PROTOCOL_VERSION | SERIALIZE_TRANSACTION_NO_WITNESS);
306306
CMerkleBlock mb(block, setTxids);
307307
ssMB << mb;
308-
std::string strHex = HexStr(ssMB.begin(), ssMB.end());
308+
std::string strHex = HexStr(ssMB);
309309
return strHex;
310310
}
311311

@@ -1186,7 +1186,7 @@ UniValue decodepsbt(const JSONRPCRequest& request)
11861186
if (!input.final_script_witness.IsNull()) {
11871187
UniValue txinwitness(UniValue::VARR);
11881188
for (const auto& item : input.final_script_witness.stack) {
1189-
txinwitness.push_back(HexStr(item.begin(), item.end()));
1189+
txinwitness.push_back(HexStr(item));
11901190
}
11911191
in.pushKV("final_scriptwitness", txinwitness);
11921192
}

src/rpc/rawtransaction_util.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,10 +138,10 @@ static void TxInErrorToJSON(const CTxIn& txin, UniValue& vErrorsRet, const std::
138138
entry.pushKV("vout", (uint64_t)txin.prevout.n);
139139
UniValue witness(UniValue::VARR);
140140
for (unsigned int i = 0; i < txin.scriptWitness.stack.size(); i++) {
141-
witness.push_back(HexStr(txin.scriptWitness.stack[i].begin(), txin.scriptWitness.stack[i].end()));
141+
witness.push_back(HexStr(txin.scriptWitness.stack[i]));
142142
}
143143
entry.pushKV("witness", witness);
144-
entry.pushKV("scriptSig", HexStr(txin.scriptSig.begin(), txin.scriptSig.end()));
144+
entry.pushKV("scriptSig", HexStr(txin.scriptSig));
145145
entry.pushKV("sequence", (uint64_t)txin.nSequence);
146146
entry.pushKV("error", strMessage);
147147
vErrorsRet.push_back(entry);

src/rpc/util.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ class DescribeAddressVisitor : public boost::static_visitor<UniValue>
224224
obj.pushKV("isscript", false);
225225
obj.pushKV("iswitness", true);
226226
obj.pushKV("witness_version", 0);
227-
obj.pushKV("witness_program", HexStr(id.begin(), id.end()));
227+
obj.pushKV("witness_program", HexStr(id));
228228
return obj;
229229
}
230230

@@ -234,7 +234,7 @@ class DescribeAddressVisitor : public boost::static_visitor<UniValue>
234234
obj.pushKV("isscript", true);
235235
obj.pushKV("iswitness", true);
236236
obj.pushKV("witness_version", 0);
237-
obj.pushKV("witness_program", HexStr(id.begin(), id.end()));
237+
obj.pushKV("witness_program", HexStr(id));
238238
return obj;
239239
}
240240

src/script/descriptor.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ class ConstPubkeyProvider final : public PubkeyProvider
235235
}
236236
bool IsRange() const override { return false; }
237237
size_t GetSize() const override { return m_pubkey.size(); }
238-
std::string ToString() const override { return HexStr(m_pubkey.begin(), m_pubkey.end()); }
238+
std::string ToString() const override { return HexStr(m_pubkey); }
239239
bool ToPrivateString(const SigningProvider& arg, std::string& ret) const override
240240
{
241241
CKey key;
@@ -583,7 +583,7 @@ class RawDescriptor final : public DescriptorImpl
583583
{
584584
const CScript m_script;
585585
protected:
586-
std::string ToStringExtra() const override { return HexStr(m_script.begin(), m_script.end()); }
586+
std::string ToStringExtra() const override { return HexStr(m_script); }
587587
std::vector<CScript> MakeScripts(const std::vector<CPubKey>&, const CScript*, FlatSigningProvider&) const override { return Vector(m_script); }
588588
public:
589589
RawDescriptor(CScript script) : DescriptorImpl({}, {}, "raw"), m_script(std::move(script)) {}

src/test/coins_tests.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -538,7 +538,7 @@ BOOST_AUTO_TEST_CASE(ccoins_serialization)
538538
CDataStream tmp(SER_DISK, CLIENT_VERSION);
539539
uint64_t x = 3000000000ULL;
540540
tmp << VARINT(x);
541-
BOOST_CHECK_EQUAL(HexStr(tmp.begin(), tmp.end()), "8a95c0bb00");
541+
BOOST_CHECK_EQUAL(HexStr(tmp), "8a95c0bb00");
542542
CDataStream ss5(ParseHex("00008a95c0bb00"), SER_DISK, CLIENT_VERSION);
543543
try {
544544
Coin cc5;

0 commit comments

Comments
 (0)