libstdc++
__gnu_cxx::slist< _Tp, _Alloc > Class Template Reference

Inherits __gnu_cxx::_Slist_base< _Tp, _Alloc >.

Public Types

typedef _Base::allocator_type allocator_type
 
typedef _Slist_iterator< _Tp, const _Tp &, const _Tp * > const_iterator
 
typedef const value_type * const_pointer
 
typedef const value_type & const_reference
 
typedef std::ptrdiff_t difference_type
 
typedef _Slist_iterator< _Tp, _Tp &, _Tp * > iterator
 
typedef value_type * pointer
 
typedef value_type & reference
 
typedef std::size_t size_type
 
typedef _Tp value_type
 

Public Member Functions

template<class _InputIterator >
 slist (_InputIterator __first, _InputIterator __last, const allocator_type &__a=allocator_type())
 
 slist (const allocator_type &__a=allocator_type())
 
 slist (const slist &__x)
 
 slist (size_type __n)
 
 slist (size_type __n, const value_type &__x, const allocator_type &__a=allocator_type())
 
template<class _InputIterator >
void _M_assign_dispatch (_InputIterator __first, _InputIterator __last, std::__false_type)
 
template<class _Integer >
void _M_assign_dispatch (_Integer __n, _Integer __val, std::__true_type)
 
void _M_fill_assign (size_type __n, const _Tp &__val)
 
template<class _InputIterator >
void assign (_InputIterator __first, _InputIterator __last)
 
void assign (size_type __n, const _Tp &__val)
 
iterator before_begin ()
 
const_iterator before_begin () const
 
iterator begin ()
 
const_iterator begin () const
 
void clear ()
 
bool empty () const
 
iterator end ()
 
const_iterator end () const
 
iterator erase (iterator __first, iterator __last)
 
iterator erase (iterator __pos)
 
iterator erase_after (iterator __before_first, iterator __last)
 
iterator erase_after (iterator __pos)
 
reference front ()
 
const_reference front () const
 
allocator_type get_allocator () const
 
iterator insert (iterator __pos)
 
template<class _InIterator >
void insert (iterator __pos, _InIterator __first, _InIterator __last)
 
iterator insert (iterator __pos, const value_type &__x)
 
void insert (iterator __pos, size_type __n, const value_type &__x)
 
iterator insert_after (iterator __pos)
 
template<class _InIterator >
void insert_after (iterator __pos, _InIterator __first, _InIterator __last)
 
iterator insert_after (iterator __pos, const value_type &__x)
 
void insert_after (iterator __pos, size_type __n, const value_type &__x)
 
size_type max_size () const
 
template<class _StrictWeakOrdering >
void merge (slist &, _StrictWeakOrdering)
 
void merge (slist &__x)
 
slistoperator= (const slist &__x)
 
void pop_front ()
 
iterator previous (const_iterator __pos)
 
const_iterator previous (const_iterator __pos) const
 
void push_front ()
 
void push_front (const value_type &__x)
 
void remove (const _Tp &__val)
 
template<class _Predicate >
void remove_if (_Predicate __pred)
 
void resize (size_type new_size)
 
void resize (size_type new_size, const _Tp &__x)
 
void reverse ()
 
size_type size () const
 
void sort ()
 
template<class _StrictWeakOrdering >
void sort (_StrictWeakOrdering __comp)
 
void splice (iterator __pos, slist &__x)
 
void splice (iterator __pos, slist &__x, iterator __first, iterator __last)
 
void splice (iterator __pos, slist &__x, iterator __i)
 
void splice_after (iterator __pos, iterator __before_first, iterator __before_last)
 
void splice_after (iterator __pos, iterator __prev)
 
void splice_after (iterator __pos, slist &__x)
 
void swap (slist &__x)
 
void unique ()
 
template<class _BinaryPredicate >
void unique (_BinaryPredicate __pred)
 

Detailed Description

template<class _Tp, class _Alloc = std::allocator<_Tp>>
class __gnu_cxx::slist< _Tp, _Alloc >

This is an SGI extension.

Todo:
Needs documentation! See http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html

