File indexing completed on 2024-05-26 05:13:31

0001 /*
0002  * This file is part of the KDE Akonadi Search Project
0003  * SPDX-FileCopyrightText: 2013 Vishesh Handa <me@vhanda.in>
0004  *
0005  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0006  *
0007  */
0008 
0009 #include "resultiterator_p.h"
0010 
0011 using namespace Akonadi::Search::PIM;
0012 
0013 ResultIterator::ResultIterator()
0014     : d(new ResultIteratorPrivate)
0015 {
0016 }
0017 
0018 ResultIterator::ResultIterator(const ResultIterator &ri)
0019     : d(new ResultIteratorPrivate(*ri.d))
0020 {
0021 }
0022 
0023 ResultIterator::~ResultIterator() = default;
0024 
0025 bool ResultIterator::next()
0026 {
0027     if (d->m_iter == d->m_end) {
0028         return false;
0029     }
0030 
0031     if (d->m_firstElement) {
0032         d->m_iter = d->m_mset.begin();
0033         d->m_firstElement = false;
0034         return d->m_iter != d->m_end;
0035     }
0036 
0037     ++d->m_iter;
0038     return d->m_iter != d->m_end;
0039 }
0040 
0041 Akonadi::Item::Id ResultIterator::id()
0042 {
0043     // qDebug() << d->m_iter.get_rank() << d->m_iter.get_weight();
0044     return *(d->m_iter);
0045 }