refactor: remove tr_quark_get_string() (#3728)

This commit is contained in:
Charles Kerr 2022-08-28 16:17:07 -05:00 committed by GitHub
parent 4f3f0ccbeb
commit 072bb0322c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 20 additions and 43 deletions

View File

@ -1168,7 +1168,9 @@ void Application::Impl::on_prefs_changed(tr_quark const key)
{
bool const b = gtr_pref_flag_get(key);
tr_sessionUseAltSpeed(tr, b);
gtr_action_set_toggled(tr_quark_get_string(key), b);
auto const key_sv = tr_quark_get_string_view(key);
auto const key_ustr = Glib::ustring{ std::data(key_sv), std::size(key_sv) };
gtr_action_set_toggled(key_ustr, b);
break;
}

View File

@ -50,14 +50,14 @@ public:
{
return quark_;
}
[[nodiscard]] char const* c_str() const
{
return tr_quark_get_string(quark_);
}
[[nodiscard]] std::string_view sv() const
{
return tr_quark_get_string_view(quark_);
}
[[nodiscard]] char const* c_str() const
{
return std::data(sv()); // tr_quark strs are always zero-terminated
}
[[nodiscard]] auto data() const
{

View File

@ -481,15 +481,3 @@ std::string_view tr_quark_get_string_view(tr_quark q)
{
return q < TR_N_KEYS ? my_static[q] : my_runtime[q - TR_N_KEYS];
}
char const* tr_quark_get_string(tr_quark q, size_t* len)
{
auto const tmp = tr_quark_get_string_view(q);
if (len != nullptr)
{
*len = std::size(tmp);
}
return std::data(tmp);
}

View File

@ -430,11 +430,6 @@ enum
*/
[[nodiscard]] std::optional<tr_quark> tr_quark_lookup(std::string_view key);
/**
* Get the string that corresponds to the specified quark
*/
[[nodiscard]] char const* tr_quark_get_string(tr_quark quark, size_t* len = nullptr);
/**
* Get the string view that corresponds to the specified quark.
*

View File

@ -618,7 +618,7 @@ static bool bindUnixSocket(
#ifdef _WIN32
tr_logAddError(fmt::format(
_("Unix sockets are unsupported on Windows. Please change '{key}' in your settings."),
fmt::arg("key", tr_quark_get_string(TR_KEY_rpc_bind_address))));
fmt::arg("key", tr_quark_get_string_view(TR_KEY_rpc_bind_address))));
return false;
#else
struct sockaddr_un addr;
@ -883,7 +883,7 @@ void tr_rpc_server::setAntiBruteForceEnabled(bool enabled) noexcept
static void missing_settings_key(tr_quark const q)
{
tr_logAddDebug(fmt::format("Couldn't find settings key '{}'", tr_quark_get_string(q)));
tr_logAddDebug(fmt::format("Couldn't find settings key '{}'", tr_quark_get_string_view(q)));
}
tr_rpc_server::tr_rpc_server(tr_session* session_in, tr_variant* settings)
@ -1066,7 +1066,7 @@ tr_rpc_server::tr_rpc_server(tr_session* session_in, tr_variant* settings)
{
tr_logAddWarn(fmt::format(
_("The '{key}' setting is '{value}' but must be an IPv4 or IPv6 address or a Unix socket path. Using default value '0.0.0.0'"),
fmt::format("key", tr_quark_get_string(key)),
fmt::format("key", tr_quark_get_string_view(key)),
fmt::format("value", sv)));
bindAddress->set_inaddr_any();
}

View File

@ -2348,8 +2348,7 @@ static char const* sessionGet(tr_session* s, tr_variant* args_in, tr_variant* ar
continue;
}
auto const field_id = tr_quark_lookup(field_name);
if (field_id)
if (auto const field_id = tr_quark_lookup(field_name); field_id)
{
addSessionField(s, args_out, *field_id);
}

View File

@ -91,7 +91,9 @@ static void tr_variant_string_set_quark(struct tr_variant_string* str, tr_quark
tr_variant_string_clear(str);
str->type = TR_STRING_TYPE_QUARK;
str->str.str = tr_quark_get_string(quark, &str->len);
auto const sv = tr_quark_get_string_view(quark);
str->str.str = std::data(sv);
str->len = std::size(sv);
}
static void tr_variant_string_set_string_view(struct tr_variant_string* str, std::string_view in)
@ -725,7 +727,7 @@ protected:
sortbuf.resize(n);
for (size_t i = 0; i < n; ++i)
{
sortbuf[i] = { tr_quark_get_string(children[i].key), i };
sortbuf[i] = { tr_quark_get_string_view(children[i].key), i };
}
std::sort(std::begin(sortbuf), std::end(sortbuf), [](ByKey const& a, ByKey const& b) { return a.key < b.key; });
@ -1079,7 +1081,7 @@ void tr_variantMergeDicts(tr_variant* target, tr_variant const* source)
}
else
{
tr_logAddDebug(fmt::format("tr_variantMergeDicts skipping '{}'", tr_quark_get_string(key)));
tr_logAddDebug(fmt::format("tr_variantMergeDicts skipping '{}'", tr_quark_get_string_view(key)));
}
}
}

View File

@ -95,9 +95,7 @@ QUrl const& RpcClient::url() const
RpcResponseFuture RpcClient::exec(tr_quark method, tr_variant* args)
{
auto len = size_t{};
auto const* str = tr_quark_get_string(method, &len);
return exec(std::string_view(str, len), args);
return exec(tr_quark_get_string_view(method), args);
}
RpcResponseFuture RpcClient::exec(std::string_view method, tr_variant* args)

View File

@ -603,9 +603,7 @@ std::vector<std::string_view> const& Session::getKeyNames(TorrentProperties prop
auto const append = [&names](tr_quark key)
{
size_t len = {};
char const* str = tr_quark_get_string(key, &len);
names.emplace_back(str, len);
names.emplace_back(tr_quark_get_string_view(key));
};
switch (props)

View File

@ -18,10 +18,7 @@ protected:
template<typename T>
std::string quarkGetString(T i)
{
size_t len;
char const* const str = tr_quark_get_string(tr_quark(i), &len);
EXPECT_EQ(strlen(str), len);
return std::string(str, len);
return std::string{ tr_quark_get_string_view(tr_quark(i)) };
}
};
@ -40,7 +37,5 @@ TEST_F(QuarkTest, newQuarkByStringView)
{
auto constexpr UniqueString = std::string_view{ "this string is not a predefined quark" };
auto const q = tr_quark_new(UniqueString);
auto len = size_t{};
EXPECT_EQ(UniqueString, tr_quark_get_string(q, &len));
EXPECT_EQ(std::size(UniqueString), len);
EXPECT_EQ(UniqueString, tr_quark_get_string_view(q));
}