Definition at line 287 of file slist.

Member Typedef Documentation

◆ allocator_type

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef _Base::allocator_type __gnu_cxx::slist< _Tp, _Alloc >::allocator_type

Definition at line 307 of file slist.

◆ const_iterator

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef _Slist_iterator<_Tp, const _Tp&, const _Tp*> __gnu_cxx::slist< _Tp, _Alloc >::const_iterator

Definition at line 305 of file slist.

◆ const_pointer

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef const value_type* __gnu_cxx::slist< _Tp, _Alloc >::const_pointer

Definition at line 298 of file slist.

◆ const_reference

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef const value_type& __gnu_cxx::slist< _Tp, _Alloc >::const_reference

Definition at line 300 of file slist.

◆ difference_type

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef std::ptrdiff_t __gnu_cxx::slist< _Tp, _Alloc >::difference_type

Definition at line 302 of file slist.

◆ iterator

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef _Slist_iterator<_Tp, _Tp&, _Tp*> __gnu_cxx::slist< _Tp, _Alloc >::iterator

Definition at line 304 of file slist.

◆ pointer

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef value_type* __gnu_cxx::slist< _Tp, _Alloc >::pointer

Definition at line 297 of file slist.

◆ reference

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef value_type& __gnu_cxx::slist< _Tp, _Alloc >::reference

Definition at line 299 of file slist.

◆ size_type

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef std::size_t __gnu_cxx::slist< _Tp, _Alloc >::size_type

Definition at line 301 of file slist.

◆ value_type

template<class _Tp , class _Alloc = std::allocator<_Tp>>
typedef _Tp __gnu_cxx::slist< _Tp, _Alloc >::value_type

Definition at line 296 of file slist.

Constructor & Destructor Documentation

◆ slist() [1/5]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
__gnu_cxx::slist< _Tp, _Alloc >::slist ( const allocator_type &  __a = allocator_type())
inlineexplicit

Definition at line 358 of file slist.

◆ slist() [2/5]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
__gnu_cxx::slist< _Tp, _Alloc >::slist ( size_type  __n,
const value_type &  __x,
const allocator_type &  __a = allocator_type() 
)
inline

Definition at line 361 of file slist.

◆ slist() [3/5]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
__gnu_cxx::slist< _Tp, _Alloc >::slist ( size_type  __n)
inlineexplicit

Definition at line 367 of file slist.

◆ slist() [4/5]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
template<class _InputIterator >
__gnu_cxx::slist< _Tp, _Alloc >::slist ( _InputIterator  __first,
_InputIterator  __last,
const allocator_type &  __a = allocator_type() 
)
inline

Definition at line 374 of file slist.

◆ slist() [5/5]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
__gnu_cxx::slist< _Tp, _Alloc >::slist ( const slist< _Tp, _Alloc > &  __x)
inline

Definition at line 379 of file slist.

◆ ~slist()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
__gnu_cxx::slist< _Tp, _Alloc >::~slist ( )
inline

Definition at line 386 of file slist.

Member Function Documentation

◆ _M_assign_dispatch() [1/2]

template<class _Tp , class _Alloc >
template<class _InputIterator >
void __gnu_cxx::slist< _Tp, _Alloc >::_M_assign_dispatch ( _InputIterator  __first,
_InputIterator  __last,
std::__false_type   
)

Definition at line 772 of file slist.

◆ _M_assign_dispatch() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
template<class _Integer >
void __gnu_cxx::slist< _Tp, _Alloc >::_M_assign_dispatch ( _Integer  __n,
_Integer  __val,
std::__true_type   
)
inline

Definition at line 411 of file slist.

◆ _M_fill_assign()

template<class _Tp , class _Alloc >
void __gnu_cxx::slist< _Tp, _Alloc >::_M_fill_assign ( size_type  __n,
const _Tp &  __val 
)

Definition at line 753 of file slist.

◆ assign() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
template<class _InputIterator >
void __gnu_cxx::slist< _Tp, _Alloc >::assign ( _InputIterator  __first,
_InputIterator  __last 
)
inline

