Embedded Template Library 1.0
Loading...
Searching...
No Matches
algorithm.h File Reference
#include "platform.h"
#include "type_traits.h"
#include "iterator.h"
#include "functional.h"
#include "utility.h"
#include "gcd.h"
#include <stdint.h>
#include <string.h>
#include "private/minmax_push.h"
#include <algorithm>
#include <utility>
#include <iterator>
#include <functional>
#include <numeric>
#include "private/minmax_pop.h"

Go to the source code of this file.

Classes

struct  etl::private_algorithm::swap_impl< false >
 
struct  etl::private_algorithm::swap_impl< true >
 

Namespaces

namespace  etl
 bitset_ext
 

Functions

template<typename TIterator >
ETL_CONSTEXPR20 void etl::shell_sort (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
ETL_CONSTEXPR20 void etl::shell_sort (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
ETL_CONSTEXPR14 void etl::insertion_sort (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
ETL_CONSTEXPR14 void etl::insertion_sort (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator1 , typename TIterator2 >
ETL_CONSTEXPR20 void etl::iter_swap (TIterator1 a, TIterator2 b)
 
template<typename TIterator1 , typename TIterator2 >
ETL_CONSTEXPR20 TIterator2 etl::swap_ranges (TIterator1 first1, TIterator1 last1, TIterator2 first2)
 
template<typename TIterator , typename TFunction >
ETL_CONSTEXPR14 void etl::generate (TIterator db, TIterator de, TFunction funct)
 
template<typename TIterator1 , typename TIterator2 >
ETL_CONSTEXPR14 TIterator2 etl::copy (TIterator1 sb, TIterator1 se, TIterator2 db)
 
template<typename TIterator1 , typename TIterator2 >
ETL_CONSTEXPR14 TIterator2 etl::reverse_copy (TIterator1 sb, TIterator1 se, TIterator2 db)
 
template<typename TIterator1 , typename TSize , typename TIterator2 >
ETL_CONSTEXPR14 TIterator2 etl::copy_n (TIterator1 sb, TSize count, TIterator2 db)
 
template<typename TIterator1 , typename TIterator2 >
ETL_CONSTEXPR14 TIterator2 etl::copy_backward (TIterator1 sb, TIterator1 se, TIterator2 de)
 
template<typename TIterator1 , typename TIterator2 >
ETL_CONSTEXPR14 TIterator2 etl::move (TIterator1 sb, TIterator1 se, TIterator2 db)
 
template<typename TIterator1 , typename TIterator2 >
ETL_CONSTEXPR14 TIterator2 etl::move_backward (TIterator1 sb, TIterator1 se, TIterator2 de)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_pointer< TIterator >::value, void >::type etl::reverse (TIterator b, TIterator e)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if<!etl::is_pointer< TIterator >::value, void >::type etl::reverse (TIterator b, TIterator e)
 
template<typename TIterator , typename TValue , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::lower_bound (TIterator first, TIterator last, const TValue &value, TCompare compare)
 
template<typename TIterator , typename TValue >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::lower_bound (TIterator first, TIterator last, const TValue &value)
 
template<typename TIterator , typename TValue , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::upper_bound (TIterator first, TIterator last, const TValue &value, TCompare compare)
 
template<typename TIterator , typename TValue >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::upper_bound (TIterator first, TIterator last, const TValue &value)
 
template<typename TIterator , typename TValue , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 ETL_OR_STD::pair< TIterator, TIteratoretl::equal_range (TIterator first, TIterator last, const TValue &value, TCompare compare)
 
template<typename TIterator , typename TValue >
ETL_NODISCARD ETL_OR_STD::pair< TIterator, TIteratoretl::equal_range (TIterator first, TIterator last, const TValue &value)
 
template<typename TIterator , typename T , typename Compare >
ETL_NODISCARD bool etl::binary_search (TIterator first, TIterator last, const T &value, Compare compare)
 
template<typename TIterator , typename T >
ETL_NODISCARD bool etl::binary_search (TIterator first, TIterator last, const T &value)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::find_if (TIterator first, TIterator last, TUnaryPredicate predicate)
 
template<typename TIterator , typename T >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::find (TIterator first, TIterator last, const T &value)
 
template<typename TIterator , typename TValue >
ETL_CONSTEXPR14 void etl::fill (TIterator first, TIterator last, const TValue &value)
 
template<typename TIterator , typename TSize , typename TValue >
ETL_CONSTEXPR14 TIterator etl::fill_n (TIterator first, TSize count, const TValue &value)
 
template<typename TIterator , typename T >
ETL_NODISCARD ETL_CONSTEXPR14 etl::iterator_traits< TIterator >::difference_type etl::count (TIterator first, TIterator last, const T &value)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 etl::iterator_traits< TIterator >::difference_type etl::count_if (TIterator first, TIterator last, TUnaryPredicate predicate)
 
template<typename TIterator1 , typename TIterator2 >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::equal (TIterator1 first1, TIterator1 last1, TIterator2 first2)
 
template<typename TIterator1 , typename TIterator2 , typename TPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::equal (TIterator1 first1, TIterator1 last1, TIterator2 first2, TPredicate predicate)
 
template<typename TIterator1 , typename TIterator2 >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::equal (TIterator1 first1, TIterator1 last1, TIterator2 first2, TIterator2 last2)
 
template<typename TIterator1 , typename TIterator2 , typename TPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::equal (TIterator1 first1, TIterator1 last1, TIterator2 first2, TIterator2 last2, TPredicate predicate)
 
template<typename TIterator1 , typename TIterator2 , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::lexicographical_compare (TIterator1 first1, TIterator1 last1, TIterator2 first2, TIterator2 last2, TCompare compare)
 
template<typename TIterator1 , typename TIterator2 >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::lexicographical_compare (TIterator1 first1, TIterator1 last1, TIterator2 first2, TIterator2 last2)
 
template<typename T , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR const Tetl::min (const T &a, const T &b, TCompare compare)
 
template<typename T >
ETL_NODISCARD ETL_CONSTEXPR const Tetl::min (const T &a, const T &b)
 
template<typename T , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR const Tetl::max (const T &a, const T &b, TCompare compare)
 
template<typename T >
ETL_NODISCARD ETL_CONSTEXPR const Tetl::max (const T &a, const T &b)
 
template<typename TIterator , typename TUnaryOperation >
ETL_CONSTEXPR14 TUnaryOperation etl::for_each (TIterator first, TIterator last, TUnaryOperation unary_operation)
 
template<typename TIteratorIn , typename TIteratorOut , typename TUnaryOperation >
ETL_CONSTEXPR14 TIteratorOut etl::transform (TIteratorIn first1, TIteratorIn last1, TIteratorOut d_first, TUnaryOperation unary_operation)
 
template<typename TIteratorIn1 , typename TIteratorIn2 , typename TIteratorOut , typename TBinaryOperation >
ETL_CONSTEXPR14 TIteratorOut etl::transform (TIteratorIn1 first1, TIteratorIn1 last1, TIteratorIn2 first2, TIteratorOut d_first, TBinaryOperation binary_operation)
 
template<typename TIterator , typename T >
ETL_CONSTEXPR14 void etl::replace (TIterator first, TIterator last, const T &old_value, const T &new_value)
 
template<typename TIterator , typename TPredicate , typename T >
ETL_CONSTEXPR14 void etl::replace_if (TIterator first, TIterator last, TPredicate predicate, const T &new_value)
 
template<typename TIterator , typename TDistance , typename TValue , typename TCompare >
void etl::private_heap::push_heap (TIterator first, TDistance value_index, TDistance top_index, TValue value, TCompare compare)
 
template<typename TIterator , typename TDistance , typename TValue , typename TCompare >
void etl::private_heap::adjust_heap (TIterator first, TDistance value_index, TDistance length, TValue value, TCompare compare)
 
template<typename TIterator , typename TDistance , typename TCompare >
bool etl::private_heap::is_heap (const TIterator first, const TDistance n, TCompare compare)
 
template<typename TIterator , typename TCompare >
void etl::pop_heap (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
void etl::pop_heap (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
void etl::push_heap (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
void etl::push_heap (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
void etl::make_heap (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
void etl::make_heap (TIterator first, TIterator last)
 
template<typename TIterator >
ETL_NODISCARD bool etl::is_heap (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
ETL_NODISCARD bool etl::is_heap (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
void etl::sort_heap (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
void etl::sort_heap (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator1 , typename TIterator2 , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator1 etl::search (TIterator1 first, TIterator1 last, TIterator2 search_first, TIterator2 search_last, TCompare compare)
 
template<typename TIterator1 , typename TIterator2 >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator1 etl::search (TIterator1 first, TIterator1 last, TIterator2 search_first, TIterator2 search_last)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_random_access_iterator< TIterator >::value, TIterator >::type etl::private_algorithm::rotate_general (TIterator first, TIterator middle, TIterator last)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_bidirectional_iterator< TIterator >::value, TIterator >::type etl::private_algorithm::rotate_general (TIterator first, TIterator middle, TIterator last)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_forward_iterator< TIterator >::value, TIterator >::type etl::private_algorithm::rotate_general (TIterator first, TIterator middle, TIterator last)
 
template<typename TIterator >
ETL_CONSTEXPR14 TIterator etl::private_algorithm::rotate_left_by_one (TIterator first, TIterator last)
 
template<typename TIterator >
ETL_CONSTEXPR14 TIterator etl::private_algorithm::rotate_right_by_one (TIterator first, TIterator last)
 
template<typename TIterator >
ETL_CONSTEXPR14 TIterator etl::rotate (TIterator first, TIterator middle, TIterator last)
 
template<typename TIterator1 , typename TIterator2 , typename TPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator1 etl::find_end (TIterator1 b, TIterator1 e, TIterator2 sb, TIterator2 se, TPredicate predicate)
 
template<typename TIterator1 , typename TIterator2 >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator1 etl::find_end (TIterator1 b, TIterator1 e, TIterator2 sb, TIterator2 se)
 
template<typename TIterator , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::min_element (TIterator begin, TIterator end, TCompare compare)
 
template<typename TIterator >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::min_element (TIterator begin, TIterator end)
 
template<typename TIterator , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::max_element (TIterator begin, TIterator end, TCompare compare)
 
template<typename TIterator >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::max_element (TIterator begin, TIterator end)
 
template<typename TIterator , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 ETL_OR_STD::pair< TIterator, TIteratoretl::minmax_element (TIterator begin, TIterator end, TCompare compare)
 
template<typename TIterator >
ETL_NODISCARD ETL_CONSTEXPR14 ETL_OR_STD::pair< TIterator, TIteratoretl::minmax_element (TIterator begin, TIterator end)
 
template<typename T >
ETL_NODISCARD ETL_CONSTEXPR14 ETL_OR_STD::pair< const T &, const T & > etl::minmax (const T &a, const T &b)
 
template<typename T , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 ETL_OR_STD::pair< const T &, const T & > etl::minmax (const T &a, const T &b, TCompare compare)
 
template<typename TIterator >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::is_sorted_until (TIterator begin, TIterator end)
 
template<typename TIterator , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::is_sorted_until (TIterator begin, TIterator end, TCompare compare)
 
template<typename TIterator >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::is_sorted (TIterator begin, TIterator end)
 
template<typename TIterator , typename TCompare >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::is_sorted (TIterator begin, TIterator end, TCompare compare)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::find_if_not (TIterator begin, TIterator end, TUnaryPredicate predicate)
 
template<typename TIterator1 , typename TIterator2 >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::is_permutation (TIterator1 begin1, TIterator1 end1, TIterator2 begin2)
 
template<typename TIterator1 , typename TIterator2 , typename TBinaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::is_permutation (TIterator1 begin1, TIterator1 end1, TIterator2 begin2, TBinaryPredicate predicate)
 
template<typename TIterator1 , typename TIterator2 >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::is_permutation (TIterator1 begin1, TIterator1 end1, TIterator2 begin2, TIterator2 end2)
 
template<typename TIterator1 , typename TIterator2 , typename TBinaryPredicate >
ETL_NODISCARD bool etl::is_permutation (TIterator1 begin1, TIterator1 end1, TIterator2 begin2, TIterator2 end2, TBinaryPredicate predicate)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::is_partitioned (TIterator begin, TIterator end, TUnaryPredicate predicate)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::partition_point (TIterator begin, TIterator end, TUnaryPredicate predicate)
 
template<typename TSource , typename TDestinationTrue , typename TDestinationFalse , typename TUnaryPredicate >
ETL_CONSTEXPR14 ETL_OR_STD::pair< TDestinationTrue, TDestinationFalseetl::partition_copy (TSource begin, TSource end, TDestinationTrue destination_true, TDestinationFalse destination_false, TUnaryPredicate predicate)
 
template<typename TIterator , typename TOutputIterator , typename TUnaryPredicate >
ETL_CONSTEXPR14 TOutputIterator etl::copy_if (TIterator begin, TIterator end, TOutputIterator out, TUnaryPredicate predicate)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::all_of (TIterator begin, TIterator end, TUnaryPredicate predicate)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::any_of (TIterator begin, TIterator end, TUnaryPredicate predicate)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_NODISCARD ETL_CONSTEXPR14 bool etl::none_of (TIterator begin, TIterator end, TUnaryPredicate predicate)
 
template<typename TIterator , typename TCompare >
void etl::sort (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
void etl::sort (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
void etl::stable_sort (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
void etl::stable_sort (TIterator first, TIterator last)
 
template<typename TIterator , typename T >
ETL_CONSTEXPR14 T etl::accumulate (TIterator first, TIterator last, T sum)
 
template<typename TIterator , typename T , typename TBinaryOperation >
ETL_CONSTEXPR14 T etl::accumulate (TIterator first, TIterator last, T sum, TBinaryOperation operation)
 
template<typename T , typename TCompare >
ETL_CONSTEXPR T etl::clamp (const T &value, const T &low, const T &high, TCompare compare)
 
template<typename T >
ETL_CONSTEXPR T etl::clamp (const T &value, const T &low, const T &high)
 
template<typename T , T Low, T High, typename TCompare >
ETL_CONSTEXPR T etl::clamp (const T &value, TCompare compare)
 
template<typename T , T Low, T High>
ETL_CONSTEXPR T etl::clamp (const T &value)
 
template<typename TIterator , typename T >
ETL_CONSTEXPR14 TIterator etl::remove (TIterator first, TIterator last, const T &value)
 
template<typename TIterator , typename TUnaryPredicate >
ETL_CONSTEXPR14 TIterator etl::remove_if (TIterator first, TIterator last, TUnaryPredicate predicate)
 
template<typename TInputIterator , typename TOutputIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_random_iterator< TInputIterator >::value &&etl::is_random_iterator< TOutputIterator >::value, TOutputIterator >::type etl::copy_s (TInputIterator i_begin, TInputIterator i_end, TOutputIterator o_begin, TOutputIterator o_end)
 
template<typename TInputIterator , typename TOutputIterator >
ETL_CONSTEXPR14 etl::enable_if<!etl::is_random_iterator< TInputIterator >::value||!etl::is_random_iterator< TOutputIterator >::value, TOutputIterator >::type etl::copy_s (TInputIterator i_begin, TInputIterator i_end, TOutputIterator o_begin, TOutputIterator o_end)
 
template<typename TInputIterator , typename TSize , typename TOutputIterator >
ETL_CONSTEXPR14 TOutputIterator etl::copy_n_s (TInputIterator i_begin, TSize n, TOutputIterator o_begin, TOutputIterator o_end)
 
template<typename TInputIterator , typename TSize1 , typename TOutputIterator , typename TSize2 >
ETL_CONSTEXPR14 TOutputIterator etl::copy_n_s (TInputIterator i_begin, TSize1 n1, TOutputIterator o_begin, TSize2 n2)
 
template<typename TInputIterator , typename TOutputIterator , typename TUnaryPredicate >
ETL_CONSTEXPR14 TOutputIterator etl::copy_if_s (TInputIterator i_begin, TInputIterator i_end, TOutputIterator o_begin, TOutputIterator o_end, TUnaryPredicate predicate)
 
template<typename TInputIterator , typename TSize , typename TOutputIterator , typename TUnaryPredicate >
ETL_CONSTEXPR14 TOutputIterator etl::copy_n_if (TInputIterator i_begin, TSize n, TOutputIterator o_begin, TUnaryPredicate predicate)
 
template<typename TInputIterator , typename TOutputIterator >
TOutputIterator etl::move_s (TInputIterator i_begin, TInputIterator i_end, TOutputIterator o_begin, TOutputIterator o_end)
 
template<typename TIterator , typename TValue >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::binary_find (TIterator begin, TIterator end, const TValue &value)
 
template<typename TIterator , typename TValue , typename TBinaryPredicate , typename TBinaryEquality >
ETL_NODISCARD ETL_CONSTEXPR14 TIterator etl::binary_find (TIterator begin, TIterator end, const TValue &value, TBinaryPredicate predicate, TBinaryEquality equality)
 
template<typename TIterator , typename TUnaryFunction , typename TUnaryPredicate >
ETL_CONSTEXPR14 TUnaryFunction etl::for_each_if (TIterator begin, const TIterator end, TUnaryFunction function, TUnaryPredicate predicate)
 
template<typename TIterator , typename TSize , typename TUnaryFunction >
ETL_CONSTEXPR14 TIterator etl::for_each_n (TIterator begin, TSize n, TUnaryFunction function)
 
template<typename TIterator , typename TSize , typename TUnaryFunction , typename TUnaryPredicate >
ETL_CONSTEXPR14 TIterator etl::for_each_n_if (TIterator begin, TSize n, TUnaryFunction function, TUnaryPredicate predicate)
 
template<typename TInputIterator , typename TOutputIterator , typename TUnaryFunction >
ETL_CONSTEXPR14 TOutputIterator etl::transform_s (TInputIterator i_begin, TInputIterator i_end, TOutputIterator o_begin, TOutputIterator o_end, TUnaryFunction function)
 
template<typename TInputIterator , typename TSize , typename TOutputIterator , typename TUnaryFunction >
ETL_CONSTEXPR14 void etl::transform_n (TInputIterator i_begin, TSize n, TOutputIterator o_begin, TUnaryFunction function)
 
template<typename TInputIterator1 , typename TInputIterator2 , typename TSize , typename TOutputIterator , typename TBinaryFunction >
ETL_CONSTEXPR14 void etl::transform_n (TInputIterator1 i_begin1, TInputIterator2 i_begin2, TSize n, TOutputIterator o_begin, TBinaryFunction function)
 
template<typename TInputIterator , typename TOutputIterator , typename TUnaryFunction , typename TUnaryPredicate >
ETL_CONSTEXPR14 TOutputIterator etl::transform_if (TInputIterator i_begin, const TInputIterator i_end, TOutputIterator o_begin, TUnaryFunction function, TUnaryPredicate predicate)
 
template<typename TInputIterator1 , typename TInputIterator2 , typename TOutputIterator , typename TBinaryFunction , typename TBinaryPredicate >
ETL_CONSTEXPR14 TOutputIterator etl::transform_if (TInputIterator1 i_begin1, const TInputIterator1 i_end1, TInputIterator2 i_begin2, TOutputIterator o_begin, TBinaryFunction function, TBinaryPredicate predicate)
 
template<typename TInputIterator , typename TSize , typename TOutputIterator , typename TUnaryFunction , typename TUnaryPredicate >
ETL_CONSTEXPR14 TOutputIterator etl::transform_n_if (TInputIterator i_begin, TSize n, TOutputIterator o_begin, TUnaryFunction function, TUnaryPredicate predicate)
 
template<typename TInputIterator1 , typename TInputIterator2 , typename TSize , typename TOutputIterator , typename TBinaryFunction , typename TBinaryPredicate >
ETL_CONSTEXPR14 TOutputIterator etl::transform_n_if (TInputIterator1 i_begin1, TInputIterator2 i_begin2, TSize n, TOutputIterator o_begin, TBinaryFunction function, TBinaryPredicate predicate)
 
template<typename TSource , typename TDestinationTrue , typename TDestinationFalse , typename TUnaryFunctionTrue , typename TUnaryFunctionFalse , typename TUnaryPredicate >
ETL_CONSTEXPR14 ETL_OR_STD::pair< TDestinationTrue, TDestinationFalseetl::partition_transform (TSource begin, TSource end, TDestinationTrue destination_true, TDestinationFalse destination_false, TUnaryFunctionTrue function_true, TUnaryFunctionFalse function_false, TUnaryPredicate predicate)
 
template<typename TSource1 , typename TSource2 , typename TDestinationTrue , typename TDestinationFalse , typename TBinaryFunctionTrue , typename TBinaryFunctionFalse , typename TBinaryPredicate >
ETL_CONSTEXPR14 ETL_OR_STD::pair< TDestinationTrue, TDestinationFalseetl::partition_transform (TSource1 begin1, TSource1 end1, TSource2 begin2, TDestinationTrue destination_true, TDestinationFalse destination_false, TBinaryFunctionTrue function_true, TBinaryFunctionFalse function_false, TBinaryPredicate predicate)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_forward_iterator< TIterator >::value, TIterator >::type etl::private_algorithm::get_before_last (TIterator first_, TIterator last_)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_bidirectional_iterator< TIterator >::value, TIterator >::type etl::private_algorithm::get_before_last (TIterator, TIterator last_)
 
template<typename TIterator >
ETL_CONSTEXPR14 etl::enable_if< etl::is_random_access_iterator< TIterator >::value, TIterator >::type etl::private_algorithm::get_before_last (TIterator, TIterator last_)
 
template<typename TIterator , typename TCompare >
ETL_CONSTEXPR20 void etl::selection_sort (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
ETL_CONSTEXPR20 void etl::selection_sort (TIterator first, TIterator last)
 
template<typename TIterator , typename TCompare >
ETL_CONSTEXPR14 void etl::heap_sort (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator >
ETL_CONSTEXPR14 void etl::heap_sort (TIterator first, TIterator last)
 
template<typename TIterator , typename TPredicate >
ETL_CONSTEXPR14 etl::enable_if< etl::is_forward_iterator< TIterator >::value, TIterator >::type etl::partition (TIterator first, TIterator last, TPredicate predicate)
 Returns the maximum value.
 
template<typename TIterator , typename TPredicate >
ETL_CONSTEXPR14 etl::enable_if< etl::is_bidirectional_iterator_concept< TIterator >::value, TIterator >::type etl::partition (TIterator first, TIterator last, TPredicate predicate)
 
template<typename TIterator , typename TCompare >
TIterator etl::private_algorithm::nth_partition (TIterator first, TIterator last, TCompare compare)
 
template<typename TIterator , typename TCompare >
etl::enable_if< etl::is_random_access_iterator_concept< TIterator >::value, void >::type etl::nth_element (TIterator first, TIterator nth, TIterator last, TCompare compare)
 
template<typename TIterator >
etl::enable_if< etl::is_random_access_iterator_concept< TIterator >::value, void >::type etl::nth_element (TIterator first, TIterator nth, TIterator last)