libstdc++
std::__debug::forward_list< _Tp, _Alloc > Class Template Reference

#include <forward_list>

Inheritance diagram for std::__debug::forward_list< _Tp, _Alloc >:
[legend]

Public Types

typedef _Base::allocator_type allocator_type
 
typedef __gnu_debug::_Safe_iterator< _Base_const_iterator, forward_listconst_iterator
 
typedef _Base::const_pointer const_pointer
 
typedef _Base::const_reference const_reference
 
typedef _Base::difference_type difference_type
 
typedef __gnu_debug::_Safe_iterator< _Base_iterator, forward_listiterator
 
typedef _Base::pointer pointer
 
typedef _Base::reference reference
 
typedef _Base::size_type size_type
 
typedef _Tp value_type
 

Public Member Functions

 forward_list (_Base_ref __x)
 
template<typename _InputIterator, typename = std::_RequireInputIter<_InputIterator>>
 forward_list (_InputIterator __first, _InputIterator __last, const allocator_type &__al=allocator_type())
 
 forward_list (const allocator_type &__al) noexcept
 
 forward_list (const forward_list &)=default
 
 forward_list (const forward_list &__list, const allocator_type &__al)
 
 forward_list (forward_list &&)=default
 
 forward_list (forward_list &&__list, const allocator_type &__al) noexcept(std::is_nothrow_constructible< _Base, _Base, const allocator_type & >::value)
 
 forward_list (size_type __n, const __type_identity_t< _Tp > &__value, const allocator_type &__al=allocator_type())
 
 forward_list (size_type __n, const allocator_type &__al=allocator_type())
 
 forward_list (std::initializer_list< _Tp > __il, const allocator_type &__al=allocator_type())
 
const _Base_M_base () const noexcept
 
_Base_M_base () noexcept
 
template<typename _InputIterator, typename = std::_RequireInputIter<_InputIterator>>
void assign (_InputIterator __first, _InputIterator __last)
 
void assign (size_type __n, const _Tp &__val)
 
void assign (std::initializer_list< _Tp > __il)
 
const_iterator before_begin () const noexcept
 
iterator before_begin () noexcept
 
const_iterator begin () const noexcept
 
iterator begin () noexcept
 
const_iterator cbefore_begin () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
void clear () noexcept
 
template<typename... _Args>
iterator emplace_after (const_iterator __pos, _Args &&... __args)
 
const_iterator end () const noexcept
 
iterator end () noexcept
 
iterator erase_after (const_iterator __pos)
 
iterator erase_after (const_iterator __pos, const_iterator __last)
 
reference front ()
 
const_reference front () const
 
template<typename _InputIterator, typename = std::_RequireInputIter<_InputIterator>>
iterator insert_after (const_iterator __pos, _InputIterator __first, _InputIterator __last)
 
iterator insert_after (const_iterator __pos, _Tp &&__val)
 
iterator insert_after (const_iterator __pos, const _Tp &__val)
 
iterator insert_after (const_iterator __pos, size_type __n, const _Tp &__val)
 
iterator insert_after (const_iterator __pos, std::initializer_list< _Tp > __il)
 
void merge (forward_list &&__list)
 
template<typename _Comp>
void merge (forward_list &&__list, _Comp __comp)
 
void merge (forward_list &__list)
 
template<typename _Comp>
void merge (forward_list &__list, _Comp __comp)
 
forward_listoperator= (const forward_list &)=default
 
forward_listoperator= (forward_list &&)=default
 
forward_listoperator= (std::initializer_list< _Tp > __il)
 
void pop_front ()
 
__remove_return_type remove (const _Tp &__val)
 
template<typename _Pred>
__remove_return_type remove_if (_Pred __pred)
 
void resize (size_type __sz)
 
void resize (size_type __sz, const value_type &__val)
 
void splice_after (const_iterator __pos, forward_list &&__list)
 
void splice_after (const_iterator __pos, forward_list &&__list, const_iterator __before, const_iterator __last)
 
void splice_after (const_iterator __pos, forward_list &&__list, const_iterator __i)
 
void splice_after (const_iterator __pos, forward_list &__list)
 
void splice_after (const_iterator __pos, forward_list &__list, const_iterator __before, const_iterator __last)
 