Definition at line 403 of file slist.

◆ assign() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::assign ( size_type  __n,
const _Tp &  __val 
)
inline

Definition at line 395 of file slist.

◆ before_begin() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::before_begin ( )
inline

Definition at line 445 of file slist.

◆ before_begin() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
const_iterator __gnu_cxx::slist< _Tp, _Alloc >::before_begin ( ) const
inline

Definition at line 449 of file slist.

◆ begin() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::begin ( )
inline

Definition at line 422 of file slist.

◆ begin() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
const_iterator __gnu_cxx::slist< _Tp, _Alloc >::begin ( ) const
inline

Definition at line 426 of file slist.

◆ clear()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::clear ( )
inline

Definition at line 632 of file slist.

◆ empty()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
bool __gnu_cxx::slist< _Tp, _Alloc >::empty ( ) const
inline

Definition at line 461 of file slist.

◆ end() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::end ( )
inline

Definition at line 430 of file slist.

◆ end() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
const_iterator __gnu_cxx::slist< _Tp, _Alloc >::end ( ) const
inline

Definition at line 434 of file slist.

◆ erase() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::erase ( iterator  __first,
iterator  __last 
)
inline

Definition at line 617 of file slist.

◆ erase() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::erase ( iterator  __pos)
inline

Definition at line 610 of file slist.

◆ erase_after() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::erase_after ( iterator  __before_first,
iterator  __last 
)
inline

Definition at line 603 of file slist.

◆ erase_after() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::erase_after ( iterator  __pos)
inline

Definition at line 599 of file slist.

◆ front() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
reference __gnu_cxx::slist< _Tp, _Alloc >::front ( )
inline

Definition at line 471 of file slist.

◆ front() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
const_reference __gnu_cxx::slist< _Tp, _Alloc >::front ( ) const
inline

Definition at line 475 of file slist.

◆ get_allocator()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
allocator_type __gnu_cxx::slist< _Tp, _Alloc >::get_allocator ( ) const
inline

Definition at line 310 of file slist.

