/home/ntakagi/work/STLport-5.1.5/stlport/stl/_algo.c File Reference

#include <stl/_algo.h>
#include <stl/_tempbuf.h>

Go to the source code of this file.

Defines

#define __stl_threshold   16

Functions

template<class _BidirectionalIter, class _Distance, class _Compare>
_STLP_BEGIN_NAMESPACE _STLP_MOVE_TO_PRIV_NAMESPACE
void 
__merge_without_buffer (_BidirectionalIter __first, _BidirectionalIter __middle, _BidirectionalIter __last, _Distance __len1, _Distance __len2, _Compare __comp)
template<class _BidirectionalIter1, class _BidirectionalIter2, class _BidirectionalIter3, class _Compare>
_BidirectionalIter3 __merge_backward (_BidirectionalIter1 __first1, _BidirectionalIter1 __last1, _BidirectionalIter2 __first2, _BidirectionalIter2 __last2, _BidirectionalIter3 __result, _Compare __comp)
template<class _Tp>
const _Tp & __median (const _Tp &__a, const _Tp &__b, const _Tp &__c)
template<class _Tp, class _Compare>
const _Tp & __median (const _Tp &__a, const _Tp &__b, const _Tp &__c, _Compare __comp)
template<class _ForwardIter1, class _ForwardIter2>
_STLP_MOVE_TO_STD_NAMESPACE
_ForwardIter1 
search (_ForwardIter1 __first1, _ForwardIter1 __last1, _ForwardIter2 __first2, _ForwardIter2 __last2)
template<class _RandomAccessIter, class _Integer, class _Tp, class _BinaryPred, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE
_RandomAccessIter 
__search_n (_RandomAccessIter __first, _RandomAccessIter __last, _Integer __count, const _Tp &__val, _BinaryPred __pred, _Distance *, const random_access_iterator_tag &)
template<class _ForwardIter, class _Integer, class _Tp, class _Distance, class _BinaryPred>
_ForwardIter __search_n (_ForwardIter __first, _ForwardIter __last, _Integer __count, const _Tp &__val, _BinaryPred __pred, _Distance *, const forward_iterator_tag &)
template<class _ForwardIter, class _Integer, class _Tp>
_STLP_MOVE_TO_STD_NAMESPACE
_ForwardIter 
search_n (_ForwardIter __first, _ForwardIter __last, _Integer __count, const _Tp &__val)
template<class _ForwardIter, class _Integer, class _Tp, class _BinaryPred>
_ForwardIter search_n (_ForwardIter __first, _ForwardIter __last, _Integer __count, const _Tp &__val, _BinaryPred __binary_pred)
template<class _ForwardIter1, class _ForwardIter2>
_ForwardIter1 find_end (_ForwardIter1 __first1, _ForwardIter1 __last1, _ForwardIter2 __first2, _ForwardIter2 __last2)
template<class _InputIterator, class _OutputIterator, class _BinaryPredicate, class _Tp>
_STLP_MOVE_TO_PRIV_NAMESPACE
_STLP_INLINE_LOOP _OutputIterator 
__unique_copy (_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __binary_pred, _Tp *)
template<class _InputIter, class _OutputIter, class _BinaryPredicate>
_OutputIter __unique_copy (_InputIter __first, _InputIter __last, _OutputIter __result, _BinaryPredicate __binary_pred, const output_iterator_tag &)
template<class _InputIter, class _ForwardIter, class _BinaryPredicate>
_STLP_INLINE_LOOP _ForwardIter __unique_copy (_InputIter __first, _InputIter __last, _ForwardIter __result, _BinaryPredicate __binary_pred, const forward_iterator_tag &)
template<class _InputIter, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE
_OutputIter 
unique_copy (_InputIter __first, _InputIter __last, _OutputIter __result)
template<class _InputIter, class _OutputIter, class _BinaryPredicate>
_OutputIter unique_copy (_InputIter __first, _InputIter __last, _OutputIter __result, _BinaryPredicate __binary_pred)
template<class _ForwardIter, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE
_ForwardIter 
__rotate_aux (_ForwardIter __first, _ForwardIter __middle, _ForwardIter __last, _Distance *, const forward_iterator_tag &)
template<class _BidirectionalIter, class _Distance>
_BidirectionalIter __rotate_aux (_BidirectionalIter __first, _BidirectionalIter __middle, _BidirectionalIter __last, _Distance *, const bidirectional_iterator_tag &)
template<class _RandomAccessIter, class _Distance, class _Tp>
_RandomAccessIter __rotate_aux (_RandomAccessIter __first, _RandomAccessIter __middle, _RandomAccessIter __last, _Distance *, _Tp *)
template<class _RandomAccessIter, class _Distance>
_RandomAccessIter __rotate_aux (_RandomAccessIter __first, _RandomAccessIter __middle, _RandomAccessIter __last, _Distance *__dis, const random_access_iterator_tag &)
template<class _ForwardIter>
_ForwardIter __rotate (_ForwardIter __first, _ForwardIter __middle, _ForwardIter __last)
template<class _ForwardIter>
_STLP_MOVE_TO_STD_NAMESPACE
void 
rotate (_ForwardIter __first, _ForwardIter __middle, _ForwardIter __last)
template<class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE
_Distance 
__random_number (_Distance __n)
template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
void 
random_shuffle (_RandomAccessIter __first, _RandomAccessIter __last)
template<class _RandomAccessIter, class _RandomNumberGenerator>
void random_shuffle (_RandomAccessIter __first, _RandomAccessIter __last, _RandomNumberGenerator &__rand)
template<class _ForwardIter, class _OutputIter, class _Distance>
_OutputIter random_sample_n (_ForwardIter __first, _ForwardIter __last, _OutputIter __out_ite, const _Distance __n)
template<class _ForwardIter, class _OutputIter, class _Distance, class _RandomNumberGenerator>
_OutputIter random_sample_n (_ForwardIter __first, _ForwardIter __last, _OutputIter __out_ite, const _Distance __n, _RandomNumberGenerator &__rand)
template<class _InputIter, class _RandomAccessIter, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE
_RandomAccessIter 
__random_sample (_InputIter __first, _InputIter __last, _RandomAccessIter __out_ite, const _Distance __n)
template<class _InputIter, class _RandomAccessIter, class _RandomNumberGenerator, class _Distance>
_RandomAccessIter __random_sample (_InputIter __first, _InputIter __last, _RandomAccessIter __out_ite, _RandomNumberGenerator &__rand, const _Distance __n)
template<class _InputIter, class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
_RandomAccessIter 
random_sample (_InputIter __first, _InputIter __last, _RandomAccessIter __out_first, _RandomAccessIter __out_last)
template<class _InputIter, class _RandomAccessIter, class _RandomNumberGenerator>
_RandomAccessIter random_sample (_InputIter __first, _InputIter __last, _RandomAccessIter __out_first, _RandomAccessIter __out_last, _RandomNumberGenerator &__rand)
template<class _ForwardIter, class _Predicate>
_STLP_MOVE_TO_PRIV_NAMESPACE
_STLP_INLINE_LOOP _ForwardIter 
__partition (_ForwardIter __first, _ForwardIter __last, _Predicate __pred, const forward_iterator_tag &)
template<class _BidirectionalIter, class _Predicate>
_STLP_INLINE_LOOP _BidirectionalIter __partition (_BidirectionalIter __first, _BidirectionalIter __last, _Predicate __pred, const bidirectional_iterator_tag &)
template<class _ForwardIter, class _Predicate>
_STLP_MOVE_TO_STD_NAMESPACE
_ForwardIter 
partition (_ForwardIter __first, _ForwardIter __last, _Predicate __pred)
template<class _ForwardIter, class _Predicate, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE
_ForwardIter 
__inplace_stable_partition (_ForwardIter __first, _ForwardIter __last, _Predicate __pred, _Distance __len, bool __pred_of_first, bool __pred_of_before_last)
template<class _ForwardIter, class _Pointer, class _Predicate, class _Distance>
_ForwardIter __stable_partition_adaptive (_ForwardIter __first, _ForwardIter __last, _Predicate __pred, _Distance __len, _Pointer __buffer, _Distance __buffer_size, bool __pred_of_first, bool __pred_of_before_last)
template<class _ForwardIter, class _Predicate, class _Tp, class _Distance>
_ForwardIter __stable_partition_aux_aux (_ForwardIter __first, _ForwardIter __last, _Predicate __pred, _Tp *, _Distance *, bool __pred_of_before_last=false)
template<class _ForwardIter, class _Predicate>
_ForwardIter __stable_partition_aux (_ForwardIter __first, _ForwardIter __last, _Predicate __pred, const forward_iterator_tag &)
template<class _BidirectIter, class _Predicate>
_BidirectIter __stable_partition_aux (_BidirectIter __first, _BidirectIter __last, _Predicate __pred, const bidirectional_iterator_tag &)
template<class _ForwardIter, class _Predicate>
_STLP_MOVE_TO_STD_NAMESPACE
_ForwardIter 
stable_partition (_ForwardIter __first, _ForwardIter __last, _Predicate __pred)
template<class _RandomAccessIter, class _Tp, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
_RandomAccessIter 
__unguarded_partition (_RandomAccessIter __first, _RandomAccessIter __last, _Tp __pivot, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Compare>
void __unguarded_linear_insert (_RandomAccessIter __last, _Tp __val, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Compare>
void __linear_insert (_RandomAccessIter __first, _RandomAccessIter __last, _Tp __val, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Compare>
void __insertion_sort (_RandomAccessIter __first, _RandomAccessIter __last, _Tp *, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Compare>
void __unguarded_insertion_sort_aux (_RandomAccessIter __first, _RandomAccessIter __last, _Tp *, _Compare __comp)
template<class _RandomAccessIter, class _Compare>
void __unguarded_insertion_sort (_RandomAccessIter __first, _RandomAccessIter __last, _Compare __comp)
template<class _RandomAccessIter, class _Compare>
void __final_insertion_sort (_RandomAccessIter __first, _RandomAccessIter __last, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Size, class _Compare>
void __introsort_loop (_RandomAccessIter __first, _RandomAccessIter __last, _Tp *, _Size __depth_limit, _Compare __comp)
template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
void 
sort (_RandomAccessIter __first, _RandomAccessIter __last)
template<class _RandomAccessIter, class _Compare>
void sort (_RandomAccessIter __first, _RandomAccessIter __last, _Compare __comp)
template<class _RandomAccessIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
void 
__inplace_stable_sort (_RandomAccessIter __first, _RandomAccessIter __last, _Compare __comp)
template<class _RandomAccessIter1, class _RandomAccessIter2, class _Distance, class _Compare>
void __merge_sort_loop (_RandomAccessIter1 __first, _RandomAccessIter1 __last, _RandomAccessIter2 __result, _Distance __step_size, _Compare __comp)
template<class _RandomAccessIter, class _Distance, class _Compare>
void __chunk_insertion_sort (_RandomAccessIter __first, _RandomAccessIter __last, _Distance __chunk_size, _Compare __comp)
template<class _RandomAccessIter, class _Pointer, class _Distance, class _Compare>
void __merge_sort_with_buffer (_RandomAccessIter __first, _RandomAccessIter __last, _Pointer __buffer, _Distance *, _Compare __comp)
template<class _BidirectionalIter1, class _BidirectionalIter2, class _Distance>
_BidirectionalIter1 __rotate_adaptive (_BidirectionalIter1 __first, _BidirectionalIter1 __middle, _BidirectionalIter1 __last, _Distance __len1, _Distance __len2, _BidirectionalIter2 __buffer, _Distance __buffer_size)
template<class _BidirectionalIter, class _Distance, class _Pointer, class _Compare>
void __merge_adaptive (_BidirectionalIter __first, _BidirectionalIter __middle, _BidirectionalIter __last, _Distance __len1, _Distance __len2, _Pointer __buffer, _Distance __buffer_size, _Compare __comp)
template<class _RandomAccessIter, class _Pointer, class _Distance, class _Compare>
void __stable_sort_adaptive (_RandomAccessIter __first, _RandomAccessIter __last, _Pointer __buffer, _Distance __buffer_size, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Distance, class _Compare>
void __stable_sort_aux (_RandomAccessIter __first, _RandomAccessIter __last, _Tp *, _Distance *, _Compare __comp)
template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
void 
stable_sort (_RandomAccessIter __first, _RandomAccessIter __last)
template<class _RandomAccessIter, class _Compare>
void stable_sort (_RandomAccessIter __first, _RandomAccessIter __last, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
void 
__partial_sort (_RandomAccessIter __first, _RandomAccessIter __middle, _RandomAccessIter __last, _Tp *, _Compare __comp)
template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
void 
partial_sort (_RandomAccessIter __first, _RandomAccessIter __middle, _RandomAccessIter __last)
template<class _RandomAccessIter, class _Compare>
void partial_sort (_RandomAccessIter __first, _RandomAccessIter __middle, _RandomAccessIter __last, _Compare __comp)
template<class _InputIter, class _RandomAccessIter, class _Compare, class _Distance, class _Tp>
_STLP_MOVE_TO_PRIV_NAMESPACE
_RandomAccessIter 
__partial_sort_copy (_InputIter __first, _InputIter __last, _RandomAccessIter __result_first, _RandomAccessIter __result_last, _Compare __comp, _Distance *, _Tp *)
template<class _InputIter, class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
_RandomAccessIter 
partial_sort_copy (_InputIter __first, _InputIter __last, _RandomAccessIter __result_first, _RandomAccessIter __result_last)
template<class _InputIter, class _RandomAccessIter, class _Compare>
_RandomAccessIter partial_sort_copy (_InputIter __first, _InputIter __last, _RandomAccessIter __result_first, _RandomAccessIter __result_last, _Compare __comp)
template<class _RandomAccessIter, class _Tp, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
void 
__nth_element (_RandomAccessIter __first, _RandomAccessIter __nth, _RandomAccessIter __last, _Tp *, _Compare __comp)
template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
void 
nth_element (_RandomAccessIter __first, _RandomAccessIter __nth, _RandomAccessIter __last)
template<class _RandomAccessIter, class _Compare>
void nth_element (_RandomAccessIter __first, _RandomAccessIter __nth, _RandomAccessIter __last, _Compare __comp)
template<class _ForwardIter, class _Tp, class _Compare1, class _Compare2, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE
_ForwardIter 
__upper_bound (_ForwardIter __first, _ForwardIter __last, const _Tp &__val, _Compare1 __comp1, _Compare2 __comp2, _Distance *)
template<class _ForwardIter, class _Tp, class _Compare1, class _Compare2, class _Distance>
pair< _ForwardIter, _ForwardIter > __equal_range (_ForwardIter __first, _ForwardIter __last, const _Tp &__val, _Compare1 __comp1, _Compare2 __comp2, _Distance *__dist)
template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE
_OutputIter 
merge (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter merge (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _BidirectionalIter, class _Tp, class _Distance, class _Compare>
void __inplace_merge_aux (_BidirectionalIter __first, _BidirectionalIter __middle, _BidirectionalIter __last, _Tp *, _Distance *, _Compare __comp)
template<class _BidirectionalIter>
_STLP_MOVE_TO_STD_NAMESPACE
void 
inplace_merge (_BidirectionalIter __first, _BidirectionalIter __middle, _BidirectionalIter __last)
template<class _BidirectionalIter, class _Compare>
void inplace_merge (_BidirectionalIter __first, _BidirectionalIter __middle, _BidirectionalIter __last, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
bool 
__includes (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _Compare>
_STLP_MOVE_TO_STD_NAMESPACE
bool 
includes (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _Compare __comp)
template<class _InputIter1, class _InputIter2>
bool includes (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
_OutputIter 
__set_union (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE
_OutputIter 
set_union (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_union (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
_OutputIter 
__set_intersection (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE
_OutputIter 
set_intersection (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_intersection (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
_OutputIter 
__set_difference (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE
_OutputIter 
set_difference (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_difference (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
_OutputIter 
__set_symmetric_difference (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE
_OutputIter 
set_symmetric_difference (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result)
template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_symmetric_difference (_InputIter1 __first1, _InputIter1 __last1, _InputIter2 __first2, _InputIter2 __last2, _OutputIter __result, _Compare __comp)
template<class _ForwardIter>
_ForwardIter max_element (_ForwardIter __first, _ForwardIter __last)
template<class _ForwardIter, class _Compare>
_ForwardIter max_element (_ForwardIter __first, _ForwardIter __last, _Compare __comp)
template<class _ForwardIter>
_ForwardIter min_element (_ForwardIter __first, _ForwardIter __last)
template<class _ForwardIter, class _Compare>
_ForwardIter min_element (_ForwardIter __first, _ForwardIter __last, _Compare __comp)
template<class _BidirectionalIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
bool 
__next_permutation (_BidirectionalIter __first, _BidirectionalIter __last, _Compare __comp)
template<class _BidirectionalIter>
_STLP_MOVE_TO_STD_NAMESPACE
bool 
next_permutation (_BidirectionalIter __first, _BidirectionalIter __last)
template<class _BidirectionalIter, class _Compare>
bool next_permutation (_BidirectionalIter __first, _BidirectionalIter __last, _Compare __comp)
template<class _BidirectionalIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE
bool 
__prev_permutation (_BidirectionalIter __first, _BidirectionalIter __last, _Compare __comp)
template<class _BidirectionalIter>
_STLP_MOVE_TO_STD_NAMESPACE
bool 
prev_permutation (_BidirectionalIter __first, _BidirectionalIter __last)
template<class _BidirectionalIter, class _Compare>
bool prev_permutation (_BidirectionalIter __first, _BidirectionalIter __last, _Compare __comp)
template<class _RandomAccessIter, class _Distance, class _StrictWeakOrdering>
_STLP_MOVE_TO_PRIV_NAMESPACE
bool 
__is_heap (_RandomAccessIter __first, _StrictWeakOrdering __comp, _Distance __n)
template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE
bool 
is_heap (_RandomAccessIter __first, _RandomAccessIter __last)
template<class _RandomAccessIter, class _StrictWeakOrdering>
bool is_heap (_RandomAccessIter __first, _RandomAccessIter __last, _StrictWeakOrdering __comp)
template<class _ForwardIter, class _StrictWeakOrdering>
_STLP_MOVE_TO_PRIV_NAMESPACE
bool 
__is_sorted (_ForwardIter __first, _ForwardIter __last, _StrictWeakOrdering __comp)

Variables

const int __stl_chunk_size = 7


Define Documentation

#define __stl_threshold   16

Definition at line 892 of file _algo.c.

Referenced by __final_insertion_sort(), and __introsort_loop().


Function Documentation

template<class _RandomAccessIter, class _Distance, class _Compare>
void __chunk_insertion_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Distance  __chunk_size,
_Compare  __comp 
)

Definition at line 1049 of file _algo.c.

References __insertion_sort(), and _STLP_VALUE_TYPE.

Referenced by __merge_sort_with_buffer().

template<class _ForwardIter, class _Tp, class _Compare1, class _Compare2, class _Distance>
pair<_ForwardIter, _ForwardIter> __equal_range ( _ForwardIter  __first,
_ForwardIter  __last,
const _Tp &  __val,
_Compare1  __comp1,
_Compare2  __comp2,
_Distance *  __dist 
)

Definition at line 1369 of file _algo.c.

References __lower_bound(), __upper_bound(), _STLP_VERBOSE_ASSERT, advance(), and distance().

Referenced by equal_range().

template<class _RandomAccessIter, class _Compare>
void __final_insertion_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Compare  __comp 
)

Definition at line 947 of file _algo.c.

References __insertion_sort(), __stl_threshold, __unguarded_insertion_sort(), and _STLP_VALUE_TYPE.

Referenced by sort().

template<class _InputIter1, class _InputIter2, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE bool __includes ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_Compare  __comp 
)

Definition at line 1569 of file _algo.c.

References _STLP_DEBUG_CHECK, and _STLP_VERBOSE_ASSERT.

Referenced by includes().

template<class _BidirectionalIter, class _Tp, class _Distance, class _Compare>
void __inplace_merge_aux ( _BidirectionalIter  __first,
_BidirectionalIter  __middle,
_BidirectionalIter  __last,
_Tp *  ,
_Distance *  ,
_Compare  __comp 
) [inline]

template<class _ForwardIter, class _Predicate, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE _ForwardIter __inplace_stable_partition ( _ForwardIter  __first,
_ForwardIter  __last,
_Predicate  __pred,
_Distance  __len,
bool  __pred_of_first,
bool  __pred_of_before_last 
)

Definition at line 738 of file _algo.c.

References __rotate(), and advance().

Referenced by __stable_partition_aux_aux().

template<class _RandomAccessIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE void __inplace_stable_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Compare  __comp 
)

Definition at line 1008 of file _algo.c.

References __insertion_sort(), __merge_without_buffer(), and _STLP_VALUE_TYPE.

Referenced by __stable_sort_aux().

template<class _RandomAccessIter, class _Tp, class _Compare>
void __insertion_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Tp *  ,
_Compare  __comp 
)

template<class _RandomAccessIter, class _Tp, class _Size, class _Compare>
void __introsort_loop ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Tp *  ,
_Size  __depth_limit,
_Compare  __comp 
)

Definition at line 958 of file _algo.c.

References __median(), __stl_threshold, __unguarded_partition(), and partial_sort().

Referenced by sort().

template<class _RandomAccessIter, class _Distance, class _StrictWeakOrdering>
_STLP_MOVE_TO_PRIV_NAMESPACE bool __is_heap ( _RandomAccessIter  __first,
_StrictWeakOrdering  __comp,
_Distance  __n 
)

Definition at line 1952 of file _algo.c.

References _STLP_VERBOSE_ASSERT.

Referenced by is_heap().

template<class _ForwardIter, class _StrictWeakOrdering>
_STLP_MOVE_TO_PRIV_NAMESPACE bool __is_sorted ( _ForwardIter  __first,
_ForwardIter  __last,
_StrictWeakOrdering  __comp 
)

Definition at line 1985 of file _algo.c.

References _STLP_DEBUG_CHECK, and _STLP_VERBOSE_ASSERT.

Referenced by is_sorted().

template<class _RandomAccessIter, class _Tp, class _Compare>
void __linear_insert ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Tp  __val,
_Compare  __comp 
) [inline]

Definition at line 909 of file _algo.c.

References __unguarded_linear_insert(), _STLP_VERBOSE_ASSERT, and copy_backward().

template<class _Tp, class _Compare>
const _Tp& __median ( const _Tp &  __a,
const _Tp &  __b,
const _Tp &  __c,
_Compare  __comp 
) [inline]

Definition at line 83 of file _algo.c.

References _STLP_VERBOSE_ASSERT.

template<class _Tp>
const _Tp& __median ( const _Tp &  __a,
const _Tp &  __b,
const _Tp &  __c 
) [inline]

Definition at line 62 of file _algo.c.

Referenced by __introsort_loop(), and __nth_element().

template<class _BidirectionalIter, class _Distance, class _Pointer, class _Compare>
void __merge_adaptive ( _BidirectionalIter  __first,
_BidirectionalIter  __middle,
_BidirectionalIter  __last,
_Distance  __len1,
_Distance  __len2,
_Pointer  __buffer,
_Distance  __buffer_size,
_Compare  __comp 
)

template<class _BidirectionalIter1, class _BidirectionalIter2, class _BidirectionalIter3, class _Compare>
_BidirectionalIter3 __merge_backward ( _BidirectionalIter1  __first1,
_BidirectionalIter1  __last1,
_BidirectionalIter2  __first2,
_BidirectionalIter2  __last2,
_BidirectionalIter3  __result,
_Compare  __comp 
)

Definition at line 1491 of file _algo.c.

References _STLP_VERBOSE_ASSERT, and copy_backward().

Referenced by __merge_adaptive().

template<class _RandomAccessIter1, class _RandomAccessIter2, class _Distance, class _Compare>
void __merge_sort_loop ( _RandomAccessIter1  __first,
_RandomAccessIter1  __last,
_RandomAccessIter2  __result,
_Distance  __step_size,
_Compare  __comp 
)

Definition at line 1025 of file _algo.c.

References merge(), and min().

Referenced by __merge_sort_with_buffer().

template<class _RandomAccessIter, class _Pointer, class _Distance, class _Compare>
void __merge_sort_with_buffer ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Pointer  __buffer,
_Distance *  ,
_Compare  __comp 
)

Definition at line 1062 of file _algo.c.

References __chunk_insertion_sort(), and __merge_sort_loop().

Referenced by __stable_sort_adaptive().

template<class _BidirectionalIter, class _Distance, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE void __merge_without_buffer ( _BidirectionalIter  __first,
_BidirectionalIter  __middle,
_BidirectionalIter  __last,
_Distance  __len1,
_Distance  __len2,
_Compare  __comp 
)

template<class _BidirectionalIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE bool __next_permutation ( _BidirectionalIter  __first,
_BidirectionalIter  __last,
_Compare  __comp 
)

template<class _RandomAccessIter, class _Tp, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE void __nth_element ( _RandomAccessIter  __first,
_RandomAccessIter  __nth,
_RandomAccessIter  __last,
_Tp *  ,
_Compare  __comp 
)

Definition at line 1302 of file _algo.c.

References __insertion_sort(), __median(), __unguarded_partition(), and _STLP_VALUE_TYPE.

Referenced by nth_element().

template<class _RandomAccessIter, class _Tp, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE void __partial_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __middle,
_RandomAccessIter  __last,
_Tp *  ,
_Compare  __comp 
)

Definition at line 1208 of file _algo.c.

References __pop_heap(), _STLP_DISTANCE_TYPE, _STLP_VERBOSE_ASSERT, make_heap(), and sort_heap().

Referenced by partial_sort().

template<class _InputIter, class _RandomAccessIter, class _Compare, class _Distance, class _Tp>
_STLP_MOVE_TO_PRIV_NAMESPACE _RandomAccessIter __partial_sort_copy ( _InputIter  __first,
_InputIter  __last,
_RandomAccessIter  __result_first,
_RandomAccessIter  __result_last,
_Compare  __comp,
_Distance *  ,
_Tp *   
)

Definition at line 1244 of file _algo.c.

References __adjust_heap(), _STLP_VERBOSE_ASSERT, make_heap(), and sort_heap().

Referenced by partial_sort_copy().

template<class _BidirectionalIter, class _Predicate>
_STLP_INLINE_LOOP _BidirectionalIter __partition ( _BidirectionalIter  __first,
_BidirectionalIter  __last,
_Predicate  __pred,
const bidirectional_iterator_tag  
)

Definition at line 683 of file _algo.c.

References iter_swap().

template<class _ForwardIter, class _Predicate>
_STLP_MOVE_TO_PRIV_NAMESPACE _STLP_INLINE_LOOP _ForwardIter __partition ( _ForwardIter  __first,
_ForwardIter  __last,
_Predicate  __pred,
const forward_iterator_tag  
)

Definition at line 662 of file _algo.c.

References swap.

Referenced by partition().

template<class _BidirectionalIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE bool __prev_permutation ( _BidirectionalIter  __first,
_BidirectionalIter  __last,
_Compare  __comp 
)

Definition at line 1896 of file _algo.c.

References _STLP_MOVE_TO_STD_NAMESPACE, _STLP_VERBOSE_ASSERT, iter_swap(), and reverse().

Referenced by prev_permutation().

template<class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE _Distance __random_number ( _Distance  __n  )  [inline]

Definition at line 515 of file _algo.c.

Referenced by __random_sample(), random_sample_n(), and random_shuffle().

template<class _InputIter, class _RandomAccessIter, class _RandomNumberGenerator, class _Distance>
_RandomAccessIter __random_sample ( _InputIter  __first,
_InputIter  __last,
_RandomAccessIter  __out_ite,
_RandomNumberGenerator &  __rand,
const _Distance  __n 
)

Definition at line 612 of file _algo.c.

template<class _InputIter, class _RandomAccessIter, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE _RandomAccessIter __random_sample ( _InputIter  __first,
_InputIter  __last,
_RandomAccessIter  __out_ite,
const _Distance  __n 
)

Definition at line 591 of file _algo.c.

References __random_number().

Referenced by random_sample().

template<class _ForwardIter>
_ForwardIter __rotate ( _ForwardIter  __first,
_ForwardIter  __middle,
_ForwardIter  __last 
)

template<class _BidirectionalIter1, class _BidirectionalIter2, class _Distance>
_BidirectionalIter1 __rotate_adaptive ( _BidirectionalIter1  __first,
_BidirectionalIter1  __middle,
_BidirectionalIter1  __last,
_Distance  __len1,
_Distance  __len2,
_BidirectionalIter2  __buffer,
_Distance  __buffer_size 
)

Definition at line 1081 of file _algo.c.

References __rotate(), copy(), and copy_backward().

Referenced by __merge_adaptive().

template<class _RandomAccessIter, class _Distance>
_RandomAccessIter __rotate_aux ( _RandomAccessIter  __first,
_RandomAccessIter  __middle,
_RandomAccessIter  __last,
_Distance *  __dis,
const random_access_iterator_tag  
) [inline]

Definition at line 486 of file _algo.c.

References __rotate_aux(), and _STLP_VALUE_TYPE.

template<class _RandomAccessIter, class _Distance, class _Tp>
_RandomAccessIter __rotate_aux ( _RandomAccessIter  __first,
_RandomAccessIter  __middle,
_RandomAccessIter  __last,
_Distance *  ,
_Tp *   
)

Definition at line 429 of file _algo.c.

References __gcd(), and swap_ranges().

template<class _BidirectionalIter, class _Distance>
_BidirectionalIter __rotate_aux ( _BidirectionalIter  __first,
_BidirectionalIter  __middle,
_BidirectionalIter  __last,
_Distance *  ,
const bidirectional_iterator_tag  
)

Definition at line 402 of file _algo.c.

References __reverse(), bidirectional_iterator_tag, and swap.

template<class _ForwardIter, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE _ForwardIter __rotate_aux ( _ForwardIter  __first,
_ForwardIter  __middle,
_ForwardIter  __last,
_Distance *  ,
const forward_iterator_tag  
)

Definition at line 369 of file _algo.c.

References swap.

Referenced by __rotate(), and __rotate_aux().

template<class _ForwardIter, class _Integer, class _Tp, class _Distance, class _BinaryPred>
_ForwardIter __search_n ( _ForwardIter  __first,
_ForwardIter  __last,
_Integer  __count,
const _Tp &  __val,
_BinaryPred  __pred,
_Distance *  ,
const forward_iterator_tag  
)

Definition at line 220 of file _algo.c.

References _STLP_MOVE_TO_STD_NAMESPACE.

template<class _RandomAccessIter, class _Integer, class _Tp, class _BinaryPred, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE _RandomAccessIter __search_n ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Integer  __count,
const _Tp &  __val,
_BinaryPred  __pred,
_Distance *  ,
const random_access_iterator_tag  
)

Definition at line 154 of file _algo.c.

Referenced by search_n().

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE _OutputIter __set_difference ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1696 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_VERBOSE_ASSERT, and copy().

Referenced by set_difference().

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE _OutputIter __set_intersection ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1653 of file _algo.c.

References _STLP_DEBUG_CHECK, and _STLP_VERBOSE_ASSERT.

Referenced by set_intersection().

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE _OutputIter __set_symmetric_difference ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1739 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_VERBOSE_ASSERT, and copy().

Referenced by set_symmetric_difference().

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE _OutputIter __set_union ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1605 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_VERBOSE_ASSERT, and copy().

Referenced by set_union().

template<class _ForwardIter, class _Pointer, class _Predicate, class _Distance>
_ForwardIter __stable_partition_adaptive ( _ForwardIter  __first,
_ForwardIter  __last,
_Predicate  __pred,
_Distance  __len,
_Pointer  __buffer,
_Distance  __buffer_size,
bool  __pred_of_first,
bool  __pred_of_before_last 
)

Definition at line 754 of file _algo.c.

References __rotate(), advance(), and copy().

Referenced by __stable_partition_aux_aux().

template<class _BidirectIter, class _Predicate>
_BidirectIter __stable_partition_aux ( _BidirectIter  __first,
_BidirectIter  __last,
_Predicate  __pred,
const bidirectional_iterator_tag  
)

Definition at line 824 of file _algo.c.

References __stable_partition_aux_aux(), _STLP_DISTANCE_TYPE, and _STLP_VALUE_TYPE.

template<class _ForwardIter, class _Predicate>
_ForwardIter __stable_partition_aux ( _ForwardIter  __first,
_ForwardIter  __last,
_Predicate  __pred,
const forward_iterator_tag  
)

Definition at line 815 of file _algo.c.

References __stable_partition_aux_aux(), _STLP_DISTANCE_TYPE, and _STLP_VALUE_TYPE.

Referenced by stable_partition().

template<class _ForwardIter, class _Predicate, class _Tp, class _Distance>
_ForwardIter __stable_partition_aux_aux ( _ForwardIter  __first,
_ForwardIter  __last,
_Predicate  __pred,
_Tp *  ,
_Distance *  ,
bool  __pred_of_before_last = false 
) [inline]

template<class _RandomAccessIter, class _Pointer, class _Distance, class _Compare>
void __stable_sort_adaptive ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Pointer  __buffer,
_Distance  __buffer_size,
_Compare  __comp 
)

Definition at line 1147 of file _algo.c.

References __merge_adaptive(), and __merge_sort_with_buffer().

Referenced by __stable_sort_aux().

template<class _RandomAccessIter, class _Tp, class _Distance, class _Compare>
void __stable_sort_aux ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Tp *  ,
_Distance *  ,
_Compare  __comp 
)

template<class _RandomAccessIter, class _Compare>
void __unguarded_insertion_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Compare  __comp 
) [inline]

Definition at line 940 of file _algo.c.

References __unguarded_insertion_sort_aux(), and _STLP_VALUE_TYPE.

Referenced by __final_insertion_sort().

template<class _RandomAccessIter, class _Tp, class _Compare>
void __unguarded_insertion_sort_aux ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Tp *  ,
_Compare  __comp 
)

Definition at line 932 of file _algo.c.

Referenced by __unguarded_insertion_sort().

template<class _RandomAccessIter, class _Tp, class _Compare>
void __unguarded_linear_insert ( _RandomAccessIter  __last,
_Tp  __val,
_Compare  __comp 
)

Definition at line 895 of file _algo.c.

References _STLP_VERBOSE_ASSERT.

Referenced by __linear_insert().

template<class _RandomAccessIter, class _Tp, class _Compare>
_STLP_MOVE_TO_PRIV_NAMESPACE _RandomAccessIter __unguarded_partition ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Tp  __pivot,
_Compare  __comp 
)

Definition at line 871 of file _algo.c.

References _STLP_VERBOSE_ASSERT, and iter_swap().

Referenced by __introsort_loop(), and __nth_element().

template<class _InputIter, class _ForwardIter, class _BinaryPredicate>
_STLP_INLINE_LOOP _ForwardIter __unique_copy ( _InputIter  __first,
_InputIter  __last,
_ForwardIter  __result,
_BinaryPredicate  __binary_pred,
const forward_iterator_tag  
)

Definition at line 317 of file _algo.c.

template<class _InputIter, class _OutputIter, class _BinaryPredicate>
_OutputIter __unique_copy ( _InputIter  __first,
_InputIter  __last,
_OutputIter  __result,
_BinaryPredicate  __binary_pred,
const output_iterator_tag  
) [inline]

Definition at line 310 of file _algo.c.

References __unique_copy(), and _STLP_VALUE_TYPE.

template<class _InputIterator, class _OutputIterator, class _BinaryPredicate, class _Tp>
_STLP_MOVE_TO_PRIV_NAMESPACE _STLP_INLINE_LOOP _OutputIterator __unique_copy ( _InputIterator  __first,
_InputIterator  __last,
_OutputIterator  __result,
_BinaryPredicate  __binary_pred,
_Tp *   
)

Definition at line 295 of file _algo.c.

Referenced by __unique_copy(), and unique_copy().

template<class _ForwardIter, class _Tp, class _Compare1, class _Compare2, class _Distance>
_STLP_MOVE_TO_PRIV_NAMESPACE _ForwardIter __upper_bound ( _ForwardIter  __first,
_ForwardIter  __last,
const _Tp &  __val,
_Compare1  __comp1,
_Compare2  __comp2,
_Distance *   
)

Definition at line 1344 of file _algo.c.

References _STLP_VERBOSE_ASSERT, advance(), and distance().

Referenced by __equal_range(), and upper_bound().

template<class _ForwardIter1, class _ForwardIter2>
_ForwardIter1 find_end ( _ForwardIter1  __first1,
_ForwardIter1  __last1,
_ForwardIter2  __first2,
_ForwardIter2  __last2 
)

Definition at line 273 of file _algo.c.

Referenced by basic_string< _CharT, _Traits, _Alloc >::rfind().

template<class _InputIter1, class _InputIter2>
bool includes ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2 
)

Definition at line 1595 of file _algo.c.

template<class _InputIter1, class _InputIter2, class _Compare>
_STLP_MOVE_TO_STD_NAMESPACE bool includes ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_Compare  __comp 
)

Definition at line 1589 of file _algo.c.

template<class _BidirectionalIter, class _Compare>
void inplace_merge ( _BidirectionalIter  __first,
_BidirectionalIter  __middle,
_BidirectionalIter  __last,
_Compare  __comp 
)

template<class _BidirectionalIter>
_STLP_MOVE_TO_STD_NAMESPACE void inplace_merge ( _BidirectionalIter  __first,
_BidirectionalIter  __middle,
_BidirectionalIter  __last 
)

Definition at line 1541 of file _algo.c.

template<class _RandomAccessIter, class _StrictWeakOrdering>
bool is_heap ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_StrictWeakOrdering  __comp 
)

Definition at line 1975 of file _algo.c.

References __is_heap(), _STLP_DEBUG_CHECK, and _STLP_PRIV.

template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE bool is_heap ( _RandomAccessIter  __first,
_RandomAccessIter  __last 
)

Definition at line 1969 of file _algo.c.

template<class _ForwardIter, class _Compare>
_ForwardIter max_element ( _ForwardIter  __first,
_ForwardIter  __last,
_Compare  __comp 
)

Definition at line 1799 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_PRIV, and _STLP_VERBOSE_ASSERT.

template<class _ForwardIter>
_ForwardIter max_element ( _ForwardIter  __first,
_ForwardIter  __last 
)

Definition at line 1788 of file _algo.c.

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter merge ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1428 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_PRIV, _STLP_VERBOSE_ASSERT, and copy().

template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE _OutputIter merge ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result 
)

Definition at line 1407 of file _algo.c.

Referenced by __merge_adaptive(), and __merge_sort_loop().

template<class _ForwardIter, class _Compare>
_ForwardIter min_element ( _ForwardIter  __first,
_ForwardIter  __last,
_Compare  __comp 
)

Definition at line 1825 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_PRIV, and _STLP_VERBOSE_ASSERT.

template<class _ForwardIter>
_ForwardIter min_element ( _ForwardIter  __first,
_ForwardIter  __last 
)

Definition at line 1814 of file _algo.c.

template<class _BidirectionalIter, class _Compare>
bool next_permutation ( _BidirectionalIter  __first,
_BidirectionalIter  __last,
_Compare  __comp 
)

Definition at line 1887 of file _algo.c.

References __next_permutation(), _STLP_DEBUG_CHECK, and _STLP_PRIV.

template<class _BidirectionalIter>
_STLP_MOVE_TO_STD_NAMESPACE bool next_permutation ( _BidirectionalIter  __first,
_BidirectionalIter  __last 
)

Definition at line 1880 of file _algo.c.

template<class _RandomAccessIter, class _Compare>
void nth_element ( _RandomAccessIter  __first,
_RandomAccessIter  __nth,
_RandomAccessIter  __last,
_Compare  __comp 
)

Definition at line 1332 of file _algo.c.

References __nth_element(), _STLP_DEBUG_CHECK, _STLP_PRIV, and _STLP_VALUE_TYPE.

template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE void nth_element ( _RandomAccessIter  __first,
_RandomAccessIter  __nth,
_RandomAccessIter  __last 
)

Definition at line 1323 of file _algo.c.

template<class _RandomAccessIter, class _Compare>
void partial_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __middle,
_RandomAccessIter  __last,
_Compare  __comp 
)

Definition at line 1233 of file _algo.c.

References __partial_sort(), _STLP_DEBUG_CHECK, _STLP_PRIV, and _STLP_VALUE_TYPE.

template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE void partial_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __middle,
_RandomAccessIter  __last 
)

Definition at line 1224 of file _algo.c.

Referenced by __introsort_loop().

template<class _InputIter, class _RandomAccessIter, class _Compare>
_RandomAccessIter partial_sort_copy ( _InputIter  __first,
_InputIter  __last,
_RandomAccessIter  __result_first,
_RandomAccessIter  __result_last,
_Compare  __comp 
)

template<class _InputIter, class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE _RandomAccessIter partial_sort_copy ( _InputIter  __first,
_InputIter  __last,
_RandomAccessIter  __result_first,
_RandomAccessIter  __result_last 
)

Definition at line 1275 of file _algo.c.

template<class _ForwardIter, class _Predicate>
_STLP_MOVE_TO_STD_NAMESPACE _ForwardIter partition ( _ForwardIter  __first,
_ForwardIter  __last,
_Predicate  __pred 
)

Definition at line 724 of file _algo.c.

References __partition(), _STLP_DEBUG_CHECK, _STLP_ITERATOR_CATEGORY, and _STLP_PRIV.

template<class _BidirectionalIter, class _Compare>
bool prev_permutation ( _BidirectionalIter  __first,
_BidirectionalIter  __last,
_Compare  __comp 
)

Definition at line 1938 of file _algo.c.

References __prev_permutation(), _STLP_DEBUG_CHECK, and _STLP_PRIV.

template<class _BidirectionalIter>
_STLP_MOVE_TO_STD_NAMESPACE bool prev_permutation ( _BidirectionalIter  __first,
_BidirectionalIter  __last 
)

Definition at line 1931 of file _algo.c.

template<class _InputIter, class _RandomAccessIter, class _RandomNumberGenerator>
_RandomAccessIter random_sample ( _InputIter  __first,
_InputIter  __last,
_RandomAccessIter  __out_first,
_RandomAccessIter  __out_last,
_RandomNumberGenerator &  __rand 
)

Definition at line 646 of file _algo.c.

References __random_sample(), _STLP_DEBUG_CHECK, and _STLP_PRIV.

template<class _InputIter, class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE _RandomAccessIter random_sample ( _InputIter  __first,
_InputIter  __last,
_RandomAccessIter  __out_first,
_RandomAccessIter  __out_last 
)

Definition at line 636 of file _algo.c.

template<class _ForwardIter, class _OutputIter, class _Distance, class _RandomNumberGenerator>
_OutputIter random_sample_n ( _ForwardIter  __first,
_ForwardIter  __last,
_OutputIter  __out_ite,
const _Distance  __n,
_RandomNumberGenerator &  __rand 
)

Definition at line 568 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_PRIV, distance(), and min().

template<class _ForwardIter, class _OutputIter, class _Distance>
_OutputIter random_sample_n ( _ForwardIter  __first,
_ForwardIter  __last,
_OutputIter  __out_ite,
const _Distance  __n 
)

Definition at line 546 of file _algo.c.

template<class _RandomAccessIter, class _RandomNumberGenerator>
void random_shuffle ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_RandomNumberGenerator &  __rand 
)

