forked from OctaForge/libostd
remove range push_ stuff
This commit is contained in:
parent
6ddb0f1b17
commit
8f70b60484
|
@ -779,9 +779,6 @@ public:
|
|||
void pop_front() { p_range.pop_front(); }
|
||||
void pop_back() { p_range.pop_back(); }
|
||||
|
||||
void push_front() { p_range.pop_front(); }
|
||||
void push_back() { p_range.push_back(); }
|
||||
|
||||
void pop_front_n(range_size_t<T> n) {
|
||||
p_range.pop_front_n(n);
|
||||
}
|
||||
|
@ -789,13 +786,6 @@ public:
|
|||
p_range.pop_back_n(n);
|
||||
}
|
||||
|
||||
void push_front_n(range_size_t<T> n) {
|
||||
p_range.push_front_n(n);
|
||||
}
|
||||
void push_back_n(range_size_t<T> n) {
|
||||
p_range.push_back_n(n);
|
||||
}
|
||||
|
||||
R front() const { return p_func(p_range.front()); }
|
||||
R back() const { return p_func(p_range.back()); }
|
||||
|
||||
|
|
|
@ -264,20 +264,6 @@ namespace detail {
|
|||
range.pop_back();
|
||||
}
|
||||
}
|
||||
|
||||
template<typename R>
|
||||
void push_front_n(R &range, range_size_t<R> n) {
|
||||
for (range_size_t<R> i = 0; i < n; ++i) {
|
||||
range.push_front();
|
||||
}
|
||||
}
|
||||
|
||||
template<typename R>
|
||||
void push_back_n(R &range, range_size_t<R> n) {
|
||||
for (range_size_t<R> i = 0; i < n; ++i) {
|
||||
range.push_back();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
template<typename>
|
||||
|
@ -314,16 +300,6 @@ struct input_range {
|
|||
detail::pop_back_n<B>(*static_cast<B *>(this), n);
|
||||
}
|
||||
|
||||
template<typename Size>
|
||||
void push_front_n(Size n) {
|
||||
detail::push_front_n<B>(*static_cast<B *>(this), n);
|
||||
}
|
||||
|
||||
template<typename Size>
|
||||
void push_back_n(Size n) {
|
||||
detail::push_back_n<B>(*static_cast<B *>(this), n);
|
||||
}
|
||||
|
||||
B iter() const {
|
||||
return B(*static_cast<B const *>(this));
|
||||
}
|
||||
|
@ -379,39 +355,18 @@ struct input_range {
|
|||
return tmp;
|
||||
}
|
||||
|
||||
B &operator--() {
|
||||
static_cast<B *>(this)->push_front();
|
||||
return *static_cast<B *>(this);
|
||||
}
|
||||
B operator--(int) {
|
||||
B tmp(*static_cast<B const *>(this));
|
||||
static_cast<B *>(this)->push_front();
|
||||
return tmp;
|
||||
}
|
||||
|
||||
template<typename Difference>
|
||||
B operator+(Difference n) const {
|
||||
B tmp(*static_cast<B const *>(this));
|
||||
tmp.pop_front_n(n);
|
||||
return tmp;
|
||||
}
|
||||
template<typename Difference>
|
||||
B operator-(Difference n) const {
|
||||
B tmp(*static_cast<B const *>(this));
|
||||
tmp.push_front_n(n);
|
||||
return tmp;
|
||||
}
|
||||
|
||||
template<typename Difference>
|
||||
B &operator+=(Difference n) {
|
||||
static_cast<B *>(this)->pop_front_n(n);
|
||||
return *static_cast<B *>(this);
|
||||
}
|
||||
template<typename Difference>
|
||||
B &operator-=(Difference n) {
|
||||
static_cast<B *>(this)->push_front_n(n);
|
||||
return *static_cast<B *>(this);
|
||||
}
|
||||
|
||||
/* pipe op, must be a member to work for user ranges automagically */
|
||||
|
||||
|
@ -682,15 +637,9 @@ public:
|
|||
void pop_front() { p_range.pop_back(); }
|
||||
void pop_back() { p_range.pop_front(); }
|
||||
|
||||
void push_front() { p_range.push_back(); }
|
||||
void push_back() { p_range.push_front(); }
|
||||
|
||||
void pop_front_n(size_type n) { p_range.pop_front_n(n); }
|
||||
void pop_back_n(size_type n) { p_range.pop_back_n(n); }
|
||||
|
||||
void push_front_n(size_type n) { p_range.push_front_n(n); }
|
||||
void push_back_n(size_type n) { p_range.push_back_n(n); }
|
||||
|
||||
reference front() const { return p_range.back(); }
|
||||
reference back() const { return p_range.front(); }
|
||||
|
||||
|
@ -758,15 +707,9 @@ public:
|
|||
void pop_front() { p_range.pop_front(); }
|
||||
void pop_back() { p_range.pop_back(); }
|
||||
|
||||
void push_front() { p_range.push_front(); }
|
||||
void push_back() { p_range.push_back(); }
|
||||
|
||||
void pop_front_n(size_type n) { p_range.pop_front_n(n); }
|
||||
void pop_back_n(size_type n) { p_range.pop_back_n(n); }
|
||||
|
||||
void push_front_n(size_type n) { p_range.push_front_n(n); }
|
||||
void push_back_n(size_type n) { p_range.push_back_n(n); }
|
||||
|
||||
reference front() const { return std::move(p_range.front()); }
|
||||
reference back() const { return std::move(p_range.back()); }
|
||||
|
||||
|
@ -1296,9 +1239,6 @@ struct iterator_range: input_range<iterator_range<T>> {
|
|||
}
|
||||
}
|
||||
}
|
||||
void push_front() {
|
||||
--p_beg;
|
||||
}
|
||||
|
||||
void pop_front_n(size_type n) {
|
||||
using IC = typename std::iterator_traits<T>::iterator_category;
|
||||
|
@ -1315,15 +1255,6 @@ struct iterator_range: input_range<iterator_range<T>> {
|
|||
}
|
||||
}
|
||||
|
||||
void push_front_n(size_type n) {
|
||||
using IC = typename std::iterator_traits<T>::iterator_category;
|
||||
if constexpr(std::is_convertible_v<IC, std::random_access_iterator_tag>) {
|
||||
p_beg -= n;
|
||||
} else {
|
||||
detail::push_front_n(*this, n);
|
||||
}
|
||||
}
|
||||
|
||||
reference front() const { return *p_beg; }
|
||||
|
||||
bool equals_front(iterator_range const &range) const {
|
||||
|
@ -1344,9 +1275,6 @@ struct iterator_range: input_range<iterator_range<T>> {
|
|||
}
|
||||
--p_end;
|
||||
}
|
||||
void push_back() {
|
||||
++p_end;
|
||||
}
|
||||
|
||||
void pop_back_n(size_type n) {
|
||||
using IC = typename std::iterator_traits<T>::iterator_category;
|
||||
|
@ -1363,15 +1291,6 @@ struct iterator_range: input_range<iterator_range<T>> {
|
|||
}
|
||||
}
|
||||
|
||||
void push_back_n(size_type n) {
|
||||
using IC = typename std::iterator_traits<T>::iterator_category;
|
||||
if constexpr(std::is_convertible_v<IC, std::random_access_iterator_tag>) {
|
||||
p_end += n;
|
||||
} else {
|
||||
detail::push_back_n(*this, n);
|
||||
}
|
||||
}
|
||||
|
||||
reference back() const { return *(p_end - 1); }
|
||||
|
||||
bool equals_back(iterator_range const &range) const {
|
||||
|
|
|
@ -83,9 +83,6 @@ public:
|
|||
throw std::out_of_range{"pop_front on empty range"};
|
||||
}
|
||||
}
|
||||
void push_front() {
|
||||
--p_beg;
|
||||
}
|
||||
|
||||
void pop_front_n(size_t n) {
|
||||
p_beg += n;
|
||||
|
@ -94,10 +91,6 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
void push_front_n(size_t n) {
|
||||
p_beg -= n;
|
||||
}
|
||||
|
||||
T &front() const { return *p_beg; }
|
||||
|
||||
bool equals_front(basic_char_range const &range) const {
|
||||
|
@ -114,9 +107,6 @@ public:
|
|||
}
|
||||
--p_end;
|
||||
}
|
||||
void push_back() {
|
||||
++p_end;
|
||||
}
|
||||
|
||||
void pop_back_n(size_t n) {
|
||||
p_end -= n;
|
||||
|
@ -125,10 +115,6 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
void push_back_n(size_t n) {
|
||||
p_end += n;
|
||||
}
|
||||
|
||||
T &back() const { return *(p_end - 1); }
|
||||
|
||||
bool equals_back(basic_char_range const &range) const {
|
||||
|
|
Loading…
Reference in a new issue