libstdc++
ranges_algo.h File Reference

Go to the source code of this file.

Namespaces

namespace  std
 

Typedefs

template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::binary_transform_result
 
template<typename _Iter , typename _Out >
using std::ranges::copy_if_result
 
template<typename _Iter , typename _Fp >
using std::ranges::for_each_n_result
 
template<typename _Iter , typename _Fp >
using std::ranges::for_each_result
 
template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::merge_result
 
template<typename _Iter >
using std::ranges::minmax_element_result
 
template<typename _Tp >
using std::ranges::minmax_result
 
template<typename _Iter >
using std::ranges::next_permutation_result
 
template<typename _Iter , typename _Out >
using std::ranges::partial_sort_copy_result
 
template<typename _Iter , typename _Out1 , typename _Out2 >
using std::ranges::partition_copy_result
 
template<typename _Iter >
using std::ranges::prev_permutation_result
 
template<typename _Iter , typename _Out >
using std::ranges::remove_copy_if_result
 
template<typename _Iter , typename _Out >
using std::ranges::remove_copy_result
 
template<typename _Iter , typename _Out >
using std::ranges::replace_copy_if_result
 
template<typename _Iter , typename _Out >
using std::ranges::replace_copy_result
 
template<typename _Iter , typename _Out >
using std::ranges::reverse_copy_result
 
template<typename _Iter , typename _Out >
using std::ranges::rotate_copy_result
 
template<typename _Iter , typename _Out >
using std::ranges::set_difference_result
 
template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::set_intersection_result
 
template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::set_symmetric_difference_result
 
template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::set_union_result
 
template<typename _Iter1 , typename _Iter2 >
using std::ranges::swap_ranges_result
 
template<typename _Iter , typename _Out >
using std::ranges::unary_transform_result
 
template<typename _Iter , typename _Out >
using std::ranges::unique_copy_result
 

Functions

template<typename _Comp , typename _Proj >
constexpr auto std::ranges::__detail::__make_comp_proj (_Comp &__comp, _Proj &__proj)
 
template<typename _Pred , typename _Proj >
constexpr auto std::ranges::__detail::__make_pred_proj (_Pred &__pred, _Proj &__proj)
 
template<typename _ForwardIterator >
constexpr _ForwardIterator std::shift_left (_ForwardIterator __first, _ForwardIterator __last, typename iterator_traits< _ForwardIterator >::difference_type __n)
 
template<typename _ForwardIterator >
constexpr _ForwardIterator std::shift_right (_ForwardIterator __first, _ForwardIterator __last, typename iterator_traits< _ForwardIterator >::difference_type __n)
 

Variables

constexpr __all_of_fn std::ranges::all_of
 
constexpr __any_of_fn std::ranges::any_of
 
constexpr __binary_search_fn std::ranges::binary_search
 
constexpr __clamp_fn std::ranges::clamp
 
constexpr __copy_if_fn std::ranges::copy_if
 
constexpr __count_fn std::ranges::count
 
constexpr __count_if_fn std::ranges::count_if
 
constexpr __equal_range_fn std::ranges::equal_range
 
constexpr __find_end_fn std::ranges::find_end
 
constexpr __find_first_of_fn std::ranges::find_first_of
 
constexpr __for_each_fn std::ranges::for_each
 
constexpr __for_each_n_fn std::ranges::for_each_n
 
constexpr __generate_fn std::ranges::generate
 
constexpr __generate_n_fn std::ranges::generate_n
 
constexpr __includes_fn std::ranges::includes
 
constexpr __inplace_merge_fn std::ranges::inplace_merge
 
constexpr __is_heap_fn std::ranges::is_heap
 
constexpr __is_heap_until_fn std::ranges::is_heap_until
 
constexpr __is_partitioned_fn std::ranges::is_partitioned
 
constexpr __is_permutation_fn std::ranges::is_permutation
 
constexpr __is_sorted_fn std::ranges::is_sorted
 
constexpr __is_sorted_until_fn std::ranges::is_sorted_until
 
constexpr __lexicographical_compare_fn std::ranges::lexicographical_compare
 
