mirror of
https://github.com/matrix-construct/construct
synced 2024-12-26 15:33:54 +01:00
Add noexcept to various lambdas (gcc-12).
This commit is contained in:
parent
934d76e81d
commit
3451a989ac
37 changed files with 110 additions and 90 deletions
|
@ -75,7 +75,8 @@ ircd::m::event::prev::ids(event::id (&out)[N])
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t i(0);
|
size_t i(0);
|
||||||
m::for_each(*this, [&i, &out](const event::id &event_id)
|
m::for_each(*this, [&i, &out]
|
||||||
|
(const event::id &event_id) noexcept
|
||||||
{
|
{
|
||||||
out[i++] = event_id;
|
out[i++] = event_id;
|
||||||
return i < N;
|
return i < N;
|
||||||
|
|
|
@ -1360,7 +1360,7 @@ ircd::ctx::context::join()
|
||||||
|
|
||||||
assert(bool(c));
|
assert(bool(c));
|
||||||
mark(prof::event::JOIN);
|
mark(prof::event::JOIN);
|
||||||
ctx::adjoindre.wait([this]
|
ctx::adjoindre.wait([this]() noexcept
|
||||||
{
|
{
|
||||||
return joined();
|
return joined();
|
||||||
});
|
});
|
||||||
|
|
|
@ -278,7 +278,7 @@ void
|
||||||
ircd::m::app::worker()
|
ircd::m::app::worker()
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
child.dock.wait([this]
|
child.dock.wait([this]() noexcept
|
||||||
{
|
{
|
||||||
return child.pid >= 0;
|
return child.pid >= 0;
|
||||||
});
|
});
|
||||||
|
|
|
@ -195,8 +195,9 @@ bool
|
||||||
ircd::m::bridge::config::exists(const string_view &id)
|
ircd::m::bridge::config::exists(const string_view &id)
|
||||||
{
|
{
|
||||||
return get(std::nothrow, id, []
|
return get(std::nothrow, id, []
|
||||||
(const auto &, const auto &, const auto &)
|
(const auto &, const auto &, const auto &) noexcept
|
||||||
{
|
{
|
||||||
|
// no action
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1076,7 +1076,7 @@ ircd::m::bad(const id::event &event_id)
|
||||||
{
|
{
|
||||||
bool ret {false};
|
bool ret {false};
|
||||||
index(std::nothrow, event_id, [&ret]
|
index(std::nothrow, event_id, [&ret]
|
||||||
(const event::idx &event_idx)
|
(const event::idx &event_idx) noexcept
|
||||||
{
|
{
|
||||||
ret = event_idx == 0;
|
ret = event_idx == 0;
|
||||||
});
|
});
|
||||||
|
|
|
@ -66,7 +66,8 @@ size_t
|
||||||
ircd::m::count(const event::prev &prev)
|
ircd::m::count(const event::prev &prev)
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
m::for_each(prev, [&ret](const event::id &event_id)
|
m::for_each(prev, [&ret]
|
||||||
|
(const event::id &event_id) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -75,7 +75,7 @@ ircd::m::event::refs::rebuild()
|
||||||
++i;
|
++i;
|
||||||
}
|
}
|
||||||
|
|
||||||
dock.wait([&i, &j]
|
dock.wait([&i, &j]() noexcept
|
||||||
{
|
{
|
||||||
return i == j;
|
return i == j;
|
||||||
});
|
});
|
||||||
|
@ -133,7 +133,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(type, [&ret]
|
for_each(type, [&ret]
|
||||||
(const event::idx &, const dbs::ref &)
|
(const event::idx &, const dbs::ref &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -154,7 +154,7 @@ ircd::m::event::refs::has(const dbs::ref &type)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each(type, [&type]
|
return !for_each(type, [&type]
|
||||||
(const event::idx &, const dbs::ref &ref)
|
(const event::idx &, const dbs::ref &ref) noexcept
|
||||||
{
|
{
|
||||||
assert(ref == type);
|
assert(ref == type);
|
||||||
return false;
|
return false;
|
||||||
|
@ -167,7 +167,7 @@ ircd::m::event::refs::has(const dbs::ref &type,
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each(type, [&idx]
|
return !for_each(type, [&idx]
|
||||||
(const event::idx &ref, const dbs::ref &)
|
(const event::idx &ref, const dbs::ref &) noexcept
|
||||||
{
|
{
|
||||||
return ref != idx; // true to continue, false to break
|
return ref != idx; // true to continue, false to break
|
||||||
});
|
});
|
||||||
|
|
|
@ -556,7 +556,7 @@ ircd::m::events::type::has(const string_view &type)
|
||||||
{
|
{
|
||||||
bool ret{false};
|
bool ret{false};
|
||||||
for_each(type, [&ret, &type]
|
for_each(type, [&ret, &type]
|
||||||
(const string_view &type_)
|
(const string_view &type_) noexcept
|
||||||
{
|
{
|
||||||
ret = type == type_;
|
ret = type == type_;
|
||||||
return false; // uncond break out of loop after first result
|
return false; // uncond break out of loop after first result
|
||||||
|
@ -570,7 +570,7 @@ ircd::m::events::type::has_prefix(const string_view &type)
|
||||||
{
|
{
|
||||||
bool ret{false};
|
bool ret{false};
|
||||||
for_each(type, [&ret, &type]
|
for_each(type, [&ret, &type]
|
||||||
(const string_view &type_)
|
(const string_view &type_) noexcept
|
||||||
{
|
{
|
||||||
ret = startswith(type_, type);
|
ret = startswith(type_, type);
|
||||||
return false; // uncond break out of loop after first result
|
return false; // uncond break out of loop after first result
|
||||||
|
|
|
@ -129,7 +129,7 @@ ircd::m::init::backfill::worker_context;
|
||||||
decltype(ircd::m::init::backfill::handle_quit)
|
decltype(ircd::m::init::backfill::handle_quit)
|
||||||
ircd::m::init::backfill::handle_quit
|
ircd::m::init::backfill::handle_quit
|
||||||
{
|
{
|
||||||
run::level::QUIT, []
|
run::level::QUIT, []() noexcept
|
||||||
{
|
{
|
||||||
term();
|
term();
|
||||||
}
|
}
|
||||||
|
|
|
@ -288,7 +288,7 @@ size_t
|
||||||
ircd::m::keys::fetch(const queries &queries)
|
ircd::m::keys::fetch(const queries &queries)
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
get(queries, [&ret](const auto &)
|
get(queries, [&ret](const auto &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -392,7 +392,7 @@ try
|
||||||
};
|
};
|
||||||
|
|
||||||
power.for_each("notifications", [&required_level, &key]
|
power.for_each("notifications", [&required_level, &key]
|
||||||
(const auto &name, const auto &level)
|
(const auto &name, const auto &level) noexcept
|
||||||
{
|
{
|
||||||
if(name == key)
|
if(name == key)
|
||||||
{
|
{
|
||||||
|
|
|
@ -489,7 +489,11 @@ ircd::m::exists(const id::room_alias &room_alias,
|
||||||
if(!remote_query)
|
if(!remote_query)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return room::aliases::cache::get(std::nothrow, room_alias, [](const room::id &room_id) {});
|
return room::aliases::cache::get(std::nothrow, room_alias, []
|
||||||
|
(const room::id &) noexcept
|
||||||
|
{
|
||||||
|
// no action
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
int64_t
|
int64_t
|
||||||
|
@ -1407,7 +1411,7 @@ const
|
||||||
|
|
||||||
if(!match)
|
if(!match)
|
||||||
column(byte_view<string_view>(event_idx), std::nothrow, [&match, &type]
|
column(byte_view<string_view>(event_idx), std::nothrow, [&match, &type]
|
||||||
(const string_view &value)
|
(const string_view &value) noexcept
|
||||||
{
|
{
|
||||||
match = value == type;
|
match = value == type;
|
||||||
});
|
});
|
||||||
|
|
|
@ -44,7 +44,8 @@ ircd::m::room::aliases::count(const string_view &server)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(server, [&ret](const auto &a)
|
for_each(server, [&ret]
|
||||||
|
(const auto &a) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -58,7 +59,7 @@ ircd::m::room::aliases::has(const alias &alias)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each(alias.host(), [&alias]
|
return !for_each(alias.host(), [&alias]
|
||||||
(const id::room_alias &a)
|
(const id::room_alias &a) noexcept
|
||||||
{
|
{
|
||||||
assert(a.host() == alias.host());
|
assert(a.host() == alias.host());
|
||||||
return a == alias? false : true; // false to break on found
|
return a == alias? false : true; // false to break on found
|
||||||
|
|
|
@ -660,28 +660,28 @@ ircd::m::room::auth::hookdata::hookdata(const m::event &event,
|
||||||
}
|
}
|
||||||
,auth_create
|
,auth_create
|
||||||
{
|
{
|
||||||
find([](const auto &event)
|
find([](const auto &event) noexcept
|
||||||
{
|
{
|
||||||
return json::get<"type"_>(event) == "m.room.create";
|
return json::get<"type"_>(event) == "m.room.create";
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
,auth_power
|
,auth_power
|
||||||
{
|
{
|
||||||
find([](const auto &event)
|
find([](const auto &event) noexcept
|
||||||
{
|
{
|
||||||
return json::get<"type"_>(event) == "m.room.power_levels";
|
return json::get<"type"_>(event) == "m.room.power_levels";
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
,auth_join_rules
|
,auth_join_rules
|
||||||
{
|
{
|
||||||
find([](const auto &event)
|
find([](const auto &event) noexcept
|
||||||
{
|
{
|
||||||
return json::get<"type"_>(event) == "m.room.join_rules";
|
return json::get<"type"_>(event) == "m.room.join_rules";
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
,auth_member_target
|
,auth_member_target
|
||||||
{
|
{
|
||||||
find([&event](const auto &auth_event)
|
find([&event](const auto &auth_event) noexcept
|
||||||
{
|
{
|
||||||
return json::get<"type"_>(auth_event) == "m.room.member" &&
|
return json::get<"type"_>(auth_event) == "m.room.member" &&
|
||||||
json::get<"state_key"_>(auth_event) == json::get<"state_key"_>(event);
|
json::get<"state_key"_>(auth_event) == json::get<"state_key"_>(event);
|
||||||
|
@ -689,7 +689,7 @@ ircd::m::room::auth::hookdata::hookdata(const m::event &event,
|
||||||
}
|
}
|
||||||
,auth_member_sender
|
,auth_member_sender
|
||||||
{
|
{
|
||||||
find([&event](const auto &auth_event)
|
find([&event](const auto &auth_event) noexcept
|
||||||
{
|
{
|
||||||
return json::get<"type"_>(auth_event) == "m.room.member" &&
|
return json::get<"type"_>(auth_event) == "m.room.member" &&
|
||||||
json::get<"state_key"_>(auth_event) == json::get<"sender"_>(event);
|
json::get<"state_key"_>(auth_event) == json::get<"sender"_>(event);
|
||||||
|
@ -725,7 +725,8 @@ ircd::m::room::auth::refs::count(const string_view &type)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(type, [&ret](const auto &)
|
for_each(type, [&ret]
|
||||||
|
(const auto &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -738,7 +739,8 @@ bool
|
||||||
ircd::m::room::auth::refs::has(const event::idx &idx)
|
ircd::m::room::auth::refs::has(const event::idx &idx)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each([&idx](const event::idx &ref)
|
return !for_each([&idx]
|
||||||
|
(const event::idx &ref) noexcept
|
||||||
{
|
{
|
||||||
return ref != idx; // true to continue, false to break
|
return ref != idx; // true to continue, false to break
|
||||||
});
|
});
|
||||||
|
@ -749,7 +751,8 @@ ircd::m::room::auth::refs::has(const string_view &type)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
bool ret{false};
|
bool ret{false};
|
||||||
for_each(type, [&ret](const auto &)
|
for_each(type, [&ret]
|
||||||
|
(const auto &) noexcept
|
||||||
{
|
{
|
||||||
ret = true;
|
ret = true;
|
||||||
return false;
|
return false;
|
||||||
|
@ -782,7 +785,7 @@ const
|
||||||
bool match;
|
bool match;
|
||||||
const auto matcher
|
const auto matcher
|
||||||
{
|
{
|
||||||
[&type, &match](const string_view &type_)
|
[&type, &match](const string_view &type_) noexcept
|
||||||
{
|
{
|
||||||
match = type == type_;
|
match = type == type_;
|
||||||
}
|
}
|
||||||
|
@ -814,7 +817,8 @@ ircd::m::room::auth::chain::depth()
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each([&ret](const auto &)
|
for_each([&ret]
|
||||||
|
(const auto &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -832,7 +836,7 @@ const
|
||||||
(const auto &idx)
|
(const auto &idx)
|
||||||
{
|
{
|
||||||
m::get(std::nothrow, idx, "type", [&type, &ret]
|
m::get(std::nothrow, idx, "type", [&type, &ret]
|
||||||
(const auto &value)
|
(const auto &value) noexcept
|
||||||
{
|
{
|
||||||
ret = value == type;
|
ret = value == type;
|
||||||
});
|
});
|
||||||
|
|
|
@ -56,7 +56,7 @@ ircd::m::twain(const room &room)
|
||||||
};
|
};
|
||||||
|
|
||||||
s.rfor_each([&ret]
|
s.rfor_each([&ret]
|
||||||
(const auto &range, const auto &event_idx)
|
(const auto &range, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
ret.first = range.first - 1;
|
ret.first = range.first - 1;
|
||||||
return false;
|
return false;
|
||||||
|
@ -79,7 +79,7 @@ ircd::m::sounding(const room &room)
|
||||||
};
|
};
|
||||||
|
|
||||||
s.rfor_each([&ret]
|
s.rfor_each([&ret]
|
||||||
(const auto &range, const auto &event_idx)
|
(const auto &range, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
ret.first = range.second;
|
ret.first = range.second;
|
||||||
ret.second = event_idx;
|
ret.second = event_idx;
|
||||||
|
@ -103,7 +103,7 @@ ircd::m::hazard(const room &room)
|
||||||
};
|
};
|
||||||
|
|
||||||
s.for_each([&ret]
|
s.for_each([&ret]
|
||||||
(const auto &range, const auto &event_idx)
|
(const auto &range, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
ret.first = range.first;
|
ret.first = range.first;
|
||||||
return false;
|
return false;
|
||||||
|
@ -438,7 +438,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each([&ret]
|
for_each([&ret]
|
||||||
(const auto &event_id, const auto &depth, const auto &event_idx)
|
(const auto &event_id, const auto &depth, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -662,7 +662,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each([&ret]
|
for_each([&ret]
|
||||||
(const auto &event_id, const auto &depth, const auto &event_idx)
|
(const auto &event_id, const auto &depth, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -677,7 +677,7 @@ const
|
||||||
{
|
{
|
||||||
const std::function<bool (const string_view &)> in_room
|
const std::function<bool (const string_view &)> in_room
|
||||||
{
|
{
|
||||||
[this](const string_view &room_id)
|
[this](const string_view &room_id) noexcept
|
||||||
{
|
{
|
||||||
return room_id == this->room.room_id;
|
return room_id == this->room.room_id;
|
||||||
}
|
}
|
||||||
|
|
|
@ -225,7 +225,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each([&ret]
|
for_each([&ret]
|
||||||
(const event::idx &event_idx, const event::id &event_id)
|
(const event::idx &event_idx, const event::id &event_id) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -240,7 +240,7 @@ const
|
||||||
{
|
{
|
||||||
bool ret{false};
|
bool ret{false};
|
||||||
for_each([&ret, &event_id]
|
for_each([&ret, &event_id]
|
||||||
(const event::idx &event_idx, const event::id &event_id_)
|
(const event::idx &event_idx, const event::id &event_id_) noexcept
|
||||||
{
|
{
|
||||||
ret = event_id_ == event_id;
|
ret = event_id_ == event_id;
|
||||||
return !ret; // for_each protocol: false to break
|
return !ret; // for_each protocol: false to break
|
||||||
|
|
|
@ -28,7 +28,7 @@ ircd::m::room::members::empty(const string_view &membership,
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return for_each(membership, host, closure{[]
|
return for_each(membership, host, closure{[]
|
||||||
(const user::id &user_id)
|
(const user::id &user_id) noexcept
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}});
|
}});
|
||||||
|
@ -55,7 +55,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each(membership, host, closure{[&ret]
|
for_each(membership, host, closure{[&ret]
|
||||||
(const user::id &user_id)
|
(const user::id &user_id) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -90,7 +90,7 @@ ircd::m::room::origins::empty()
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return for_each(closure_bool{[]
|
return for_each(closure_bool{[]
|
||||||
(const string_view &)
|
(const string_view &) noexcept
|
||||||
{
|
{
|
||||||
// return false to break and return false.
|
// return false to break and return false.
|
||||||
return false;
|
return false;
|
||||||
|
@ -102,7 +102,8 @@ ircd::m::room::origins::count()
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each([&ret](const string_view &)
|
for_each([&ret]
|
||||||
|
(const string_view &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
});
|
});
|
||||||
|
@ -150,7 +151,7 @@ const
|
||||||
{
|
{
|
||||||
ushort ret{2};
|
ushort ret{2};
|
||||||
for_each(closure_bool{[&ret, &origin]
|
for_each(closure_bool{[&ret, &origin]
|
||||||
(const string_view &origin_) -> bool
|
(const string_view &origin_) noexcept -> bool
|
||||||
{
|
{
|
||||||
if(origin == origin_)
|
if(origin == origin_)
|
||||||
ret = 1;
|
ret = 1;
|
||||||
|
|
|
@ -551,7 +551,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each([&ret]
|
for_each([&ret]
|
||||||
(const string_view &, const int64_t &)
|
(const string_view &, const int64_t &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -581,7 +581,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each(prop, [&ret]
|
for_each(prop, [&ret]
|
||||||
(const string_view &, const int64_t &)
|
(const string_view &, const int64_t &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -173,7 +173,7 @@ const
|
||||||
};
|
};
|
||||||
|
|
||||||
return !for_each(prop, [&server]
|
return !for_each(prop, [&server]
|
||||||
(const string_view &expression)
|
(const string_view &expression) noexcept
|
||||||
{
|
{
|
||||||
const globular_imatch match
|
const globular_imatch match
|
||||||
{
|
{
|
||||||
|
@ -191,7 +191,7 @@ ircd::m::room::server_acl::has(const string_view &prop,
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each(prop, [&expr]
|
return !for_each(prop, [&expr]
|
||||||
(const string_view &_expr)
|
(const string_view &_expr) noexcept
|
||||||
{
|
{
|
||||||
// false to break on match
|
// false to break on match
|
||||||
return _expr == expr? false : true;
|
return _expr == expr? false : true;
|
||||||
|
@ -240,7 +240,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(prop, [&ret]
|
for_each(prop, [&ret]
|
||||||
(const string_view &)
|
(const string_view &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -85,7 +85,7 @@ const
|
||||||
{
|
{
|
||||||
event::idx ret;
|
event::idx ret;
|
||||||
get(type, state_key, event::closure_idx{[&ret]
|
get(type, state_key, event::closure_idx{[&ret]
|
||||||
(const event::idx &event_idx)
|
(const event::idx &event_idx) noexcept
|
||||||
{
|
{
|
||||||
ret = event_idx;
|
ret = event_idx;
|
||||||
}});
|
}});
|
||||||
|
@ -101,7 +101,7 @@ const
|
||||||
{
|
{
|
||||||
event::idx ret{0};
|
event::idx ret{0};
|
||||||
get(std::nothrow, type, state_key, event::closure_idx{[&ret]
|
get(std::nothrow, type, state_key, event::closure_idx{[&ret]
|
||||||
(const event::idx &event_idx)
|
(const event::idx &event_idx) noexcept
|
||||||
{
|
{
|
||||||
ret = event_idx;
|
ret = event_idx;
|
||||||
}});
|
}});
|
||||||
|
@ -295,7 +295,7 @@ const
|
||||||
}
|
}
|
||||||
|
|
||||||
return !for_each(type, []
|
return !for_each(type, []
|
||||||
(const string_view &, const string_view &, const event::idx &)
|
(const string_view &, const string_view &, const event::idx &) noexcept
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
@ -366,7 +366,7 @@ const
|
||||||
|
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(type, [&ret]
|
for_each(type, [&ret]
|
||||||
(const string_view &, const string_view &, const event::idx &)
|
(const string_view &, const string_view &, const event::idx &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -755,7 +755,7 @@ ircd::m::room::state::is(const event::idx &event_idx)
|
||||||
{
|
{
|
||||||
bool ret{false};
|
bool ret{false};
|
||||||
m::get(event_idx, "state_key", [&ret]
|
m::get(event_idx, "state_key", [&ret]
|
||||||
(const string_view &state_key)
|
(const string_view &state_key) noexcept
|
||||||
{
|
{
|
||||||
ret = true;
|
ret = true;
|
||||||
});
|
});
|
||||||
|
@ -769,7 +769,7 @@ ircd::m::room::state::is(std::nothrow_t,
|
||||||
{
|
{
|
||||||
bool ret{false};
|
bool ret{false};
|
||||||
m::get(std::nothrow, event_idx, "state_key", [&ret]
|
m::get(std::nothrow, event_idx, "state_key", [&ret]
|
||||||
(const string_view &state_key)
|
(const string_view &state_key) noexcept
|
||||||
{
|
{
|
||||||
ret = true;
|
ret = true;
|
||||||
});
|
});
|
||||||
|
@ -797,7 +797,8 @@ ircd::m::room::state::purge_replaced(const room::id &room_id)
|
||||||
for(; it; ++it)
|
for(; it; ++it)
|
||||||
{
|
{
|
||||||
const m::event::idx &event_idx(it.event_idx());
|
const m::event::idx &event_idx(it.event_idx());
|
||||||
if(!m::get(std::nothrow, event_idx, "state_key", [](const auto &) {}))
|
static const auto no_action{[](const auto &) noexcept {}};
|
||||||
|
if(!m::get(std::nothrow, event_idx, "state_key", no_action))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if(!m::event::refs(event_idx).count(m::dbs::ref::NEXT_STATE))
|
if(!m::event::refs(event_idx).count(m::dbs::ref::NEXT_STATE))
|
||||||
|
@ -846,7 +847,7 @@ ircd::m::room::state::prev(const event::idx &event_idx)
|
||||||
{
|
{
|
||||||
event::idx ret{0};
|
event::idx ret{0};
|
||||||
prev(event_idx, [&ret]
|
prev(event_idx, [&ret]
|
||||||
(const event::idx &event_idx)
|
(const event::idx &event_idx) noexcept
|
||||||
{
|
{
|
||||||
if(event_idx > ret)
|
if(event_idx > ret)
|
||||||
ret = event_idx;
|
ret = event_idx;
|
||||||
|
@ -862,7 +863,7 @@ ircd::m::room::state::next(const event::idx &event_idx)
|
||||||
{
|
{
|
||||||
event::idx ret{0};
|
event::idx ret{0};
|
||||||
next(event_idx, [&ret]
|
next(event_idx, [&ret]
|
||||||
(const event::idx &event_idx)
|
(const event::idx &event_idx) noexcept
|
||||||
{
|
{
|
||||||
if(event_idx > ret)
|
if(event_idx > ret)
|
||||||
ret = event_idx;
|
ret = event_idx;
|
||||||
|
|
|
@ -102,7 +102,7 @@ const
|
||||||
event::idx ret{0};
|
event::idx ret{0};
|
||||||
assert(type && defined(state_key));
|
assert(type && defined(state_key));
|
||||||
for_each(type, state_key, [&ret]
|
for_each(type, state_key, [&ret]
|
||||||
(const auto &, const auto &, const auto &, const auto &event_idx)
|
(const auto &, const auto &, const auto &, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
ret = event_idx;
|
ret = event_idx;
|
||||||
return false;
|
return false;
|
||||||
|
@ -124,7 +124,7 @@ ircd::m::room::state::history::has(const string_view &type,
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each(type, state_key, []
|
return !for_each(type, state_key, []
|
||||||
(const auto &type, const auto &state_key, const auto &depth, const auto &event_idx)
|
(const auto &, const auto &, const auto &, const auto &) noexcept
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
@ -144,7 +144,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(type, state_key, [&ret]
|
for_each(type, state_key, [&ret]
|
||||||
(const auto &type, const auto &state_key, const auto &depth, const auto &event_idx)
|
(const auto &, const auto &, const auto &, const auto &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -73,7 +73,7 @@ ircd::m::room::state::space::has(const string_view &type,
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each(type, state_key, depth, []
|
return !for_each(type, state_key, depth, []
|
||||||
(const auto &type, const auto &state_key, const auto &depth, const auto &event_idx)
|
(const auto &, const auto &, const auto &, const auto &) noexcept
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
@ -109,7 +109,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(type, state_key, depth, [&ret]
|
for_each(type, state_key, depth, [&ret]
|
||||||
(const auto &type, const auto &state_key, const auto &depth, const auto &event_idx)
|
(const auto &, const auto &, const auto &, const auto &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -34,7 +34,7 @@ ircd::m::room::type::empty()
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return for_each([]
|
return for_each([]
|
||||||
(const auto &type, const auto &depth, const auto &event_idx)
|
(const auto &type, const auto &depth, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
@ -46,7 +46,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each([&ret]
|
for_each([&ret]
|
||||||
(const auto &type, const auto &depth, const auto &event_idx)
|
(const auto &type, const auto &depth, const auto &event_idx) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -64,7 +64,7 @@ bool
|
||||||
ircd::m::rooms::has(const opts &opts)
|
ircd::m::rooms::has(const opts &opts)
|
||||||
{
|
{
|
||||||
return !for_each(opts, []
|
return !for_each(opts, []
|
||||||
(const m::room::id &)
|
(const m::room::id &) noexcept
|
||||||
{
|
{
|
||||||
// false to break; for_each() returns false
|
// false to break; for_each() returns false
|
||||||
return false;
|
return false;
|
||||||
|
@ -76,7 +76,7 @@ ircd::m::rooms::count(const opts &opts)
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each(opts, [&ret]
|
for_each(opts, [&ret]
|
||||||
(const m::room::id &)
|
(const m::room::id &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -216,7 +216,7 @@ ircd::m::rooms::for_each(const opts &opts,
|
||||||
{
|
{
|
||||||
++prefetch;
|
++prefetch;
|
||||||
prefetched += m::prefetch(event_idx, "room_id");
|
prefetched += m::prefetch(event_idx, "room_id");
|
||||||
dock.wait([&]
|
dock.wait([&]() noexcept
|
||||||
{
|
{
|
||||||
return fetch + opts.prefetch > prefetch;
|
return fetch + opts.prefetch > prefetch;
|
||||||
});
|
});
|
||||||
|
|
|
@ -461,7 +461,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
sync::for_each(this->name(), [&ret]
|
sync::for_each(this->name(), [&ret]
|
||||||
(auto &item)
|
(auto &item) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -89,7 +89,7 @@ ircd::m::txn::create(const closure &closure,
|
||||||
{
|
{
|
||||||
iov, !empty(pdu),
|
iov, !empty(pdu),
|
||||||
{
|
{
|
||||||
"pdus", [&pdu]() -> json::value
|
"pdus", [&pdu]() noexcept -> json::value
|
||||||
{
|
{
|
||||||
return { data(pdu), size(pdu) };
|
return { data(pdu), size(pdu) };
|
||||||
}
|
}
|
||||||
|
@ -100,7 +100,7 @@ ircd::m::txn::create(const closure &closure,
|
||||||
{
|
{
|
||||||
iov, !empty(edu),
|
iov, !empty(edu),
|
||||||
{
|
{
|
||||||
"edus", [&edu]() -> json::value
|
"edus", [&edu]() noexcept -> json::value
|
||||||
{
|
{
|
||||||
return { data(edu), size(edu) };
|
return { data(edu), size(edu) };
|
||||||
}
|
}
|
||||||
|
@ -111,7 +111,7 @@ ircd::m::txn::create(const closure &closure,
|
||||||
{
|
{
|
||||||
iov, !empty(pdu_failure),
|
iov, !empty(pdu_failure),
|
||||||
{
|
{
|
||||||
"pdu_failures", [&pdu_failure]() -> json::value
|
"pdu_failures", [&pdu_failure]() noexcept -> json::value
|
||||||
{
|
{
|
||||||
return { data(pdu_failure), size(pdu_failure) };
|
return { data(pdu_failure), size(pdu_failure) };
|
||||||
}
|
}
|
||||||
|
|
|
@ -237,7 +237,7 @@ const
|
||||||
const bool got
|
const bool got
|
||||||
{
|
{
|
||||||
get(std::nothrow, id, prop, [&val, &dup]
|
get(std::nothrow, id, prop, [&val, &dup]
|
||||||
(const auto &event_idx, const json::string &existing)
|
(const auto &event_idx, const json::string &existing) noexcept
|
||||||
{
|
{
|
||||||
dup = val == existing;
|
dup = val == existing;
|
||||||
})
|
})
|
||||||
|
@ -293,7 +293,7 @@ const
|
||||||
{
|
{
|
||||||
bool ret{false};
|
bool ret{false};
|
||||||
get(std::nothrow, id, prop, [&ret]
|
get(std::nothrow, id, prop, [&ret]
|
||||||
(const auto &event_idx, const string_view &value)
|
(const auto &event_idx, const string_view &value) noexcept
|
||||||
{
|
{
|
||||||
ret = !empty(value);
|
ret = !empty(value);
|
||||||
});
|
});
|
||||||
|
|
|
@ -13,7 +13,7 @@ ircd::m::user::events::count()
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each([&ret](const event::idx &)
|
for_each([&ret](const event::idx &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -33,7 +33,7 @@ ircd::m::user::ignores::has(const m::user::id &other)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each([&other]
|
return !for_each([&other]
|
||||||
(const m::user::id &user_id, const json::object &)
|
(const m::user::id &user_id, const json::object &) noexcept
|
||||||
{
|
{
|
||||||
return user_id != other;
|
return user_id != other;
|
||||||
});
|
});
|
||||||
|
|
|
@ -15,7 +15,7 @@ const
|
||||||
{
|
{
|
||||||
// Return true if broken out of loop.
|
// Return true if broken out of loop.
|
||||||
return !for_each(other, membership, []
|
return !for_each(other, membership, []
|
||||||
(const m::room &, const string_view &)
|
(const m::room &, const string_view &) noexcept
|
||||||
{
|
{
|
||||||
// Break out of loop at first shared room
|
// Break out of loop at first shared room
|
||||||
return false;
|
return false;
|
||||||
|
@ -27,7 +27,8 @@ ircd::m::user::mitsein::count(const string_view &membership)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each(membership, [&ret](const m::user &)
|
for_each(membership, [&ret]
|
||||||
|
(const m::user &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
@ -42,7 +43,8 @@ ircd::m::user::mitsein::count(const m::user &user,
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each(user, membership, [&ret](const m::room &, const string_view &)
|
for_each(user, membership, [&ret]
|
||||||
|
(const m::room &, const string_view &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -58,7 +58,7 @@ ircd::m::user::notifications::empty(const opts &opts)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each(opts, closure_meta{[&]
|
return !for_each(opts, closure_meta{[&]
|
||||||
(const auto &, const auto &)
|
(const auto &, const auto &) noexcept
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}});
|
}});
|
||||||
|
@ -70,7 +70,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(opts, closure_meta{[&ret]
|
for_each(opts, closure_meta{[&ret]
|
||||||
(const auto &, const auto &)
|
(const auto &, const auto &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -152,7 +152,7 @@ ircd::m::user::profile::fetch(const m::user &user,
|
||||||
{
|
{
|
||||||
bool exists{false};
|
bool exists{false};
|
||||||
profile.get(std::nothrow, member.first, [&exists, &member]
|
profile.get(std::nothrow, member.first, [&exists, &member]
|
||||||
(const string_view &key, const string_view &val)
|
(const string_view &key, const string_view &val) noexcept
|
||||||
{
|
{
|
||||||
exists = member.second == val;
|
exists = member.second == val;
|
||||||
});
|
});
|
||||||
|
|
|
@ -125,7 +125,8 @@ ircd::m::user::pushers::has(const string_view &key)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each([&key] // for_each() returns true if no match
|
return !for_each([&key] // for_each() returns true if no match
|
||||||
(const event::idx &pusher_idx, const string_view &pushkey, const push::pusher &pusher)
|
(const event::idx &, const string_view &pushkey, const push::pusher &)
|
||||||
|
noexcept
|
||||||
{
|
{
|
||||||
return key != pushkey;
|
return key != pushkey;
|
||||||
});
|
});
|
||||||
|
@ -136,7 +137,8 @@ ircd::m::user::pushers::any(const string_view &kind)
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
return !for_each([&kind] // for_each() returns true if no match
|
return !for_each([&kind] // for_each() returns true if no match
|
||||||
(const event::idx &pusher_idx, const string_view &pushkey, const push::pusher &pusher)
|
(const event::idx &, const string_view &, const push::pusher &pusher)
|
||||||
|
noexcept
|
||||||
{
|
{
|
||||||
if(!kind)
|
if(!kind)
|
||||||
return false;
|
return false;
|
||||||
|
@ -154,7 +156,8 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each([&ret, &kind]
|
for_each([&ret, &kind]
|
||||||
(const event::idx &pusher_idx, const string_view &pushkey, const push::pusher &pusher)
|
(const event::idx &, const string_view &, const push::pusher &pusher)
|
||||||
|
noexcept
|
||||||
{
|
{
|
||||||
ret += !kind || json::get<"kind"_>(pusher) == kind;
|
ret += !kind || json::get<"kind"_>(pusher) == kind;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -14,7 +14,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each([&ret]
|
for_each([&ret]
|
||||||
(const m::room &, const string_view &membership)
|
(const m::room &, const string_view &membership) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
});
|
});
|
||||||
|
@ -28,7 +28,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each(membership, [&ret]
|
for_each(membership, [&ret]
|
||||||
(const m::room &, const string_view &membership)
|
(const m::room &, const string_view &membership) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
});
|
});
|
||||||
|
|
|
@ -21,7 +21,7 @@ bool
|
||||||
ircd::m::users::exists(const opts &opts)
|
ircd::m::users::exists(const opts &opts)
|
||||||
{
|
{
|
||||||
return !for_each(opts, []
|
return !for_each(opts, []
|
||||||
(const auto &)
|
(const auto &) noexcept
|
||||||
{
|
{
|
||||||
// return false to break and have for_each() returns false
|
// return false to break and have for_each() returns false
|
||||||
return false;
|
return false;
|
||||||
|
@ -32,7 +32,8 @@ size_t
|
||||||
ircd::m::users::count(const opts &opts)
|
ircd::m::users::count(const opts &opts)
|
||||||
{
|
{
|
||||||
size_t ret(0);
|
size_t ret(0);
|
||||||
for_each(opts, [&ret](const auto &)
|
for_each(opts, [&ret]
|
||||||
|
(const auto &) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -15,7 +15,7 @@ const
|
||||||
{
|
{
|
||||||
// Return true if broken out of loop.
|
// Return true if broken out of loop.
|
||||||
return !for_each(membership, []
|
return !for_each(membership, []
|
||||||
(const auto &server)
|
(const auto &server) noexcept
|
||||||
{
|
{
|
||||||
// Break out of loop at first shared room
|
// Break out of loop at first shared room
|
||||||
return false;
|
return false;
|
||||||
|
@ -28,7 +28,7 @@ const
|
||||||
{
|
{
|
||||||
size_t ret{0};
|
size_t ret{0};
|
||||||
for_each(membership, [&ret]
|
for_each(membership, [&ret]
|
||||||
(const auto &server)
|
(const auto &server) noexcept
|
||||||
{
|
{
|
||||||
++ret;
|
++ret;
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in a new issue