31 run_encoded_array_iterator<is_const>,
32 array_traits::const_reference,
33 std::forward_iterator_tag,
34 array_traits::const_reference>
38 using array_ptr_type = std::conditional_t<is_const, const run_end_encoded_array*, run_end_encoded_array*>;
50 array_ptr_type p_array =
nullptr;
52 std::uint64_t m_index = 0;
53 std::uint64_t m_run_end_index = 0;
54 std::uint64_t m_runs_left = 0;
61 array_ptr_type array_ptr,
63 std::uint64_t run_end_index
66 , p_encoded_values_array(array_ptr->p_encoded_values_array.get())
68 , m_run_end_index(run_end_index)
69 , m_runs_left(array_ptr->get_run_length(index))