/
githubmirror
/
omim
Обзор
Документация
Войти
/
githubmirror
/
omim
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
storage/downloader_queue_universal.cpp
76 строк
1 KB
Arsentiy Milchakov
[storage] method Count is added into QueueInterface
30 мар 2021, 13:59
30 мар 2021, 13:59
a6b61cd
Код
Авторство
О чём код?
#include "storage/downloader_queue_universal.hpp" #include <algorithm> namespace storage { bool Queue::IsEmpty() const { return m_queue.empty(); } size_t Queue::Count() const { return m_queue.size(); } bool Queue::Contains(CountryId const & country) const { return std::find(m_queue.cbegin(), m_queue.cend(), country) != m_queue.cend(); } void Queue::ForEachCountry(ForEachCountryFunction const & fn) const { for (auto const & queuedCountry : m_queue) { fn(queuedCountry); } } void Queue::ForEachCountry(ForEachCountryMutable const & fn) { for (auto & queuedCountry : m_queue) { fn(queuedCountry); } } CountryId const & Queue::GetFirstId() const { CHECK(!m_queue.empty(), ()); return m_queue.front().GetCountryId(); } QueuedCountry const & Queue::GetFirstCountry() const { CHECK(!m_queue.empty(), ()); return m_queue.front(); } void Queue::Remove(const storage::CountryId & id) { auto it = std::find(m_queue.begin(), m_queue.end(), id); if (it != m_queue.end()) m_queue.erase(it); } void Queue::PopFront() { CHECK(!m_queue.empty(), ()); m_queue.pop_front(); } void Queue::Append(QueuedCountry && country) { m_queue.emplace_back(std::move(country)); m_queue.back().OnCountryInQueue(); } void Queue::Clear() { m_queue.clear(); } } // namespace storage