Go to the source code of this file.
|
template<class _Tp , class _Alloc , class _BinaryPredicate > |
_STLP_MOVE_TO_PRIV_NAMESPACE void | _Slist_unique (slist< _Tp, _Alloc > &__that, _BinaryPredicate __pred) |
|
template<class _Tp , class _Alloc , class _StrictWeakOrdering > |
void | _Slist_merge (slist< _Tp, _Alloc > &__that, slist< _Tp, _Alloc > &__x, _StrictWeakOrdering __comp) |
|
template<class _Tp , class _Alloc , class _StrictWeakOrdering > |
void | _Slist_sort (slist< _Tp, _Alloc > &__that, _StrictWeakOrdering __comp) |
|
◆ _STLP_SLIST_C
◆ _Slist_merge()
template<class _Tp , class _Alloc , class _StrictWeakOrdering >
Definition at line 148 of file _slist.c.
154 while (__ite._M_node->_M_next && !__x.
empty()) {
157 _StlMsg_INVALID_STRICT_WEAK_PREDICATE)
168 while (__i1._M_node->_M_next && __i2._M_node) {
169 if (__comp(
__STATIC_CAST(_Node*, __i1._M_node->_M_next)->_M_data, *__i2)) {
171 _StlMsg_INVALID_STRICT_WEAK_PREDICATE)
iterator insert_after(iterator __pos, const value_type &__x=_Tp())
#define __STATIC_CAST(__x, __y)
_STLP_PRIV _Slist_iterator< _Tp, _Nonconst_traits< _Tp > > iterator
allocator_type get_allocator() const
void splice_after(iterator __pos, _Self &__x, iterator __before_first, iterator __before_last)
#define _STLP_VERBOSE_ASSERT(expr, diagnostic)
Referenced by _Slist_sort(), and slist< value_type, _All >::merge().
◆ _Slist_sort()
template<class _Tp , class _Alloc , class _StrictWeakOrdering >
void _Slist_sort |
( |
slist< _Tp, _Alloc > & |
__that, |
|
|
_StrictWeakOrdering |
__comp |
|
) |
| |
Definition at line 184 of file _slist.c.
185 if (!__that.
begin()._M_node || !__that.
begin()._M_node->_M_next)
192 while (!__that.
empty()) {
193 __carry.splice_after(__carry.before_begin(), __that, __that.
before_begin());
197 __carry.swap(__counter[__i]);
200 __carry.swap(__counter[__i]);
210 for (
int __i = 1; __i <
__fill; ++__i)
void _Slist_merge(slist< _Tp, _Alloc > &__that, slist< _Tp, _Alloc > &__x, _StrictWeakOrdering __comp)
_STLP_THROW_FUNCT_SPEC _STLP_CALL __stl_throw_overflow_error(const char *__msg)
allocator_type get_allocator() const
void __fill(_ForwardIter __first, _ForwardIter __last, const _Tp &__val, const input_iterator_tag &, _Distance *)
Referenced by slist< value_type, _All >::sort().
◆ _Slist_unique()
template<class _Tp , class _Alloc , class _BinaryPredicate >
Definition at line 134 of file _slist.c.
137 if (__ite != __that.
end()) {
138 while (__ite._M_node->_M_next) {
#define __STATIC_CAST(__x, __y)
_STLP_INLINE_LOOP _InputIter _Predicate __pred
iterator erase_after(iterator __pos)
_STLP_PRIV _Slist_iterator< _Tp, _Nonconst_traits< _Tp > > iterator
Referenced by slist< value_type, _All >::unique().