Added constant index operator to VectorMap.
This commit is contained in:
parent
48aeb32ee5
commit
36a9b60e0b
@ -135,6 +135,11 @@ public:
|
|||||||
return emplace(key, TValue()).first->second;
|
return emplace(key, TValue()).first->second;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const TValue& operator[](const TKey& key) const
|
||||||
|
{
|
||||||
|
return at(key);
|
||||||
|
}
|
||||||
|
|
||||||
[[nodiscard]]
|
[[nodiscard]]
|
||||||
iterator begin() MIJIN_NOEXCEPT { return {keys_.data(), values_.data()}; }
|
iterator begin() MIJIN_NOEXCEPT { return {keys_.data(), values_.data()}; }
|
||||||
[[nodiscard]]
|
[[nodiscard]]
|
||||||
@ -176,6 +181,11 @@ public:
|
|||||||
size_type size() const MIJIN_NOEXCEPT { return keys_.size(); }
|
size_type size() const MIJIN_NOEXCEPT { return keys_.size(); }
|
||||||
[[nodiscard]]
|
[[nodiscard]]
|
||||||
size_type max_size() const MIJIN_NOEXCEPT { return std::min(keys_.max_size(), values_.max_size()); }
|
size_type max_size() const MIJIN_NOEXCEPT { return std::min(keys_.max_size(), values_.max_size()); }
|
||||||
|
void reserve(std::size_t size)
|
||||||
|
{
|
||||||
|
keys_.reserve(size);
|
||||||
|
values_.reserve(size);
|
||||||
|
}
|
||||||
|
|
||||||
void clear()
|
void clear()
|
||||||
{
|
{
|
||||||
@ -241,7 +251,7 @@ public:
|
|||||||
{
|
{
|
||||||
if (keys_[idx] == key)
|
if (keys_[idx] == key)
|
||||||
{
|
{
|
||||||
return iterator(&keys_[idx], &values_[idx]);
|
return const_iterator(&keys_[idx], &values_[idx]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return end();
|
return end();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user