constexpr __lower_bound_fn std::ranges::lower_bound
 
constexpr __make_heap_fn std::ranges::make_heap
 
constexpr __max_fn std::ranges::max
 
constexpr __max_element_fn std::ranges::max_element
 
constexpr __merge_fn std::ranges::merge
 
constexpr __min_element_fn std::ranges::min_element
 
constexpr __minmax_fn std::ranges::minmax
 
constexpr __minmax_element_fn std::ranges::minmax_element
 
constexpr __next_permutation_fn std::ranges::next_permutation
 
constexpr __none_of_fn std::ranges::none_of
 
constexpr __nth_element_fn std::ranges::nth_element
 
constexpr __partial_sort_fn std::ranges::partial_sort
 
constexpr __partial_sort_copy_fn std::ranges::partial_sort_copy
 
constexpr __partition_fn std::ranges::partition
 
constexpr __partition_copy_fn std::ranges::partition_copy
 
constexpr __partition_point_fn std::ranges::partition_point
 
constexpr __pop_heap_fn std::ranges::pop_heap
 
constexpr __prev_permutation_fn std::ranges::prev_permutation
 
constexpr __push_heap_fn std::ranges::push_heap
 
constexpr __remove_fn std::ranges::remove
 
constexpr __remove_copy_fn std::ranges::remove_copy
 
constexpr __remove_copy_if_fn std::ranges::remove_copy_if
 
constexpr __remove_if_fn std::ranges::remove_if
 
constexpr __replace_fn std::ranges::replace
 
constexpr __replace_copy_fn std::ranges::replace_copy
 
constexpr __replace_copy_if_fn std::ranges::replace_copy_if
 
constexpr __replace_if_fn std::ranges::replace_if
 
constexpr __reverse_fn std::ranges::reverse
 
constexpr __reverse_copy_fn std::ranges::reverse_copy
 
constexpr __rotate_fn std::ranges::rotate
 
constexpr __rotate_copy_fn std::ranges::rotate_copy
 
constexpr __sample_fn std::ranges::sample
 
constexpr __search_n_fn std::ranges::search_n
 
constexpr __set_difference_fn std::ranges::set_difference
 
constexpr __set_intersection_fn std::ranges::set_intersection
 
constexpr __set_symmetric_difference_fn std::ranges::set_symmetric_difference
 
constexpr __set_union_fn std::ranges::set_union
 
constexpr __shuffle_fn std::ranges::shuffle
 
constexpr __sort_fn std::ranges::sort
 
constexpr __sort_heap_fn std::ranges::sort_heap
 
constexpr __stable_partition_fn std::ranges::stable_partition
 
constexpr __stable_sort_fn std::ranges::stable_sort
 
constexpr __swap_ranges_fn std::ranges::swap_ranges
 
constexpr __transform_fn std::ranges::transform
 
constexpr __unique_fn std::ranges::unique
 
constexpr __unique_copy_fn std::ranges::unique_copy
 
constexpr __upper_bound_fn std::ranges::upper_bound
 

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_algo.h.

Typedef Documentation

◆ binary_transform_result

template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::binary_transform_result

Definition at line 706 of file ranges_algo.h.

◆ copy_if_result

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

Definition at line 609 of file ranges_algo.h.

◆ for_each_n_result

template<typename _Iter , typename _Fp >
using std::ranges::for_each_n_result

Definition at line 208 of file ranges_algo.h.

◆ for_each_result

template<typename _Iter , typename _Fp >
using std::ranges::for_each_result

Definition at line 179 of file ranges_algo.h.

◆ merge_result

template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::merge_result

Definition at line 2487 of file ranges_algo.h.

◆ minmax_element_result

template<typename _Iter >
using std::ranges::minmax_element_result

Definition at line 3146 of file ranges_algo.h.

◆ minmax_result

template<typename _Tp >
using std::ranges::minmax_result

Definition at line 2978 of file ranges_algo.h.

◆ next_permutation_result

template<typename _Iter >
using std::ranges::next_permutation_result

Definition at line 3351 of file ranges_algo.h.

◆ partial_sort_copy_result

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

