diff --git a/ostd/algorithm.hh b/ostd/algorithm.hh index 704a50b..080a56b 100644 --- a/ostd/algorithm.hh +++ b/ostd/algorithm.hh @@ -556,20 +556,6 @@ inline auto equal(R &&range) { }; } -template -R slice_until(R range1, R range2) { - return range1.slice(0, range1.distance_front(range2)); -} - -template -inline auto slice_until(R &&range) { - return [range = std::forward(range)](auto &&obj) mutable { - return slice_until( - std::forward(obj), std::forward(range) - ); - }; -} - /* algos that modify ranges or work with output ranges */ template @@ -769,13 +755,6 @@ public: return p_range.equals_front(r.p_range); } - range_difference_t distance_front(map_range const &r) const { - return p_range.distance_front(r.p_range); - } - range_difference_t distance_back(map_range const &r) const { - return p_range.distance_back(r.p_range); - } - void pop_front() { p_range.pop_front(); } void pop_back() { p_range.pop_back(); } diff --git a/ostd/range.hh b/ostd/range.hh index e928a14..1906214 100644 --- a/ostd/range.hh +++ b/ostd/range.hh @@ -627,13 +627,6 @@ public: return p_range.equals_front(r.p_range); } - difference_type distance_front(reverse_range const &r) const { - return -p_range.distance_back(r.p_range); - } - difference_type distance_back(reverse_range const &r) const { - return -p_range.distance_front(r.p_range); - } - void pop_front() { p_range.pop_back(); } void pop_back() { p_range.pop_front(); } @@ -697,13 +690,6 @@ public: return p_range.equals_back(r.p_range); } - difference_type distance_front(move_range const &r) const { - return p_range.distance_front(r.p_range); - } - difference_type distance_back(move_range const &r) const { - return p_range.distance_back(r.p_range); - } - void pop_front() { p_range.pop_front(); } void pop_back() { p_range.pop_back(); } @@ -1261,10 +1247,6 @@ struct iterator_range: input_range> { return p_beg == range.p_beg; } - difference_type distance_front(iterator_range const &range) const { - return range.p_beg - p_beg; - } - /* satisfy bidirectional_range */ void pop_back() { /* rely on iterators to do their own checks */ @@ -1297,10 +1279,6 @@ struct iterator_range: input_range> { return p_end == range.p_end; } - ptrdiff_t distance_back(iterator_range const &range) const { - return range.p_end - p_end; - } - /* satisfy finite_random_access_range */ size_type size() const { return size_type(p_end - p_beg); } diff --git a/ostd/string.hh b/ostd/string.hh index 0a777f0..a1c2d65 100644 --- a/ostd/string.hh +++ b/ostd/string.hh @@ -97,10 +97,6 @@ public: return p_beg == range.p_beg; } - ptrdiff_t distance_front(basic_char_range const &range) const { - return range.p_beg - p_beg; - } - void pop_back() { if (p_end == p_beg) { return; @@ -121,10 +117,6 @@ public: return p_end == range.p_end; } - ptrdiff_t distance_back(basic_char_range const &range) const { - return range.p_end - p_end; - } - size_t size() const { return p_end - p_beg; } basic_char_range slice(size_t start, size_t end) const {