void splice_after (const_iterator __pos, forward_list &__list, const_iterator __i)
 
void swap (forward_list &__list) noexcept(noexcept(declval< _Base & >().swap(__list)))
 
__remove_return_type unique ()
 
template<typename _BinPred>
__remove_return_type unique (_BinPred __binary_pred)
 

Protected Member Functions

constexpr void _M_swap (const _Safe_container &__x) const noexcept
 

Friends

template<typename _ItT, typename _SeqT, typename _CatT>
class ::__gnu_debug::_Safe_iterator
 

Detailed Description

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
class std::__debug::forward_list< _Tp, _Alloc >

Class std::forward_list with safety/checking/debug instrumentation.

Definition at line 190 of file debug/forward_list.

Member Typedef Documentation

◆ allocator_type

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Base::allocator_type std::__debug::forward_list< _Tp, _Alloc >::allocator_type

Definition at line 226 of file debug/forward_list.

◆ const_iterator

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator< _Base_const_iterator, forward_list> std::__debug::forward_list< _Tp, _Alloc >::const_iterator

Definition at line 220 of file debug/forward_list.

◆ const_pointer

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Base::const_pointer std::__debug::forward_list< _Tp, _Alloc >::const_pointer

Definition at line 228 of file debug/forward_list.

◆ const_reference

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Base::const_reference std::__debug::forward_list< _Tp, _Alloc >::const_reference

Definition at line 215 of file debug/forward_list.

◆ difference_type

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Base::difference_type std::__debug::forward_list< _Tp, _Alloc >::difference_type

Definition at line 223 of file debug/forward_list.

◆ iterator

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator< _Base_iterator, forward_list> std::__debug::forward_list< _Tp, _Alloc >::iterator

Definition at line 218 of file debug/forward_list.

◆ pointer

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Base::pointer std::__debug::forward_list< _Tp, _Alloc >::pointer

Definition at line 227 of file debug/forward_list.

◆ reference

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Base::reference std::__debug::forward_list< _Tp, _Alloc >::reference

Definition at line 214 of file debug/forward_list.

◆ size_type

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Base::size_type std::__debug::forward_list< _Tp, _Alloc >::size_type

Definition at line 222 of file debug/forward_list.

◆ value_type

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
typedef _Tp std::__debug::forward_list< _Tp, _Alloc >::value_type

Definition at line 225 of file debug/forward_list.

Constructor & Destructor Documentation