Definition at line 1880 of file ranges_algo.h.

◆ partition_copy_result

template<typename _Iter , typename _Out1 , typename _Out2 >
using std::ranges::partition_copy_result

Definition at line 2395 of file ranges_algo.h.

◆ prev_permutation_result

template<typename _Iter >
using std::ranges::prev_permutation_result

Definition at line 3413 of file ranges_algo.h.

◆ remove_copy_if_result

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

Definition at line 1045 of file ranges_algo.h.

◆ remove_copy_result

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

Definition at line 1084 of file ranges_algo.h.

◆ replace_copy_if_result

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

Definition at line 892 of file ranges_algo.h.

◆ replace_copy_result

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

Definition at line 849 of file ranges_algo.h.

◆ reverse_copy_result

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

Definition at line 1302 of file ranges_algo.h.

◆ rotate_copy_result

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

Definition at line 1483 of file ranges_algo.h.

◆ set_difference_result

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

Definition at line 2755 of file ranges_algo.h.

◆ set_intersection_result

template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::set_intersection_result

Definition at line 2697 of file ranges_algo.h.

◆ set_symmetric_difference_result

template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::set_symmetric_difference_result

Definition at line 2812 of file ranges_algo.h.

◆ set_union_result

template<typename _Iter1 , typename _Iter2 , typename _Out >
using std::ranges::set_union_result

Definition at line 2629 of file ranges_algo.h.

◆ swap_ranges_result

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

Definition at line 648 of file ranges_algo.h.

◆ unary_transform_result

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

Definition at line 679 of file ranges_algo.h.

◆ unique_copy_result

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

Definition at line 1170 of file ranges_algo.h.

Function Documentation

◆ __make_comp_proj()

template<typename _Comp , typename _Proj >
auto std::ranges::__detail::__make_comp_proj ( _Comp & __comp,
_Proj & __proj )
constexpr

Definition at line 52 of file ranges_algo.h.

◆ __make_pred_proj()

template<typename _Pred , typename _Proj >
auto std::ranges::__detail::__make_pred_proj ( _Pred & __pred,
_Proj & __proj )
constexpr

Definition at line 65 of file ranges_algo.h.

Variable Documentation

◆ all_of

__all_of_fn std::ranges::all_of
inlineconstexpr

Definition at line 100 of file ranges_algo.h.

◆ any_of

__any_of_fn std::ranges::any_of
inlineconstexpr

Definition at line 128 of file ranges_algo.h.

◆ binary_search

__binary_search_fn std::ranges::binary_search
inlineconstexpr

Definition at line 2233 of file ranges_algo.h.

◆ clamp

__clamp_fn std::ranges::clamp
inlineconstexpr

Definition at line 2956 of file ranges_algo.h.

◆ copy_if

__copy_if_fn std::ranges::copy_if
inlineconstexpr

Definition at line 645 of file ranges_algo.h.

◆ count

__count_fn std::ranges::count
inlineconstexpr

Definition at line 311 of file ranges_algo.h.

◆ count_if

__count_if_fn std::ranges::count_if
inlineconstexpr

Definition at line 341 of file ranges_algo.h.

◆ equal_range

__equal_range_fn std::ranges::equal_range
inlineconstexpr

Definition at line 2200 of file ranges_algo.h.

◆ find_end

__find_end_fn std::ranges::find_end
inlineconstexpr

Definition at line 510 of file ranges_algo.h.

◆ find_first_of

__find_first_of_fn std::ranges::find_first_of
inlineconstexpr

Definition at line 279 of file ranges_algo.h.

◆ for_each

__for_each_fn std::ranges::for_each
inlineconstexpr

Definition at line 205 of file ranges_algo.h.

◆ for_each_n

__for_each_n_fn std::ranges::for_each_n
inlineconstexpr

Definition at line 238 of file ranges_algo.h.

◆ generate

__generate_fn std::ranges::generate
inlineconstexpr

Definition at line 970 of file ranges_algo.h.

◆ generate_n

__generate_n_fn std::ranges::generate_n
inlineconstexpr

Definition at line 945 of file ranges_algo.h.