Definition at line 535 of file _algo.c.

References _STLP_DEBUG_CHECK, _STLP_PRIV, and iter_swap().

template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE void random_shuffle ( _RandomAccessIter  __first,
_RandomAccessIter  __last 
)

Definition at line 526 of file _algo.c.

template<class _ForwardIter>
_STLP_MOVE_TO_STD_NAMESPACE void rotate ( _ForwardIter  __first,
_ForwardIter  __middle,
_ForwardIter  __last 
)

Definition at line 505 of file _algo.c.

template<class _ForwardIter1, class _ForwardIter2>
_STLP_MOVE_TO_STD_NAMESPACE _ForwardIter1 search ( _ForwardIter1  __first1,
_ForwardIter1  __last1,
_ForwardIter2  __first2,
_ForwardIter2  __last2 
)

template<class _ForwardIter, class _Integer, class _Tp, class _BinaryPred>
_ForwardIter search_n ( _ForwardIter  __first,
_ForwardIter  __last,
_Integer  __count,
const _Tp &  __val,
_BinaryPred  __binary_pred 
)

template<class _ForwardIter, class _Integer, class _Tp>
_STLP_MOVE_TO_STD_NAMESPACE _ForwardIter search_n ( _ForwardIter  __first,
_ForwardIter  __last,
_Integer  __count,
const _Tp &  __val 
)

