QFlatMap: fix const iterator API

Iterators model pointer, so const must be shallow.

Pick-to: 6.3 6.2
Change-Id: I90494c98762f1494efcca4965ee739540333f5d7
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
This commit is contained in:
Marc Mutz 2022-01-07 10:10:44 +01:00
parent e6cd1eb079
commit a5b158ed6d

View File

@ -161,12 +161,12 @@ public:
{
}
reference operator*()
reference operator*() const
{
return { c->keys[i], c->values[i] };
}
pointer operator->()
pointer operator->() const
{
return { operator*() };
}
@ -242,7 +242,7 @@ public:
return b.i - a.i;
}
reference operator[](size_type n)
reference operator[](size_type n) const
{
size_type k = i + n;
return { c->keys[k], c->values[k] };
@ -269,7 +269,7 @@ public:
}
const Key &key() const { return c->keys[i]; }
T &value() { return c->values[i]; }
T &value() const { return c->values[i]; }
private:
containers *c = nullptr;
@ -298,12 +298,12 @@ public:
{
}
reference operator*()
reference operator*() const
{
return { c->keys[i], c->values[i] };
}
pointer operator->()
pointer operator->() const
{
return { operator*() };
}
@ -379,7 +379,7 @@ public:
return b.i - a.i;
}
reference operator[](size_type n)
reference operator[](size_type n) const
{
size_type k = i + n;
return { c->keys[k], c->values[k] };
@ -406,7 +406,7 @@ public:
}
const Key &key() const { return c->keys[i]; }
const T &value() { return c->values[i]; }
const T &value() const { return c->values[i]; }
private:
const containers *c = nullptr;