◆ includes

__includes_fn std::ranges::includes
inlineconstexpr

Definition at line 2626 of file ranges_algo.h.

◆ inplace_merge

__inplace_merge_fn std::ranges::inplace_merge
inlineconstexpr

Definition at line 2576 of file ranges_algo.h.

◆ is_heap

__is_heap_fn std::ranges::is_heap
inlineconstexpr

Definition at line 1778 of file ranges_algo.h.

◆ is_heap_until

__is_heap_until_fn std::ranges::is_heap_until
inlineconstexpr

Definition at line 1748 of file ranges_algo.h.

◆ is_partitioned

__is_partitioned_fn std::ranges::is_partitioned
inlineconstexpr

Definition at line 2264 of file ranges_algo.h.

◆ is_permutation

__is_permutation_fn std::ranges::is_permutation
inlineconstexpr

Definition at line 606 of file ranges_algo.h.

◆ is_sorted

__is_sorted_fn std::ranges::is_sorted
inlineconstexpr

Definition at line 2022 of file ranges_algo.h.

◆ is_sorted_until

__is_sorted_until_fn std::ranges::is_sorted_until
inlineconstexpr

Definition at line 1987 of file ranges_algo.h.

◆ lexicographical_compare

__lexicographical_compare_fn std::ranges::lexicographical_compare
inlineconstexpr

Definition at line 3329 of file ranges_algo.h.

◆ lower_bound

__lower_bound_fn std::ranges::lower_bound
inlineconstexpr

Definition at line 2096 of file ranges_algo.h.

◆ make_heap

__make_heap_fn std::ranges::make_heap
inlineconstexpr

Definition at line 1683 of file ranges_algo.h.

◆ max

__max_fn std::ranges::max
inlineconstexpr

Definition at line 2932 of file ranges_algo.h.

◆ max_element

__max_element_fn std::ranges::max_element
inlineconstexpr

Definition at line 3143 of file ranges_algo.h.

◆ merge

__merge_fn std::ranges::merge
inlineconstexpr

Definition at line 2545 of file ranges_algo.h.

◆ min_element

__min_element_fn std::ranges::min_element
inlineconstexpr

Definition at line 3106 of file ranges_algo.h.

◆ minmax

__minmax_fn std::ranges::minmax
inlineconstexpr

Definition at line 3069 of file ranges_algo.h.

◆ minmax_element

__minmax_element_fn std::ranges::minmax_element
inlineconstexpr

Definition at line 3217 of file ranges_algo.h.

◆ next_permutation

__next_permutation_fn std::ranges::next_permutation
inlineconstexpr

Definition at line 3410 of file ranges_algo.h.

◆ none_of

__none_of_fn std::ranges::none_of
inlineconstexpr

Definition at line 156 of file ranges_algo.h.

◆ nth_element

__nth_element_fn std::ranges::nth_element
inlineconstexpr

Definition at line 2052 of file ranges_algo.h.

◆ partial_sort

__partial_sort_fn std::ranges::partial_sort
inlineconstexpr

Definition at line 1877 of file ranges_algo.h.

◆ partial_sort_copy

__partial_sort_copy_fn std::ranges::partial_sort_copy
inlineconstexpr

Definition at line 1952 of file ranges_algo.h.

◆ partition

__partition_fn std::ranges::partition
inlineconstexpr

Definition at line 2335 of file ranges_algo.h.

◆ partition_copy

__partition_copy_fn std::ranges::partition_copy
inlineconstexpr

Definition at line 2443 of file ranges_algo.h.

◆ partition_point

__partition_point_fn std::ranges::partition_point
inlineconstexpr

Definition at line 2484 of file ranges_algo.h.

◆ pop_heap

__pop_heap_fn std::ranges::pop_heap
inlineconstexpr

Definition at line 1655 of file ranges_algo.h.

◆ prev_permutation

__prev_permutation_fn std::ranges::prev_permutation
inlineconstexpr

Definition at line 3472 of file ranges_algo.h.

◆ push_heap

__push_heap_fn std::ranges::push_heap
inlineconstexpr

