libstdc++
ranges_base.h File Reference

Go to the source code of this file.

Classes

struct  std::ranges::dangling
 
struct  std::ranges::view_base
 
class  std::ranges::view_interface< _Derived >
 

Namespaces

 std
 

Typedefs

template<typename _Tp >
using std::ranges::__detail::__make_unsigned_like_t = decltype(__detail::__to_unsigned_like(std::declval< _Tp >()))
 
template<range _Range>
using std::ranges::borrowed_iterator_t = __conditional_t< borrowed_range< _Range >, iterator_t< _Range >, dangling >
 
template<typename _Tp >
using std::ranges::iterator_t = std::__detail::__range_iter_t< _Tp >
 
template<range _Range>
using std::ranges::range_difference_t = iter_difference_t< iterator_t< _Range >>
 
template<range _Range>
using std::ranges::range_reference_t = iter_reference_t< iterator_t< _Range >>
 
template<range _Range>
using std::ranges::range_rvalue_reference_t = iter_rvalue_reference_t< iterator_t< _Range >>
 
template<sized_range _Range>
using std::ranges::range_size_t = decltype(ranges::size(std::declval< _Range & >()))
 
template<range _Range>
using std::ranges::range_value_t = iter_value_t< iterator_t< _Range >>
 
template<range _Range>
using std::ranges::sentinel_t = decltype(ranges::end(std::declval< _Range & >()))
 

Functions

template<typename _To , typename _Tp >
decltype(auto) constexpr std::ranges::__cust_access::__as_const (_Tp &__t) noexcept
 
template<typename _Tp , typename _Up >
void std::ranges::__detail::__is_derived_from_view_interface_fn (const _Tp &, const view_interface< _Up > &)
 
constexpr __max_size_type std::ranges::__detail::__to_unsigned_like (__max_size_type __t) noexcept
 
constexpr __max_size_type std::ranges::__detail::__to_unsigned_like (__max_diff_type __t) noexcept
 
template<integral _Tp>
constexpr auto std::ranges::__detail::__to_unsigned_like (_Tp __t) noexcept
 
void std::ranges::__cust_access::end (auto &)=delete
 
void std::ranges::__cust_access::end (const auto &)=delete
 
void std::ranges::__cust_access::rbegin (auto &)=delete
 
void std::ranges::__cust_access::rbegin (const auto &)=delete
 
void std::ranges::__cust_access::rend (auto &)=delete
 
void std::ranges::__cust_access::rend (const auto &)=delete
 
void std::ranges::__cust_access::size (auto &)=delete
 
void std::ranges::__cust_access::size (const auto &)=delete
 

Variables

template<typename _Tp >
concept std::ranges::__cust_access::__adl_end
 
template<typename _Tp >
concept std::ranges::__cust_access::__adl_rbegin
 
template<typename _Tp >
concept std::ranges::__cust_access::__adl_rend
 
template<typename _Tp >
concept std::ranges::__cust_access::__adl_size
 
template<typename _Tp >
concept std::ranges::__cust_access::__begin_data
 
template<typename _Tp >
concept std::ranges::__cust_access::__eq_iter_empty
 
template<typename _Tp >
concept std::ranges::__detail::__is_derived_from_view_interface
 
template<typename _Tp >
constexpr bool std::ranges::__detail::__is_initializer_list
 
template<typename _Tp >
constexpr bool std::ranges::__detail::__is_initializer_list< initializer_list< _Tp > >
 
template<typename _Tp >
concept std::ranges::__detail::__maybe_borrowed_range
 
template<typename _Tp >
concept std::ranges::__cust_access::__member_data
 
template<typename _Tp >
concept std::ranges::__cust_access::__member_empty
 
template<typename _Tp >
concept std::ranges::__cust_access::__member_end
 
template<typename _Tp >
concept std::ranges::__cust_access::__member_rbegin
 
template<typename _Tp >
concept std::ranges::__cust_access::__member_rend
 
template<typename _Tp >
concept std::ranges::__cust_access::__member_size
 
template<typename _Tp >
concept std::ranges::__cust_access::__pointer_to_object
 
template<typename _Tp >
concept std::ranges::__cust_access::__reversable
 
template<typename _Tp >
concept std::ranges::__cust_access::__sentinel_size
 
template<typename _Tp >
concept std::ranges::__cust_access::__size0_empty
 
constexpr __advance_fn std::ranges::advance
 
constexpr __cust_access::_Begin std::ranges::__cust::begin
 
template<typename _Tp >
concept std::ranges::bidirectional_range
 
template<typename _Tp >
concept std::ranges::borrowed_range
 
constexpr __cust_access::_CBegin std::ranges::__cust::cbegin
 
constexpr __cust_access::_CData std::ranges::__cust::cdata
 
constexpr __cust_access::_CEnd std::ranges::__cust::cend
 
template<typename _Tp >
concept std::ranges::common_range
 
template<typename _Tp >
concept std::ranges::contiguous_range
 
constexpr __cust_access::_CRBegin std::ranges::__cust::crbegin
 
constexpr __cust_access::_CREnd std::ranges::__cust::crend
 
constexpr __cust_access::_Data std::ranges::__cust::data
 
template<typename >
constexpr bool std::ranges::disable_sized_range
 
constexpr __distance_fn std::ranges::distance
 
constexpr __cust_access::_Empty std::ranges::__cust::empty
 
template<typename _Tp >
constexpr bool std::ranges::enable_borrowed_range
 
template<typename _Tp >
constexpr bool std::ranges::enable_view
 
constexpr __cust_access::_End std::ranges::__cust::end
 
template<typename _Tp >
concept std::ranges::forward_range
 
template<typename _Tp >
concept std::ranges::input_range
 
constexpr __next_fn std::ranges::next
 
template<typename _Range , typename _Tp >
concept std::ranges::output_range
 
constexpr __prev_fn std::ranges::prev
 
template<typename _Tp >
concept std::ranges::random_access_range
 
template<typename _Tp >
concept std::ranges::range
 
constexpr __cust_access::_RBegin std::ranges::__cust::rbegin
 
constexpr __cust_access::_REnd std::ranges::__cust::rend
 
constexpr __cust_access::_Size std::ranges::__cust::size
 
template<typename _Tp >
concept std::ranges::sized_range
 
constexpr __cust_access::_SSize std::ranges::__cust::ssize
 
template<typename _Tp >
concept std::ranges::view
 
template<typename _Tp >
concept std::ranges::viewable_range
 

Detailed Description

This is an internal header file, included by other library headers. Do not attempt to use it directly. Instead, include <ranges>.

Definition in file ranges_base.h.