mirror of
https://github.com/Expand-sys/CCash
synced 2025-12-17 08:32:13 +11:00
🐎 Max size 0 optimizations
This commit is contained in:
parent
95bf549427
commit
dc74da6072
1 changed files with 26 additions and 13 deletions
|
|
@ -103,16 +103,19 @@ public:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (state)
|
if constexpr (max_log_size)
|
||||||
{
|
{
|
||||||
Transaction temp(a_name, b_name, amount);
|
if (state)
|
||||||
Transaction temp2 = temp;
|
{
|
||||||
users.modify_if(a_name, [&temp](User &a) {
|
Transaction temp(a_name, b_name, amount);
|
||||||
a.log.AddTrans(std::move(temp));
|
Transaction temp2 = temp;
|
||||||
});
|
users.modify_if(a_name, [&temp](User &a) {
|
||||||
users.modify_if(b_name, [&temp2](User &b) {
|
a.log.AddTrans(std::move(temp));
|
||||||
b.log.AddTrans(std::move(temp2));
|
});
|
||||||
});
|
users.modify_if(b_name, [&temp2](User &b) {
|
||||||
|
b.log.AddTrans(std::move(temp2));
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return state;
|
return state;
|
||||||
|
|
@ -169,7 +172,9 @@ public:
|
||||||
Json::Value GetLogs(const std::string &name, const std::string &attempt)
|
Json::Value GetLogs(const std::string &name, const std::string &attempt)
|
||||||
{
|
{
|
||||||
Json::Value res;
|
Json::Value res;
|
||||||
if (!users.if_contains(name, [&res, &attempt](const User &u) {
|
if constexpr (max_log_size)
|
||||||
|
{
|
||||||
|
if (!users.if_contains(name, [&res, &attempt](const User &u) {
|
||||||
if (u.password != XXH3_64bits(attempt.data(), attempt.size()))
|
if (u.password != XXH3_64bits(attempt.data(), attempt.size()))
|
||||||
{
|
{
|
||||||
res = 0;
|
res = 0;
|
||||||
|
|
@ -179,8 +184,9 @@ public:
|
||||||
res = u.log.Serialize();
|
res = u.log.Serialize();
|
||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
{
|
{
|
||||||
return -1;
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
@ -227,7 +233,14 @@ public:
|
||||||
user_save.close();
|
user_save.close();
|
||||||
for (const auto &u : temp.getMemberNames())
|
for (const auto &u : temp.getMemberNames())
|
||||||
{
|
{
|
||||||
users.try_emplace(u, temp[u]["balance"].asUInt(), std::move(temp[u]["password"].asUInt64()), std::move(temp[u]["log"]));
|
if constexpr(max_log_size)
|
||||||
|
{
|
||||||
|
users.try_emplace(u, temp[u]["balance"].asUInt(), std::move(temp[u]["password"].asUInt64()), std::move(temp[u]["log"]));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
users.try_emplace(u, temp[u]["balance"].asUInt(), std::move(temp[u]["password"].asUInt64()), std::move(temp[u]["log"]));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue