7#if !defined(TETENGO_TRIE_DOUBLEARRAYITERATOR_HPP)
8#define TETENGO_TRIE_DOUBLEARRAYITERATOR_HPP
19#include <boost/stl_interfaces/iterator_interface.hpp>
31 public boost::stl_interfaces::iterator_interface<double_array_iterator, std ::forward_iterator_tag, std::int32_t>
59 [[nodiscard]]
const std::int32_t&
operator*()
const;
113 std::stack<std::pair<std::size_t, std::string>, std::vector<std::pair<std::size_t, std::string>>>
114 m_base_check_index_key_stack;
116 std::optional<std::int32_t> m_current;
121 std::optional<std::int32_t> next();
A double array iterator.
Definition double_array_iterator.hpp:32
const std::int32_t & operator*() const
Dereferences the iterator.
const std::int32_t * operator->() const
Returns the pointer to the value.
double_array_iterator operator++(int)
Postincrements the iterator.
friend bool operator==(const double_array_iterator &one, const double_array_iterator &another)
Returns true when one iterator is equal to another.
std::int32_t * operator->()
Returns the pointer to the value.
double_array_iterator & operator++()
Increments the iterator.
double_array_iterator(const storage &storage_, std::size_t root_base_check_index)
Creates an iterator.
std::int32_t & operator*()
Dereferences the iterator.
double_array_iterator()
Creates an iterator.
A storage.
Definition storage.hpp:28