Definition at line 246 of file _algo.c.

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_difference ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1729 of file _algo.c.

References __set_difference(), and _STLP_PRIV.

template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE _OutputIter set_difference ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result 
)

Definition at line 1720 of file _algo.c.

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_intersection ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1686 of file _algo.c.

References __set_intersection(), and _STLP_PRIV.

template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE _OutputIter set_intersection ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result 
)

Definition at line 1677 of file _algo.c.

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_symmetric_difference ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1777 of file _algo.c.

References __set_symmetric_difference(), and _STLP_PRIV.

template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE _OutputIter set_symmetric_difference ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result 
)

Definition at line 1768 of file _algo.c.

template<class _InputIter1, class _InputIter2, class _OutputIter, class _Compare>
_OutputIter set_union ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result,
_Compare  __comp 
)

Definition at line 1643 of file _algo.c.

References __set_union(), and _STLP_PRIV.

template<class _InputIter1, class _InputIter2, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE _OutputIter set_union ( _InputIter1  __first1,
_InputIter1  __last1,
_InputIter2  __first2,
_InputIter2  __last2,
_OutputIter  __result 
)

Definition at line 1634 of file _algo.c.

template<class _RandomAccessIter, class _Compare>
void sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Compare  __comp 
)

template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE void sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last 
)

