36 run_encoded_array_iterator<CONST>,
37 array_traits::const_reference,
38 std::forward_iterator_tag,
39 array_traits::const_reference>
43 using array_ptr_type = std::conditional_t<CONST, const run_end_encoded_array*, run_end_encoded_array*>;
55 array_ptr_type p_array =
nullptr;
57 std::uint64_t m_index = 0;
58 std::uint64_t m_run_end_index = 0;
59 std::uint64_t m_runs_left = 0;
66 array_ptr_type array_ptr,
68 std::uint64_t run_end_index
71 , p_encoded_values_array(array_ptr->p_encoded_values_array.get())
73 , m_run_end_index(run_end_index)
74 , m_runs_left(array_ptr->get_run_length(index))