Definition at line 1627 of file ranges_algo.h.

◆ remove

__remove_fn std::ranges::remove
inlineconstexpr

Definition at line 1042 of file ranges_algo.h.

◆ remove_copy

__remove_copy_fn std::ranges::remove_copy
inlineconstexpr

Definition at line 1122 of file ranges_algo.h.

◆ remove_copy_if

__remove_copy_if_fn std::ranges::remove_copy_if
inlineconstexpr

Definition at line 1081 of file ranges_algo.h.

◆ remove_if

__remove_if_fn std::ranges::remove_if
inlineconstexpr

Definition at line 1009 of file ranges_algo.h.

◆ replace

__replace_fn std::ranges::replace
inlineconstexpr

Definition at line 815 of file ranges_algo.h.

◆ replace_copy

__replace_copy_fn std::ranges::replace_copy
inlineconstexpr

Definition at line 889 of file ranges_algo.h.

◆ replace_copy_if

__replace_copy_if_fn std::ranges::replace_copy_if
inlineconstexpr

Definition at line 929 of file ranges_algo.h.

◆ replace_if

__replace_if_fn std::ranges::replace_if
inlineconstexpr

Definition at line 846 of file ranges_algo.h.

◆ reverse

__reverse_fn std::ranges::reverse
inlineconstexpr

Definition at line 1299 of file ranges_algo.h.

◆ reverse_copy

__reverse_copy_fn std::ranges::reverse_copy
inlineconstexpr

Definition at line 1333 of file ranges_algo.h.

◆ rotate

__rotate_fn std::ranges::rotate
inlineconstexpr

Definition at line 1480 of file ranges_algo.h.

◆ rotate_copy

__rotate_copy_fn std::ranges::rotate_copy
inlineconstexpr

Definition at line 1513 of file ranges_algo.h.

◆ sample

__sample_fn std::ranges::sample
inlineconstexpr

Definition at line 1572 of file ranges_algo.h.

◆ search_n

__search_n_fn std::ranges::search_n
inlineconstexpr

Definition at line 433 of file ranges_algo.h.

◆ set_difference

__set_difference_fn std::ranges::set_difference
inlineconstexpr

Definition at line 2809 of file ranges_algo.h.

◆ set_intersection

__set_intersection_fn std::ranges::set_intersection
inlineconstexpr

Definition at line 2752 of file ranges_algo.h.

◆ set_symmetric_difference

__set_symmetric_difference_fn std::ranges::set_symmetric_difference
inlineconstexpr

Definition at line 2876 of file ranges_algo.h.

◆ set_union

__set_union_fn std::ranges::set_union
inlineconstexpr

Definition at line 2694 of file ranges_algo.h.

◆ shuffle

__shuffle_fn std::ranges::shuffle
inlineconstexpr

Definition at line 1599 of file ranges_algo.h.

◆ sort

__sort_fn std::ranges::sort
inlineconstexpr

Definition at line 1806 of file ranges_algo.h.

◆ sort_heap

__sort_heap_fn std::ranges::sort_heap
inlineconstexpr

Definition at line 1711 of file ranges_algo.h.

◆ stable_partition

__stable_partition_fn std::ranges::stable_partition
inlineconstexpr

Definition at line 2367 of file ranges_algo.h.

◆ stable_sort

__stable_sort_fn std::ranges::stable_sort
inlineconstexpr

Definition at line 1834 of file ranges_algo.h.

◆ swap_ranges

__swap_ranges_fn std::ranges::swap_ranges
inlineconstexpr

Definition at line 676 of file ranges_algo.h.

◆ transform

__transform_fn std::ranges::transform
inlineconstexpr

Definition at line 779 of file ranges_algo.h.

◆ unique

__unique_fn std::ranges::unique
inlineconstexpr

Definition at line 1160 of file ranges_algo.h.

◆ unique_copy

__unique_copy_fn std::ranges::unique_copy
inlineconstexpr

Definition at line 1250 of file ranges_algo.h.

◆ upper_bound

__upper_bound_fn std::ranges::upper_bound
inlineconstexpr

Definition at line 2140 of file ranges_algo.h.