mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
flat_base: take more common operations
This commit is contained in:
parent
a38ac6a52f
commit
f8166fac25
@ -125,6 +125,18 @@ public:
|
|||||||
key_compare key_comp() const {
|
key_compare key_comp() const {
|
||||||
return comp();
|
return comp();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Capacity.
|
||||||
|
|
||||||
|
bool empty() const { return data().empty(); }
|
||||||
|
size_t size() const { return data().size(); }
|
||||||
|
size_t max_size() const { return data().max_size(); }
|
||||||
|
|
||||||
|
// Modifiers.
|
||||||
|
|
||||||
|
void clear() {
|
||||||
|
data().clear();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace flat_detail
|
} // namespace flat_detail
|
||||||
@ -221,18 +233,8 @@ public:
|
|||||||
}
|
}
|
||||||
const_reverse_iterator rend() const { return crend(); }
|
const_reverse_iterator rend() const { return crend(); }
|
||||||
|
|
||||||
// Capacity.
|
|
||||||
|
|
||||||
bool empty() const { return data().empty(); }
|
|
||||||
size_t size() const { return data().size(); }
|
|
||||||
size_t max_size() const { return data().max_size(); }
|
|
||||||
|
|
||||||
// Modifiers.
|
// Modifiers.
|
||||||
|
|
||||||
void clear() {
|
|
||||||
data().clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
std::pair<iterator, bool> insert(const value_type &value) {
|
std::pair<iterator, bool> insert(const value_type &value) {
|
||||||
auto it = std::lower_bound(data().begin(), data().end(), value, comp());
|
auto it = std::lower_bound(data().begin(), data().end(), value, comp());
|
||||||
if (it == data().end() || comp()(value, *it)) {
|
if (it == data().end() || comp()(value, *it)) {
|
||||||
@ -442,12 +444,6 @@ public:
|
|||||||
}
|
}
|
||||||
const_reverse_iterator rend() const { return crend(); }
|
const_reverse_iterator rend() const { return crend(); }
|
||||||
|
|
||||||
// Capacity.
|
|
||||||
|
|
||||||
bool empty() const { return data().empty(); }
|
|
||||||
size_t size() const { return data().size(); }
|
|
||||||
size_t max_size() const { return data().max_size(); }
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
using storage_iterator = typename storage_type::iterator;
|
using storage_iterator = typename storage_type::iterator;
|
||||||
using storage_const_iterator = typename storage_type::const_iterator;
|
using storage_const_iterator = typename storage_type::const_iterator;
|
||||||
@ -504,10 +500,6 @@ private:
|
|||||||
public:
|
public:
|
||||||
// Modifiers.
|
// Modifiers.
|
||||||
|
|
||||||
void clear() {
|
|
||||||
data().clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
std::pair<iterator, bool> insert(const value_type &value) {
|
std::pair<iterator, bool> insert(const value_type &value) {
|
||||||
auto rv = data_insert(value);
|
auto rv = data_insert(value);
|
||||||
return std::make_pair(iterator(rv.first), rv.second);
|
return std::make_pair(iterator(rv.first), rv.second);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user