\hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort}{}\doxysection{KBLIB\+\_\+\+NS\+::detail\+\_\+sort Namespace Reference} \label{namespace_k_b_l_i_b___n_s_1_1detail__sort}\index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsection*{Classes} \begin{DoxyCompactItemize} \item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl}{sort\+\_\+transform\+\_\+impl}} \begin{DoxyCompactList}\small\item\em Sort data after applying an arbitrary transformation to it. The primary template handles the general case of arbitrary transformation and arbitrary compare predicate. \end{DoxyCompactList}\item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl_3_01_random_access_it_00_01_unar11796da988c7fdaa8949d61d2e25db60}{sort\+\_\+transform\+\_\+impl$<$ Random\+Access\+It, Unary\+Operation, Binary\+Predicate, Sort\+Key, small\+\_\+size, true, false, false, false $>$}} \begin{DoxyCompactList}\small\item\em Sort implementation for pointer to member object of non-\/fundamental type, so sort keys are constant time to extract (this is most similar to a general \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a4252cc2ee4c8cd7ef1617eda8340a7de}{sort()}}) \end{DoxyCompactList}\item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl_3_01_random_access_it_00_01_unar85cc5ab09e07b2c784e4a47df3538cb7}{sort\+\_\+transform\+\_\+impl$<$ Random\+Access\+It, Unary\+Operation, std\+::greater$<$ Less\+T $>$, Sort\+Key, small\+\_\+size, M, false, true, false $>$}} \begin{DoxyCompactList}\small\item\em Sort implementation for key of radix sortable type type with reverse sorting. \end{DoxyCompactList}\item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl_3_01_random_access_it_00_01_unar3fbf5797453c20c1fe6348abce1f5280}{sort\+\_\+transform\+\_\+impl$<$ Random\+Access\+It, Unary\+Operation, std\+::greater$<$ Less\+T $>$, Sort\+Key, small\+\_\+size, true, true, false, false $>$}} \begin{DoxyCompactList}\small\item\em Sort implementation for pointer to member object of fundamental non-\/integral type with reverse sorting, so sort keys are constant time to extract and compare. \end{DoxyCompactList}\item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl_3_01_random_access_it_00_01_unard54ed55186e309cf9ae3abe0e4fbbfe3}{sort\+\_\+transform\+\_\+impl$<$ Random\+Access\+It, Unary\+Operation, std\+::greater$<$ Less\+T $>$, Sort\+Key, small\+\_\+size, true, true, true, true $>$}} \begin{DoxyCompactList}\small\item\em Sort implementation for pointer to member object of integral type with reverse sorting, so we can do radix sort. \end{DoxyCompactList}\item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl_3_01_random_access_it_00_01_unar455371df59cce45560f61276aae40146}{sort\+\_\+transform\+\_\+impl$<$ Random\+Access\+It, Unary\+Operation, std\+::less$<$ Less\+T $>$, Sort\+Key, small\+\_\+size, M, false, true, false $>$}} \begin{DoxyCompactList}\small\item\em Sort implementation for key of radix sortable type type with default sorting. \end{DoxyCompactList}\item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl_3_01_random_access_it_00_01_unar854b7dd7bea3aa5159fd5e8711b8f139}{sort\+\_\+transform\+\_\+impl$<$ Random\+Access\+It, Unary\+Operation, std\+::less$<$ Less\+T $>$, Sort\+Key, small\+\_\+size, true, true, false, false $>$}} \begin{DoxyCompactList}\small\item\em Sort implementation for pointer to member object of fundamental non-\/integral type with default sorting, so sort keys are constant time to extract and compare. \end{DoxyCompactList}\item struct \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__sort_1_1sort__transform__impl_3_01_random_access_it_00_01_unar264e9549dbc1297ac49602c7b97d04b3}{sort\+\_\+transform\+\_\+impl$<$ Random\+Access\+It, Unary\+Operation, std\+::less$<$ Less\+T $>$, Sort\+Key, small\+\_\+size, true, true, true, true $>$}} \begin{DoxyCompactList}\small\item\em Sort implementation for pointer to member object of integral type with default sorting, so we can do radix sort. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection*{Enumerations} \begin{DoxyCompactItemize} \item enum class \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{sort\+\_\+direction}} \{ \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93a9c9ab624360885fcf93b7643c93b6748}{ascending}} , \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93ab19e9805fd7727c52ca04dfa3d24a2e5}{descending}} \} \end{DoxyCompactItemize} \doxysubsection*{Functions} \begin{DoxyCompactItemize} \item {\footnotesize template$<$typename Random\+Access\+It , typename Compare $>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a4252cc2ee4c8cd7ef1617eda8340a7de}{sort}} (Random\+Access\+It, const Random\+Access\+It, Compare) -\/$>$ void \item {\footnotesize template$<$typename Random\+Access\+It , typename Compare $>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a7e6097b5e61ed37d8beefddc72af7fd8}{stable\+\_\+sort}} (Random\+Access\+It, const Random\+Access\+It, Compare) -\/$>$ void \item {\footnotesize template$<$typename Random\+Access\+It , typename Compare , std\+::size\+\_\+t small\+\_\+size$>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a5574965fe175456b99140586b756204a}{merge\+\_\+sort}} (Random\+Access\+It begin, const Random\+Access\+It end, Compare cmp) -\/$>$ void \item {\footnotesize template$<$typename Random\+Access\+It , typename Compare , std\+::size\+\_\+t small\+\_\+size$>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a781a15b327d4850640b4980d404b849c}{heap\+\_\+sort}} (Random\+Access\+It begin, const Random\+Access\+It end, Compare cmp) -\/$>$ void \item {\footnotesize template$<$\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{sort\+\_\+direction}} dir, typename Random\+Access\+It , typename Projection $>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_afab374c740269f5bcb372a11180a0c8f}{radix\+\_\+sort\+\_\+i}} (Random\+Access\+It begin, const Random\+Access\+It end, Projection proj) -\/$>$ void \item {\footnotesize template$<$\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{sort\+\_\+direction}} dir, typename Random\+Access\+It , typename Projection $>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a1f4eec8fcf7e6567d4da8b3f17dd7397}{radix\+\_\+sort\+\_\+s}} (Random\+Access\+It begin, const Random\+Access\+It end, Projection proj) -\/$>$ void \item {\footnotesize template$<$std\+::size\+\_\+t size$>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_add9d019e1f98fabac49c0c7d130fb342}{make\+\_\+array\+\_\+for}} (std\+::false\+\_\+type) -\/$>$ kblib\+::containing\+\_\+ptr$<$ std\+::array$<$ std\+::size\+\_\+t, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a4c92ee94a7a250948d44a29b0e7b3e78}{size}} $>$ $>$ \item {\footnotesize template$<$std\+::size\+\_\+t size$>$ }\\auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a2f59fbc035075c5d405eb2c135ad04c0}{make\+\_\+array\+\_\+for}} (std\+::true\+\_\+type) -\/$>$ kblib\+::heap\+\_\+value$<$ std\+::array$<$ std\+::size\+\_\+t, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a4c92ee94a7a250948d44a29b0e7b3e78}{size}}+1 $>$ $>$ \item {\footnotesize template$<$\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{sort\+\_\+direction}} dir, typename Random\+Access\+It1 , typename Random\+Access\+It2 , typename Projection $>$ }\\constexpr auto \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a366aabbf8232d3bfea4d6a922f34590a}{counting\+\_\+sort}} (Random\+Access\+It1 begin, const Random\+Access\+It1 end, Random\+Access\+It2 d\+\_\+begin, Projection proj) -\/$>$ void \end{DoxyCompactItemize} \doxysubsection{Enumeration Type Documentation} \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!sort\_direction@{sort\_direction}} \index{sort\_direction@{sort\_direction}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{sort\_direction}{sort\_direction}} {\footnotesize\ttfamily enum class \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::sort\+\_\+direction}}\hspace{0.3cm}{\ttfamily [strong]}} \begin{DoxyEnumFields}{Enumerator} \raisebox{\heightof{T}}[0pt][0pt]{\index{ascending@{ascending}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}}\index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!ascending@{ascending}}}\mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93a9c9ab624360885fcf93b7643c93b6748}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93a9c9ab624360885fcf93b7643c93b6748}} ascending&\\ \hline \raisebox{\heightof{T}}[0pt][0pt]{\index{descending@{descending}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}}\index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!descending@{descending}}}\mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93ab19e9805fd7727c52ca04dfa3d24a2e5}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93ab19e9805fd7727c52ca04dfa3d24a2e5}} descending&\\ \hline \end{DoxyEnumFields} Definition at line \mbox{\hyperlink{sort_8h_source_l00394}{394}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \doxysubsection{Function Documentation} \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a366aabbf8232d3bfea4d6a922f34590a}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a366aabbf8232d3bfea4d6a922f34590a}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!counting\_sort@{counting\_sort}} \index{counting\_sort@{counting\_sort}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{counting\_sort()}{counting\_sort()}} {\footnotesize\ttfamily template$<$\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{sort\+\_\+direction}} dir, typename Random\+Access\+It1 , typename Random\+Access\+It2 , typename Projection $>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::counting\+\_\+sort (\begin{DoxyParamCaption}\item[{Random\+Access\+It1}]{begin, }\item[{const Random\+Access\+It1}]{end, }\item[{Random\+Access\+It2}]{d\+\_\+begin, }\item[{Projection}]{proj }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00437}{437}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a781a15b327d4850640b4980d404b849c}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a781a15b327d4850640b4980d404b849c}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!heap\_sort@{heap\_sort}} \index{heap\_sort@{heap\_sort}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{heap\_sort()}{heap\_sort()}} {\footnotesize\ttfamily template$<$typename Random\+Access\+It , typename Compare , std\+::size\+\_\+t small\+\_\+size$>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::heap\+\_\+sort (\begin{DoxyParamCaption}\item[{Random\+Access\+It}]{begin, }\item[{const Random\+Access\+It}]{end, }\item[{Compare}]{cmp }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00385}{385}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_add9d019e1f98fabac49c0c7d130fb342}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_add9d019e1f98fabac49c0c7d130fb342}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!make\_array\_for@{make\_array\_for}} \index{make\_array\_for@{make\_array\_for}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{make\_array\_for()}{make\_array\_for()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$std\+::size\+\_\+t size$>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::make\+\_\+array\+\_\+for (\begin{DoxyParamCaption}\item[{std\+::false\+\_\+type}]{ }\end{DoxyParamCaption}) -\/$>$ kblib\+::containing\+\_\+ptr$<$std\+::array$<$std\+::size\+\_\+t, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a4c92ee94a7a250948d44a29b0e7b3e78}{size}}$>$$>$ \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00425}{425}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a2f59fbc035075c5d405eb2c135ad04c0}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a2f59fbc035075c5d405eb2c135ad04c0}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!make\_array\_for@{make\_array\_for}} \index{make\_array\_for@{make\_array\_for}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{make\_array\_for()}{make\_array\_for()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$std\+::size\+\_\+t size$>$ \\ auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::make\+\_\+array\+\_\+for (\begin{DoxyParamCaption}\item[{std\+::true\+\_\+type}]{ }\end{DoxyParamCaption}) -\/$>$ kblib\+::heap\+\_\+value$<$std\+::array$<$std\+::size\+\_\+t, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a4c92ee94a7a250948d44a29b0e7b3e78}{size}} + 1$>$$>$ } Definition at line \mbox{\hyperlink{sort_8h_source_l00430}{430}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a5574965fe175456b99140586b756204a}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a5574965fe175456b99140586b756204a}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!merge\_sort@{merge\_sort}} \index{merge\_sort@{merge\_sort}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{merge\_sort()}{merge\_sort()}} {\footnotesize\ttfamily template$<$typename Random\+Access\+It , typename Compare , std\+::size\+\_\+t small\+\_\+size$>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::merge\+\_\+sort (\begin{DoxyParamCaption}\item[{Random\+Access\+It}]{begin, }\item[{const Random\+Access\+It}]{end, }\item[{Compare}]{cmp }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00370}{370}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_afab374c740269f5bcb372a11180a0c8f}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_afab374c740269f5bcb372a11180a0c8f}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!radix\_sort\_i@{radix\_sort\_i}} \index{radix\_sort\_i@{radix\_sort\_i}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{radix\_sort\_i()}{radix\_sort\_i()}} {\footnotesize\ttfamily template$<$\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{sort\+\_\+direction}} dir, typename Random\+Access\+It , typename Projection $>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::radix\+\_\+sort\+\_\+i (\begin{DoxyParamCaption}\item[{Random\+Access\+It}]{begin, }\item[{const Random\+Access\+It}]{end, }\item[{Projection}]{proj }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00397}{397}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a1f4eec8fcf7e6567d4da8b3f17dd7397}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a1f4eec8fcf7e6567d4da8b3f17dd7397}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!radix\_sort\_s@{radix\_sort\_s}} \index{radix\_sort\_s@{radix\_sort\_s}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{radix\_sort\_s()}{radix\_sort\_s()}} {\footnotesize\ttfamily template$<$\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1detail__sort_a44e0b9ad33468174fde6534fd9a65a93}{sort\+\_\+direction}} dir, typename Random\+Access\+It , typename Projection $>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::radix\+\_\+sort\+\_\+s (\begin{DoxyParamCaption}\item[{Random\+Access\+It}]{begin, }\item[{const Random\+Access\+It}]{end, }\item[{Projection}]{proj }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00407}{407}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a4252cc2ee4c8cd7ef1617eda8340a7de}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a4252cc2ee4c8cd7ef1617eda8340a7de}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!sort@{sort}} \index{sort@{sort}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{sort()}{sort()}} {\footnotesize\ttfamily template$<$typename Random\+Access\+It , typename Compare $>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::sort (\begin{DoxyParamCaption}\item[{Random\+Access\+It}]{, }\item[{const}]{Random\+Access\+It, }\item[{Compare}]{ }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00364}{364}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}. \mbox{\Hypertarget{namespace_k_b_l_i_b___n_s_1_1detail__sort_a7e6097b5e61ed37d8beefddc72af7fd8}\label{namespace_k_b_l_i_b___n_s_1_1detail__sort_a7e6097b5e61ed37d8beefddc72af7fd8}} \index{KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}!stable\_sort@{stable\_sort}} \index{stable\_sort@{stable\_sort}!KBLIB\_NS::detail\_sort@{KBLIB\_NS::detail\_sort}} \doxysubsubsection{\texorpdfstring{stable\_sort()}{stable\_sort()}} {\footnotesize\ttfamily template$<$typename Random\+Access\+It , typename Compare $>$ \\ constexpr auto KBLIB\+\_\+\+NS\+::detail\+\_\+sort\+::stable\+\_\+sort (\begin{DoxyParamCaption}\item[{Random\+Access\+It}]{, }\item[{const}]{Random\+Access\+It, }\item[{Compare}]{ }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [constexpr]}} Definition at line \mbox{\hyperlink{sort_8h_source_l00366}{366}} of file \mbox{\hyperlink{sort_8h_source}{sort.\+h}}.