7#ifndef INCLUDE_GUARD_ARENE_BASE_ARENE_BASE_ALGORITHM_SORT_HPP_
8#define INCLUDE_GUARD_ARENE_BASE_ARENE_BASE_ALGORITHM_SORT_HPP_
13#include "arene/base/algorithm/detail/heap_sort.hpp"
14#include "arene/base/algorithm/detail/traits.hpp"
15#include "arene/base/compiler_support/cpp14_inline.hpp"
16#include "arene/base/stdlib_choice/enable_if.hpp"
17#include "arene/base/stdlib_choice/less.hpp"
18#include "arene/base/stdlib_choice/move.hpp"
19#include "arene/base/type_traits/is_compare.hpp"
20#include "arene/base/type_traits/is_invocable.hpp"
21#include "arene/base/type_traits/is_movable.hpp"
22#include "arene/base/type_traits/is_swappable.hpp"
23#include "arene/base/type_traits/iterator_category_traits.hpp"
24#include "arene/base/type_traits/remove_cvref.hpp"
29namespace algorithm_detail {
30namespace sort_detail {
72 class = std::enable_if_t<
73 is_random_access_iterator_v<I> &&
74 is_swappable_v<iter_reference_t<I>> &&
75 is_movable_v<remove_cvref_t<iter_reference_t<I>>> &&
76 is_compare_v<C&, iter_reference_t<I>>
78 constexpr auto operator()(I first, I last, C comp)
const noexcept(
79 is_nothrow_invocable_v<
decltype(heap_sort), I&&, I&&, C&&>
81 heap_sort(std::move(first), std::move(last), std::move(comp));
117 class = std::enable_if_t<
118 is_random_access_iterator_v<I> &&
119 is_swappable_v<iter_reference_t<I>> &&
120 is_movable_v<remove_cvref_t<iter_reference_t<I>>> &&
121 is_compare_v<std::less<>&, iter_reference_t<I>>>>
122 constexpr auto operator()(I first, I last)
const noexcept(
123 is_nothrow_invocable_v<sort_impl_fn
const&, I&&, I&&, std::less<>>
125 return (*
this)(std::move(first), std::move(last), std::less<>{});
Definition array_exceptions_disabled.cpp:11
ARENE_CPP14_INLINE_VARIABLE(algorithm_detail::sort_detail::sort_impl_fn, sort)
Copyright 2026, Toyota Motor Corporation.
Definition array_exceptions_disabled.cpp:10