aboutsummaryrefslogtreecommitdiff
path: root/src/rpc/server.cpp
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2021-01-12 06:28:13 +0100
committerMarcoFalke <falke.marco@gmail.com>2021-01-28 08:16:34 +0100
commitfa92912b4bb4629addcbfdfb7cc000be701614af (patch)
tree2e8b64d487f766ec44d057f8f5e8aee6b2354217 /src/rpc/server.cpp
parentfaf835680be39811827504f77005b6603165f53e (diff)
downloadbitcoin-fa92912b4bb4629addcbfdfb7cc000be701614af.tar.xz
rpc: Use RPCHelpMan for check-rpc-mappings linter
Diffstat (limited to 'src/rpc/server.cpp')
-rw-r--r--src/rpc/server.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/rpc/server.cpp b/src/rpc/server.cpp
index f32d9abac6..e8abc020da 100644
--- a/src/rpc/server.cpp
+++ b/src/rpc/server.cpp
@@ -144,8 +144,13 @@ static RPCHelpMan help()
[&](const RPCHelpMan& self, const JSONRPCRequest& jsonRequest) -> UniValue
{
std::string strCommand;
- if (jsonRequest.params.size() > 0)
+ if (jsonRequest.params.size() > 0) {
strCommand = jsonRequest.params[0].get_str();
+ }
+ if (strCommand == "dump_all_command_conversions") {
+ // Used for testing only, undocumented
+ return tableRPC.dumpArgMap();
+ }
return tableRPC.help(strCommand, jsonRequest);
},
@@ -479,6 +484,18 @@ std::vector<std::string> CRPCTable::listCommands() const
return commandList;
}
+UniValue CRPCTable::dumpArgMap() const
+{
+ UniValue ret{UniValue::VARR};
+ for (const auto& cmd : mapCommands) {
+ for (const auto& c : cmd.second) {
+ const auto help = RpcMethodFnType(c->unique_id)();
+ help.AppendArgMap(ret);
+ }
+ }
+ return ret;
+}
+
void RPCSetTimerInterfaceIfUnset(RPCTimerInterface *iface)
{
if (!timerInterface)