X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/fc2ab478989fb4effc14c06aa56fdb29d3143b35..e076d8668f673e09ddd01b3367e413a494d6d2bb:/src/kitemviews/kitemset.h diff --git a/src/kitemviews/kitemset.h b/src/kitemviews/kitemset.h index 385010f7d..14aa665a1 100644 --- a/src/kitemviews/kitemset.h +++ b/src/kitemviews/kitemset.h @@ -20,7 +20,8 @@ #ifndef KITEMSET_H #define KITEMSET_H -#include +#include "dolphin_export.h" +#include "kitemviews/kitemrange.h" /** * @brief Stores a set of integer numbers in a space-efficient way. @@ -40,11 +41,13 @@ * The complexity of most operations depends on the number of ranges. */ -class KItemSet +class DOLPHIN_EXPORT KItemSet { public: KItemSet(); KItemSet(const KItemSet& other); + ~KItemSet(); + KItemSet& operator=(const KItemSet& other); /** * Returns the number of items in the set. @@ -80,6 +83,8 @@ public: return *this; } + ~iterator() = default; + int operator*() const { return m_rangeIt->index + m_offset; @@ -157,7 +162,7 @@ public: { } - const_iterator(const iterator& other) : + explicit const_iterator(const iterator& other) : m_rangeIt(other.m_rangeIt), m_offset(other.m_offset) { @@ -170,6 +175,8 @@ public: return *this; } + ~const_iterator() = default; + int operator*() const { return m_rangeIt->index + m_offset; @@ -297,6 +304,14 @@ inline KItemSet::KItemSet(const KItemSet& other) : { } +inline KItemSet::~KItemSet() = default; + +inline KItemSet& KItemSet::operator=(const KItemSet& other) +{ + m_itemRanges=other.m_itemRanges; + return *this; +} + inline int KItemSet::count() const { int result = 0;