sstables: remove std::iterator from const_iterator

std::iterator is deprecated since C++17 so define all the required
iterator_traits directly.

Signed-off-by: Piotr Jastrzebski <piotr@scylladb.com>
This commit is contained in:
Piotr Jastrzebski
2020-11-17 16:31:37 +01:00
parent 661b52c7df
commit bacda100ec

View File

@@ -155,7 +155,14 @@ struct compression {
uint64_t at(std::size_t i, state& s) const;
void push_back(uint64_t offset, state& s);
public:
class const_iterator : public std::iterator<std::random_access_iterator_tag, const uint64_t> {
class const_iterator {
public:
using iterator_category = std::random_access_iterator_tag;
using value_type = const uint64_t;
using difference_type = std::ptrdiff_t;
using pointer = const uint64_t*;
using reference = const uint64_t&;
private:
friend class segmented_offsets;
struct end_tag {};