From c570e046222ac6df6757a98fa1879fb1add8d572 Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Thu, 5 Sep 2019 14:38:41 -0700 Subject: [PATCH] ircd::m::event::prev: Add _events_exist() convenience suite. --- include/ircd/m/event/prev.h | 3 +++ ircd/m_event.cc | 22 ++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/include/ircd/m/event/prev.h b/include/ircd/m/event/prev.h index 3ac59872f..7f608d88b 100644 --- a/include/ircd/m/event/prev.h +++ b/include/ircd/m/event/prev.h @@ -55,6 +55,9 @@ struct ircd::m::event::prev size_t auth_events_count() const; size_t prev_events_count() const; + size_t auth_events_exist() const; + size_t prev_events_exist() const; + using super_type::tuple; using super_type::operator=; }; diff --git a/ircd/m_event.cc b/ircd/m_event.cc index 696d15466..fcb35997d 100644 --- a/ircd/m_event.cc +++ b/ircd/m_event.cc @@ -1962,6 +1962,28 @@ const // event/prev.h // +size_t +ircd::m::event::prev::prev_events_exist() +const +{ + size_t ret(0); + for(size_t i(0); i < prev_events_count(); ++i) + ret += prev_event_exists(i); + + return ret; +} + +size_t +ircd::m::event::prev::auth_events_exist() +const +{ + size_t ret(0); + for(size_t i(0); i < auth_events_count(); ++i) + ret += auth_event_exists(i); + + return ret; +} + bool ircd::m::event::prev::prev_event_exists(const size_t &idx) const