libstdc++
iterator_concepts.h File Reference

Go to the source code of this file.

Classes

struct  std::default_sentinel_t
 

Namespaces

namespace  std
 
namespace  std::__detail
 

Concepts

concept  std::indirectly_readable
 
concept  std::indirectly_writable
 
concept  std::weakly_incrementable
 
concept  std::indirectly_movable
 
concept  std::indirectly_copyable
 
concept  std::indirectly_swappable
 
concept  std::indirectly_comparable
 
concept  std::permutable
 
concept  std::mergeable
 
concept  std::sortable
 

Typedefs

template<typename _Iter >
using std::__detail::__iter_concept
 
template<typename _Tp >
using std::__detail::__iter_diff_t
 
template<typename _Iter , typename _Tp = _Iter>
using std::__detail::__iter_traits
 
template<typename _Tp >
using std::__detail::__iter_value_t
 
template<typename _Tp >
using std::__detail::__range_iter_t
 
template<typename _Tp >
using std::__detail::__with_ref
 
template<typename _Fn , typename... _Is>
using std::indirect_result_t
 
template<indirectly_readable _Tp>
using std::iter_common_reference_t
 
template<typename _Tp >
using std::iter_difference_t
 
template<__detail::__dereferenceable _Tp>
using std::iter_reference_t
 
template<__detail::__dereferenceable _Tp>
using std::iter_rvalue_reference_t
 
template<typename _Tp >
using std::iter_value_t
 
template<indirectly_readable _Iter, indirectly_regular_unary_invocable< _Iter > _Proj>
using std::projected
 

Functions

template<typename _Tp >
requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
auto std::ranges::__cust_access::__begin (_Tp &__t)
 
template<typename _Xp , typename _Yp >
constexpr iter_value_t< _Xpstd::ranges::__cust_iswap::__iter_exchange_move (_Xp &&__x, _Yp &&__y) noexcept(noexcept(iter_value_t< _Xp >(iter_move(__x))) &&noexcept(*__x=iter_move(__y)))
 
void std::ranges::__cust_access::begin (auto &)=delete
 
void std::ranges::__cust_access::begin (const auto &)=delete
 
void std::ranges::__cust_imove::iter_move ()
 
template<typename _It1 , typename _It2 >
void std::ranges::__cust_iswap::iter_swap (_It1, _It2)=delete
 

Variables

struct std::ranges::__cust_access::_Decay_copy std::ranges::__cust_access::__decay_copy
 
constexpr default_sentinel_t std::default_sentinel
 
template<typename _Sent , typename _Iter >
constexpr bool std::disable_sized_sentinel_for
 
constexpr __cust_imove::_IMove std::ranges::iter_move
 
constexpr __cust_iswap::_IterSwap std::ranges::iter_swap
 
constexpr unreachable_sentinel_t std::unreachable_sentinel
 

Detailed Description

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

Definition in file iterator_concepts.h.

Function Documentation

◆ __begin()

template<typename _Tp >
requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
auto std::ranges::__cust_access::__begin ( _Tp & __t)

Definition at line 996 of file iterator_concepts.h.

◆ __iter_exchange_move()

template<typename _Xp , typename _Yp >
constexpr iter_value_t< _Xp > std::ranges::__cust_iswap::__iter_exchange_move ( _Xp && __x,
_Yp && __y )
constexprnoexcept

Definition at line 848 of file iterator_concepts.h.

Variable Documentation

◆ iter_move

constexpr __cust_imove::_IMove std::ranges::__cust::iter_move
inlineconstexpr

Definition at line 160 of file iterator_concepts.h.

◆ iter_swap

constexpr __cust_iswap::_IterSwap std::ranges::__cust::iter_swap
inlineconstexpr

Definition at line 904 of file iterator_concepts.h.