std::experimental::ranges::SizedRange

From cppreference.com
< cpp‎ | experimental‎ | ranges
 
 
Technical specifications
Filesystem library (filesystem TS)
Library fundamentals (library fundamentals TS)
Library fundamentals 2 (library fundamentals TS v2)
Library fundamentals 3 (library fundamentals TS v3)
Extensions for parallelism (parallelism TS)
Extensions for parallelism 2 (parallelism TS v2)
Extensions for concurrency (concurrency TS)
Extensions for concurrency 2 (concurrency TS v2)
Concepts (concepts TS)
Ranges (ranges TS)
Reflection (reflection TS)
Mathematical special functions (special functions TR)
 
 
Ranges library
Range concepts
SizedRange
Range access
Range primitives
                              
                              

 
Defined in header <experimental/ranges/range>
template <class T>

concept bool SizedRange =
  Range<T> &&
  !ranges::disable_sized_range<std::remove_cv_t<std::remove_reference_t<T>>> &&
  requires(T& t) {
    { ranges::size(t) }
      -> ConvertibleTo<ranges::difference_type_t<ranges::iterator_t<T>>>;

  };
(ranges TS)