Definition at line 981 of file _algo.c.

template<class _ForwardIter, class _Predicate>
_STLP_MOVE_TO_STD_NAMESPACE _ForwardIter stable_partition ( _ForwardIter  __first,
_ForwardIter  __last,
_Predicate  __pred 
)

template<class _RandomAccessIter, class _Compare>
void stable_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last,
_Compare  __comp 
)

template<class _RandomAccessIter>
_STLP_MOVE_TO_STD_NAMESPACE void stable_sort ( _RandomAccessIter  __first,
_RandomAccessIter  __last 
)

Definition at line 1185 of file _algo.c.

template<class _InputIter, class _OutputIter, class _BinaryPredicate>
_OutputIter unique_copy ( _InputIter  __first,
_InputIter  __last,
_OutputIter  __result,
_BinaryPredicate  __binary_pred 
)

Definition at line 357 of file _algo.c.

References __unique_copy(), _STLP_DEBUG_CHECK, _STLP_ITERATOR_CATEGORY, and _STLP_PRIV.

template<class _InputIter, class _OutputIter>
_STLP_MOVE_TO_STD_NAMESPACE _OutputIter unique_copy ( _InputIter  __first,
_InputIter  __last,
_OutputIter  __result 
)

Definition at line 347 of file _algo.c.

Referenced by unique().


Variable Documentation

const int __stl_chunk_size = 7

Definition at line 1046 of file _algo.c.



Generated on Mon Mar 10 15:32:48 2008 by  doxygen 1.5.1