refactor: use new tr_variant API in rpcimpl (#6456)

* refactor: tr_rpc_request_exec_json takes a std::function callback

* refactor: tr_rpc_request_exec_json callback takes a tr_variant&&

* refactor: use new tr_variant API in rpcimpl.cc

* refactor: tr_rpc_request_exec_json() now takes a const& to the request

* fixup! refactor: use new tr_variant API in rpcimpl.cc

* chore: rename function to tr_rpc_request_exec()

* chore: remove unused DetailsDialog::Impl::build_torrent_ids_variant_list()

* refactor: minor copyediting in rpcimpl.cc getTorrents()

* refactor: split handler methods between sync, async

* refactor: remove unused args_out param from AsyncHandlers

* chore: fix new readability-inconsistent-declaration-parameter-name warning
This commit is contained in:
Charles Kerr
2024-01-02 22:14:43 -06:00
committed by GitHub
parent 10d047005a
commit 22cde5d4b9
10 changed files with 777 additions and 1056 deletions

View File

@@ -5,18 +5,14 @@
#pragma once
#include <functional>
#include <string_view>
struct tr_session;
struct tr_variant;
using tr_rpc_response_func = void (*)(tr_session* session, tr_variant* response, void* user_data);
using tr_rpc_response_func = std::function<void(tr_session* session, tr_variant&& response)>;
/* https://www.json.org/ */
void tr_rpc_request_exec_json(
tr_session* session,
tr_variant const* request,
tr_rpc_response_func callback,
void* callback_user_data);
void tr_rpc_request_exec(tr_session* session, tr_variant const& request, tr_rpc_response_func&& callback = {});
tr_variant tr_rpc_parse_list_str(std::string_view str);