std::ranges::range_reference_t, std::ranges::range_const_reference_t, std::ranges::range_rvalue_reference_t, std::ranges::range_common_reference_t

Header: <ranges>

  1. Used to obtain the reference type of the iterator type of range type R.

# Declarations

template< ranges::range R >
using range_reference_t = std::iter_reference_t<ranges::iterator_t<R>>;

(since C++20)

template< ranges::range R >
using range_const_reference_t =
std::iter_const_reference_t<ranges::iterator_t<R>>;

(since C++23)

template< ranges::range R >
using range_rvalue_reference_t =
std::iter_rvalue_reference_t<ranges::iterator_t<R>>;

(since C++20)

template< ranges::range R >
using range_common_reference_t =
std::iter_common_reference_t<ranges::iterator_t<R>>;

(since C++20)

# Defect reports

DRApplied toBehavior as publishedCorrect behavior
LWG 3860C++20range_common_reference_t was missingadded

# See also