mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 03:22:47 +01:00
(partial) Merge bitcoin/bitcoin#24339: rpc: Improve RPC help by explicitly mentioning output types
c821ab8be8dffb749853c05e05cb515c11e6328a Use `GetAllOutputTypes` in `getblock` RPC function (Kiminuo)
d970a85d335202cc85f6604f794c43af6645673f Move `GetAllOutputTypes` function from `rpc/rawtransaction.cpp` to `rpc/util.{h|cpp}` (Kiminuo)
Pull request description:
This PR attempts to replicate 0ccf9b2e55/src/rpc/rawtransaction.cpp (L547)
to one other place (at the moment) so that users have better idea what RPC methods can actually return.
I created this PR as a follow-up to the idea mentioned here https://github.com/bitcoin/bitcoin/pull/23320#discussion_r732458112 (resolved).
ACKs for top commit:
kristapsk:
re-ACK c821ab8be8dffb749853c05e05cb515c11e6328a
Tree-SHA512: 5ff66a41ad7c43ec769f4a99933d2d070feea7c617286d94b6f9bfa1a2547a42211915778210a89074ad4b14d99f34852cc6871efed5e6f1e2ffedd40d669386
This commit is contained in:
parent
237279950b
commit
d891d3c95c
@ -867,16 +867,6 @@ static RPCHelpMan decoderawtransaction()
|
||||
};
|
||||
}
|
||||
|
||||
static std::string GetAllOutputTypes()
|
||||
{
|
||||
std::vector<std::string> ret;
|
||||
using U = std::underlying_type<TxoutType>::type;
|
||||
for (U i = (U)TxoutType::NONSTANDARD; i <= (U)TxoutType::NULL_DATA; ++i) {
|
||||
ret.emplace_back(GetTxnOutputType(static_cast<TxoutType>(i)));
|
||||
}
|
||||
return Join(ret, ", ");
|
||||
}
|
||||
|
||||
static RPCHelpMan decodescript()
|
||||
{
|
||||
return RPCHelpMan{"decodescript",
|
||||
|
@ -18,6 +18,16 @@
|
||||
const std::string UNIX_EPOCH_TIME = "UNIX epoch time";
|
||||
const std::string EXAMPLE_ADDRESS[2] = {"XunLY9Tf7Zsef8gMGL2fhWA9ZmMjt4KPw0", "XwQQkwA4FYkq2XERzMY2CiAZhJTEDAbtc0"};
|
||||
|
||||
std::string GetAllOutputTypes()
|
||||
{
|
||||
std::vector<std::string> ret;
|
||||
using U = std::underlying_type<TxoutType>::type;
|
||||
for (U i = (U)TxoutType::NONSTANDARD; i <= (U)TxoutType::NULL_DATA; ++i) {
|
||||
ret.emplace_back(GetTxnOutputType(static_cast<TxoutType>(i)));
|
||||
}
|
||||
return Join(ret, ", ");
|
||||
}
|
||||
|
||||
void RPCTypeCheck(const UniValue& params,
|
||||
const std::list<UniValueType>& typesExpected,
|
||||
bool fAllowNull)
|
||||
|
@ -41,6 +41,13 @@ class CPubKey;
|
||||
class CScript;
|
||||
struct Sections;
|
||||
|
||||
/**
|
||||
* Gets all existing output types formatted for RPC help sections.
|
||||
*
|
||||
* @return Comma separated string representing output type names.
|
||||
*/
|
||||
std::string GetAllOutputTypes();
|
||||
|
||||
/** Wrapper for UniValue::VType, which includes typeAny:
|
||||
* Used to denote don't care type. */
|
||||
struct UniValueType {
|
||||
|
Loading…
Reference in New Issue
Block a user