libstdc++
ranges_algobase.h File Reference

Go to the source code of this file.

Namespaces

namespace  std

Typedefs

template<typename _Iter1, typename _Iter2>
using std::ranges::copy_backward_result
template<typename _Iter, typename _Out>
using std::ranges::copy_n_result
template<typename _Iter, typename _Out>
using std::ranges::copy_result
template<typename _Iter1, typename _Iter2>
using std::ranges::move_backward_result
template<typename _Iter, typename _Out>
using std::ranges::move_result

Functions

template<bool _IsMove, typename _OutIter, typename _InIter>
constexpr void std::ranges::__detail::__assign_one (_OutIter &__out, _InIter &__in)
template<bool _IsMove, input_iterator _Iter, sentinel_for< _Iter > _Sent, weakly_incrementable _Out>
requires (_IsMove ? indirectly_movable<_Iter, _Out> : indirectly_copyable<_Iter, _Out>)
constexpr __conditional_t< _IsMove, move_result< _Iter, _Out >, copy_result< _Iter, _Out > > std::ranges::__copy_or_move (_Iter __first, _Sent __last, _Out __result)
template<bool _IsMove, bidirectional_iterator _Iter, sentinel_for< _Iter > _Sent, bidirectional_iterator _Out>
requires (_IsMove ? indirectly_movable<_Iter, _Out> : indirectly_copyable<_Iter, _Out>)
constexpr __conditional_t< _IsMove, move_backward_result< _Iter, _Out >, copy_backward_result< _Iter, _Out > > std::ranges::__copy_or_move_backward (_Iter __first, _Sent __last, _Out __result)

Variables

template<typename _Tp>
constexpr bool std::ranges::__detail::__is_move_iterator
template<typename _Iterator>
constexpr bool std::ranges::__detail::__is_move_iterator< move_iterator< _Iterator > >
template<typename _Tp>
constexpr bool std::ranges::__detail::__is_normal_iterator
template<typename _Iterator, typename _Container>
constexpr bool std::ranges::__detail::__is_normal_iterator< __gnu_cxx::__normal_iterator< _Iterator, _Container > >
template<typename _Tp>
constexpr bool std::ranges::__detail::__is_reverse_iterator
template<typename _Iterator>
constexpr bool std::ranges::__detail::__is_reverse_iterator< reverse_iterator< _Iterator > >
constexpr __copy_fn std::ranges::copy
constexpr __copy_backward_fn std::ranges::copy_backward
constexpr __copy_n_fn std::ranges::copy_n
constexpr __equal_fn std::ranges::equal
constexpr __fill_fn std::ranges::fill
constexpr __fill_n_fn std::ranges::fill_n
constexpr __move_fn std::ranges::move
constexpr __move_backward_fn std::ranges::move_backward

Detailed Description

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

Definition in file ranges_algobase.h.

Typedef Documentation

◆ copy_backward_result

template<typename _Iter1, typename _Iter2>
using std::ranges::copy_backward_result

Definition at line 236 of file ranges_algobase.h.

◆ copy_n_result

template<typename _Iter, typename _Out>
using std::ranges::copy_n_result

Definition at line 519 of file ranges_algobase.h.

◆ copy_result

template<typename _Iter, typename _Out>
using std::ranges::copy_result

Definition at line 227 of file ranges_algobase.h.

◆ move_backward_result

template<typename _Iter1, typename _Iter2>
using std::ranges::move_backward_result

Definition at line 233 of file ranges_algobase.h.

◆ move_result

template<typename _Iter, typename _Out>
using std::ranges::move_result

Definition at line 230 of file ranges_algobase.h.

Function Documentation

◆ __assign_one()

template<bool _IsMove, typename _OutIter, typename _InIter>
void std::ranges::__detail::__assign_one ( _OutIter & __out,
_InIter & __in )
constexpr

Definition at line 196 of file ranges_algobase.h.

◆ __copy_or_move()

template<bool _IsMove, input_iterator _Iter, sentinel_for< _Iter > _Sent, weakly_incrementable _Out>
requires (_IsMove ? indirectly_movable<_Iter, _Out> : indirectly_copyable<_Iter, _Out>)
__conditional_t< _IsMove, move_result< _Iter, _Out >, copy_result< _Iter, _Out > > std::ranges::__copy_or_move ( _Iter __first,
_Sent __last,
_Out __result )
constexpr

Definition at line 258 of file ranges_algobase.h.

◆ __copy_or_move_backward()

template<bool _IsMove, bidirectional_iterator _Iter, sentinel_for< _Iter > _Sent, bidirectional_iterator _Out>
requires (_IsMove ? indirectly_movable<_Iter, _Out> : indirectly_copyable<_Iter, _Out>)
__conditional_t< _IsMove, move_backward_result< _Iter, _Out >, copy_backward_result< _Iter, _Out > > std::ranges::__copy_or_move_backward ( _Iter __first,
_Sent __last,
_Out __result )
constexpr

Definition at line 392 of file ranges_algobase.h.

Variable Documentation

◆ __is_move_iterator

template<typename _Tp>
bool std::ranges::__detail::__is_move_iterator
inlineconstexpr

Definition at line 67 of file ranges_algobase.h.

◆ __is_move_iterator< move_iterator< _Iterator > >

template<typename _Iterator>
bool std::ranges::__detail::__is_move_iterator< move_iterator< _Iterator > >
inlineconstexpr

Definition at line 70 of file ranges_algobase.h.

◆ __is_normal_iterator

template<typename _Tp>
bool std::ranges::__detail::__is_normal_iterator
inlineconstexpr

Definition at line 52 of file ranges_algobase.h.

◆ __is_normal_iterator< __gnu_cxx::__normal_iterator< _Iterator, _Container > >

template<typename _Iterator, typename _Container>
bool std::ranges::__detail::__is_normal_iterator< __gnu_cxx::__normal_iterator< _Iterator, _Container > >
inlineconstexpr

Definition at line 55 of file ranges_algobase.h.

◆ __is_reverse_iterator

template<typename _Tp>
bool std::ranges::__detail::__is_reverse_iterator
inlineconstexpr

Definition at line 60 of file ranges_algobase.h.

◆ __is_reverse_iterator< reverse_iterator< _Iterator > >

template<typename _Iterator>
bool std::ranges::__detail::__is_reverse_iterator< reverse_iterator< _Iterator > >
inlineconstexpr

Definition at line 63 of file ranges_algobase.h.

◆ copy

__copy_fn std::ranges::copy
inlineconstexpr

Definition at line 356 of file ranges_algobase.h.

◆ copy_backward

__copy_backward_fn std::ranges::copy_backward
inlineconstexpr

Definition at line 491 of file ranges_algobase.h.

◆ copy_n

__copy_n_fn std::ranges::copy_n
inlineconstexpr

Definition at line 543 of file ranges_algobase.h.

◆ equal

__equal_fn std::ranges::equal
inlineconstexpr

Definition at line 189 of file ranges_algobase.h.

◆ fill

__fill_fn std::ranges::fill
inlineconstexpr

Definition at line 633 of file ranges_algobase.h.

◆ fill_n

__fill_n_fn std::ranges::fill_n
inlineconstexpr

Definition at line 590 of file ranges_algobase.h.

◆ move

__move_fn std::ranges::move
inlineconstexpr

Definition at line 381 of file ranges_algobase.h.

◆ move_backward

__move_backward_fn std::ranges::move_backward
inlineconstexpr

Definition at line 516 of file ranges_algobase.h.