◆ forward_list() [1/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( const allocator_type & __al)
inlineexplicitnoexcept

Definition at line 235 of file debug/forward_list.

◆ forward_list() [2/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( const forward_list< _Tp, _Alloc > & __list,
const allocator_type & __al )
inline

Definition at line 238 of file debug/forward_list.

◆ forward_list() [3/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( forward_list< _Tp, _Alloc > && __list,
const allocator_type & __al )
inlinenoexcept

Definition at line 242 of file debug/forward_list.

◆ forward_list() [4/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( size_type __n,
const allocator_type & __al = allocator_type() )
inlineexplicit

Definition at line 251 of file debug/forward_list.

◆ forward_list() [5/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( size_type __n,
const __type_identity_t< _Tp > & __value,
const allocator_type & __al = allocator_type() )
inline

Definition at line 255 of file debug/forward_list.

◆ forward_list() [6/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _InputIterator, typename = std::_RequireInputIter<_InputIterator>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( _InputIterator __first,
_InputIterator __last,
const allocator_type & __al = allocator_type() )
inline

Definition at line 262 of file debug/forward_list.

◆ forward_list() [7/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( std::initializer_list< _Tp > __il,
const allocator_type & __al = allocator_type() )
inline

Definition at line 280 of file debug/forward_list.

◆ forward_list() [8/8]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
std::__debug::forward_list< _Tp, _Alloc >::forward_list ( _Base_ref __x)
inline

Definition at line 287 of file debug/forward_list.

Member Function Documentation

◆ _M_base() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const _Base & std::__debug::forward_list< _Tp, _Alloc >::_M_base ( ) const
inlinenoexcept

Definition at line 904 of file debug/forward_list.

◆ _M_base() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
_Base & std::__debug::forward_list< _Tp, _Alloc >::_M_base ( )
inlinenoexcept

Definition at line 901 of file debug/forward_list.

◆ _M_swap()

template<typename _SafeContainer, typename _Alloc, template< typename > class _SafeBase, bool _IsCxx11AllocatorAware = true>
void __gnu_debug::_Safe_container< _SafeContainer, _Alloc, _SafeBase, _IsCxx11AllocatorAware >::_M_swap ( const _Safe_container< _SafeContainer, _Alloc, _SafeBase, _IsCxx11AllocatorAware > & __x) const
inlineconstexprprotectednoexceptinherited

Definition at line 136 of file safe_container.h.

◆ assign() [1/3]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _InputIterator, typename = std::_RequireInputIter<_InputIterator>>
void std::__debug::forward_list< _Tp, _Alloc >::assign ( _InputIterator __first,
_InputIterator __last )
inline

Definition at line 306 of file debug/forward_list.

◆ assign() [2/3]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::assign ( size_type __n,
const _Tp & __val )
inline

Definition at line 354 of file debug/forward_list.

◆ assign() [3/3]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::assign ( std::initializer_list< _Tp > __il)
inline

Definition at line 361 of file debug/forward_list.

◆ before_begin() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const_iterator std::__debug::forward_list< _Tp, _Alloc >::before_begin ( ) const
inlinenoexcept

Definition at line 378 of file debug/forward_list.

◆ before_begin() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::before_begin ( )
inlinenoexcept

Definition at line 373 of file debug/forward_list.

◆ begin() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const_iterator std::__debug::forward_list< _Tp, _Alloc >::begin ( ) const
inlinenoexcept

Definition at line 388 of file debug/forward_list.

◆ begin() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::begin ( )
inlinenoexcept

Definition at line 383 of file debug/forward_list.

◆ cbefore_begin()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const_iterator std::__debug::forward_list< _Tp, _Alloc >::cbefore_begin ( ) const
inlinenoexcept

Definition at line 408 of file debug/forward_list.

◆ cbegin()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const_iterator std::__debug::forward_list< _Tp, _Alloc >::cbegin ( ) const
inlinenoexcept

Definition at line 403 of file debug/forward_list.

◆ cend()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const_iterator std::__debug::forward_list< _Tp, _Alloc >::cend ( ) const
inlinenoexcept

Definition at line 413 of file debug/forward_list.

◆ clear()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::clear ( )
inlinenoexcept

Definition at line 623 of file debug/forward_list.

◆ emplace_after()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename... _Args>
iterator std::__debug::forward_list< _Tp, _Alloc >::emplace_after ( const_iterator __pos,
_Args &&... __args )
inline

Definition at line 457 of file debug/forward_list.

◆ end() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const_iterator std::__debug::forward_list< _Tp, _Alloc >::end ( ) const
inlinenoexcept

Definition at line 398 of file debug/forward_list.

◆ end() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::end ( )
inlinenoexcept

Definition at line 393 of file debug/forward_list.

◆ erase_after() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::erase_after ( const_iterator __pos)
inline

Definition at line 527 of file debug/forward_list.

◆ erase_after() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::erase_after ( const_iterator __pos,
const_iterator __last )
inline

Definition at line 538 of file debug/forward_list.

◆ front() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
reference std::__debug::forward_list< _Tp, _Alloc >::front ( )
inline

Definition at line 423 of file debug/forward_list.

◆ front() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
const_reference std::__debug::forward_list< _Tp, _Alloc >::front ( ) const
inline

Definition at line 431 of file debug/forward_list.

◆ insert_after() [1/5]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _InputIterator, typename = std::_RequireInputIter<_InputIterator>>
iterator std::__debug::forward_list< _Tp, _Alloc >::insert_after ( const_iterator __pos,
_InputIterator __first,
_InputIterator __last )
inline

Definition at line 489 of file debug/forward_list.

◆ insert_after() [2/5]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::insert_after ( const_iterator __pos,
_Tp && __val )
inline

Definition at line 473 of file debug/forward_list.

◆ insert_after() [3/5]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::insert_after ( const_iterator __pos,
const _Tp & __val )
inline

Definition at line 466 of file debug/forward_list.

◆ insert_after() [4/5]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::insert_after ( const_iterator __pos,
size_type __n,
const _Tp & __val )
inline

Definition at line 480 of file debug/forward_list.

◆ insert_after() [5/5]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
iterator std::__debug::forward_list< _Tp, _Alloc >::insert_after ( const_iterator __pos,
std::initializer_list< _Tp > __il )
inline

Definition at line 508 of file debug/forward_list.

◆ merge() [1/4]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::merge ( forward_list< _Tp, _Alloc > && __list)
inline

Definition at line 853 of file debug/forward_list.

◆ merge() [2/4]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _Comp>
void std::__debug::forward_list< _Tp, _Alloc >::merge ( forward_list< _Tp, _Alloc > && __list,
_Comp __comp )
inline

Definition at line 875 of file debug/forward_list.

◆ merge() [3/4]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::merge ( forward_list< _Tp, _Alloc > & __list)
inline

Definition at line 870 of file debug/forward_list.

◆ merge() [4/4]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _Comp>
void std::__debug::forward_list< _Tp, _Alloc >::merge ( forward_list< _Tp, _Alloc > & __list,
_Comp __comp )
inline

Definition at line 894 of file debug/forward_list.

◆ operator=()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
forward_list & std::__debug::forward_list< _Tp, _Alloc >::operator= ( std::initializer_list< _Tp > __il)
inline

Definition at line 296 of file debug/forward_list.

◆ pop_front()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::pop_front ( )
inline

Definition at line 447 of file debug/forward_list.

◆ remove()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
__remove_return_type std::__debug::forward_list< _Tp, _Alloc >::remove ( const _Tp & __val)
inline

Definition at line 754 of file debug/forward_list.

◆ remove_if()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _Pred>
__remove_return_type std::__debug::forward_list< _Tp, _Alloc >::remove_if ( _Pred __pred)
inline

Definition at line 784 of file debug/forward_list.

◆ resize() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::resize ( size_type __sz)
inline

Definition at line 565 of file debug/forward_list.

◆ resize() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::resize ( size_type __sz,
const value_type & __val )
inline

Definition at line 594 of file debug/forward_list.

◆ splice_after() [1/6]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::splice_after ( const_iterator __pos,
forward_list< _Tp, _Alloc > && __list )
inline

Definition at line 631 of file debug/forward_list.

◆ splice_after() [2/6]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::splice_after ( const_iterator __pos,
forward_list< _Tp, _Alloc > && __list,
const_iterator __before,
const_iterator __last )
inline

Definition at line 684 of file debug/forward_list.

◆ splice_after() [3/6]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::splice_after ( const_iterator __pos,
forward_list< _Tp, _Alloc > && __list,
const_iterator __i )
inline

Definition at line 654 of file debug/forward_list.

◆ splice_after() [4/6]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::splice_after ( const_iterator __pos,
forward_list< _Tp, _Alloc > & __list )
inline

Definition at line 650 of file debug/forward_list.

◆ splice_after() [5/6]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::splice_after ( const_iterator __pos,
forward_list< _Tp, _Alloc > & __list,
const_iterator __before,
const_iterator __last )
inline

Definition at line 735 of file debug/forward_list.

◆ splice_after() [6/6]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::splice_after ( const_iterator __pos,
forward_list< _Tp, _Alloc > & __list,
const_iterator __i )
inline

Definition at line 679 of file debug/forward_list.

◆ swap()

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
void std::__debug::forward_list< _Tp, _Alloc >::swap ( forward_list< _Tp, _Alloc > & __list)
inlinenoexcept

Definition at line 557 of file debug/forward_list.

◆ unique() [1/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
__remove_return_type std::__debug::forward_list< _Tp, _Alloc >::unique ( )
inline

Definition at line 813 of file debug/forward_list.

◆ unique() [2/2]

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _BinPred>
__remove_return_type std::__debug::forward_list< _Tp, _Alloc >::unique ( _BinPred __binary_pred)
inline

Definition at line 818 of file debug/forward_list.

Friends And Related Symbol Documentation

◆ ::__gnu_debug::_Safe_iterator

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
template<typename _ItT, typename _SeqT, typename _CatT>
friend class ::__gnu_debug::_Safe_iterator
friend

Definition at line 203 of file debug/forward_list.


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