◆ insert() [1/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::insert ( iterator  __pos)
inline

Definition at line 579 of file slist.

◆ insert() [2/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
template<class _InIterator >
void __gnu_cxx::slist< _Tp, _Alloc >::insert ( iterator  __pos,
_InIterator  __first,
_InIterator  __last 
)
inline

Definition at line 593 of file slist.

◆ insert() [3/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::insert ( iterator  __pos,
const value_type &  __x 
)
inline

Definition at line 573 of file slist.

◆ insert() [4/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::insert ( iterator  __pos,
size_type  __n,
const value_type &  __x 
)
inline

Definition at line 585 of file slist.

◆ insert_after() [1/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::insert_after ( iterator  __pos)
inline

Definition at line 558 of file slist.

◆ insert_after() [2/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
template<class _InIterator >
void __gnu_cxx::slist< _Tp, _Alloc >::insert_after ( iterator  __pos,
_InIterator  __first,
_InIterator  __last 
)
inline

Definition at line 569 of file slist.

◆ insert_after() [3/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::insert_after ( iterator  __pos,
const value_type &  __x 
)
inline

Definition at line 554 of file slist.

◆ insert_after() [4/4]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::insert_after ( iterator  __pos,
size_type  __n,
const value_type &  __x 
)
inline

Definition at line 562 of file slist.

◆ max_size()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
size_type __gnu_cxx::slist< _Tp, _Alloc >::max_size ( ) const
inline

Definition at line 457 of file slist.

◆ merge() [1/2]

template<class _Tp , class _Alloc >
template<class _StrictWeakOrdering >
void __gnu_cxx::slist< _Tp, _Alloc >::merge ( slist< _Tp, _Alloc > &  __x,
_StrictWeakOrdering  __comp 
)

Definition at line 975 of file slist.

◆ merge() [2/2]

template<class _Tp , class _Alloc >
void __gnu_cxx::slist< _Tp, _Alloc >::merge ( slist< _Tp, _Alloc > &  __x)

Definition at line 891 of file slist.

◆ operator=()

template<class _Tp , class _Alloc >
slist< _Tp, _Alloc > & __gnu_cxx::slist< _Tp, _Alloc >::operator= ( const slist< _Tp, _Alloc > &  __x)

Definition at line 728 of file slist.

◆ pop_front()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::pop_front ( )
inline

Definition at line 487 of file slist.

◆ previous() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
iterator __gnu_cxx::slist< _Tp, _Alloc >::previous ( const_iterator  __pos)
inline

Definition at line 497 of file slist.

◆ previous() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
const_iterator __gnu_cxx::slist< _Tp, _Alloc >::previous ( const_iterator  __pos) const
inline

Definition at line 502 of file slist.

◆ push_front() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::push_front ( )
inline

Definition at line 483 of file slist.

◆ push_front() [2/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::push_front ( const value_type &  __x)
inline

Definition at line 479 of file slist.

◆ remove()

template<class _Tp , class _Alloc >
void __gnu_cxx::slist< _Tp, _Alloc >::remove ( const _Tp &  __val)

Definition at line 859 of file slist.

◆ remove_if()

template<class _Tp , class _Alloc >
template<class _Predicate >
void __gnu_cxx::slist< _Tp, _Alloc >::remove_if ( _Predicate  __pred)

Definition at line 941 of file slist.

◆ resize() [1/2]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::resize ( size_type  new_size)
inline

Definition at line 628 of file slist.

◆ resize() [2/2]

template<class _Tp , class _Alloc >
void __gnu_cxx::slist< _Tp, _Alloc >::resize ( size_type  new_size,
const _Tp &  __x 
)

Definition at line 843 of file slist.

◆ reverse()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::reverse ( )
inline

Definition at line 691 of file slist.

◆ size()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
size_type __gnu_cxx::slist< _Tp, _Alloc >::size ( ) const
inline

Definition at line 453 of file slist.

◆ sort() [1/2]

template<class _Tp , class _Alloc >
void __gnu_cxx::slist< _Tp, _Alloc >::sort

Definition at line 910 of file slist.

◆ sort() [2/2]

template<class _Tp , class _Alloc >
template<class _StrictWeakOrdering >
void __gnu_cxx::slist< _Tp, _Alloc >::sort ( _StrictWeakOrdering  __comp)

Definition at line 996 of file slist.

◆ splice() [1/3]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::splice ( iterator  __pos,
slist< _Tp, _Alloc > &  __x 
)
inline

Definition at line 663 of file slist.

◆ splice() [2/3]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::splice ( iterator  __pos,
slist< _Tp, _Alloc > &  __x,
iterator  __first,
iterator  __last 
)
inline

Definition at line 680 of file slist.

◆ splice() [3/3]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::splice ( iterator  __pos,
slist< _Tp, _Alloc > &  __x,
iterator  __i 
)
inline

Definition at line 672 of file slist.

◆ splice_after() [1/3]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::splice_after ( iterator  __pos,
iterator  __before_first,
iterator  __before_last 
)
inline

Definition at line 639 of file slist.

◆ splice_after() [2/3]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::splice_after ( iterator  __pos,
iterator  __prev 
)
inline

Definition at line 650 of file slist.

◆ splice_after() [3/3]

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::splice_after ( iterator  __pos,
slist< _Tp, _Alloc > &  __x 
)
inline

Definition at line 658 of file slist.

◆ swap()

template<class _Tp , class _Alloc = std::allocator<_Tp>>
void __gnu_cxx::slist< _Tp, _Alloc >::swap ( slist< _Tp, _Alloc > &  __x)
inline

Definition at line 465 of file slist.

◆ unique() [1/2]

template<class _Tp , class _Alloc >
void __gnu_cxx::slist< _Tp, _Alloc >::unique

Definition at line 873 of file slist.

◆ unique() [2/2]

template<class _Tp , class _Alloc >
template<class _BinaryPredicate >
void __gnu_cxx::slist< _Tp, _Alloc >::unique ( _BinaryPredicate  __pred)

Definition at line 956 of file slist.


The documentation for this class was generated from the following file: