Horizon
Loading...
Searching...
No Matches
ranges::common_iterator< I, S > Struct Template Reference

Public Types

using difference_type = iter_difference_t<I>

Public Member Functions

 common_iterator (I i)
 common_iterator (S s)
 template (typename I2, typename S2)(AND convertible_to< S2
common_iterator (common_iterator< I2, S2 > const &that)
 template (typename I2, typename S2)(AND convertible_to< S2
S common_iterator & operator= (common_iterator< I2, S2 > const &that)
iter_reference_t< I > operator* () noexcept(noexcept(iter_reference_t< I >(*std::declval< I & >())))
CPP_member auto operator* () const noexcept(noexcept(iter_reference_t< I >(*std::declval< I const & >()))) -> CPP_ret(iter_reference_t< I >)()
 template (typename J=I)() auto operator->() const noexcept(noexcept(common_iterator::operator_arrow_(std::declval< I const & >(), 42))) -> decltype(common_iterator::operator_arrow_(std::declval< J const & >(), 42))
common_iterator & operator++ ()
CPP_member auto operator++ (int) -> CPP_ret(decltype(std::declval< I & >()++))()
CPP_member auto operator++ (int) -> CPP_ret(common_iterator)()

Friends

variant< I, S > & detail::cidata (common_iterator< I, S > &)
variant< I, S > const & detail::cidata (common_iterator< I, S > const &)
template<typename I_ = I>
requires input_iterator<I_>
constexpr auto iter_move (common_iterator const &i) noexcept(detail::has_nothrow_iter_move_v< I >) -> CPP_broken_friend_ret(iter_rvalue_reference_t< I >)()
template<typename I2, typename S2>
requires indirectly_swappable<I2, I>
auto iter_swap (common_iterator const &x, common_iterator< I2, S2 > const &y) noexcept(is_nothrow_indirectly_swappable< I, I2 >::value) -> CPP_broken_friend_ret(void)()

The documentation for this struct was generated from the following file: