.TH "__gnu_debug::_Safe_forward_list< _SafeSequence >" 3cxx "Fri Dec 2 2016" "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME __gnu_debug::_Safe_forward_list< _SafeSequence > \- .SH SYNOPSIS .br .PP .PP Inherits \fB__gnu_debug::_Safe_sequence< _SafeSequence >\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "void \fB_M_attach\fP (\fB_Safe_iterator_base\fP *__it, bool __constant)" .br .ti -1c .RI "void \fB_M_attach_single\fP (\fB_Safe_iterator_base\fP *__it, bool __constant) throw ()" .br .ti -1c .RI "void \fB_M_detach\fP (\fB_Safe_iterator_base\fP *__it)" .br .ti -1c .RI "void \fB_M_detach_single\fP (\fB_Safe_iterator_base\fP *__it) throw ()" .br .ti -1c .RI "void \fB_M_invalidate_all\fP () const" .br .ti -1c .RI "void \fB_M_invalidate_if\fP (_Predicate __pred)" .br .ti -1c .RI "void \fB_M_transfer_from_if\fP (\fB_Safe_sequence\fP &__from, _Predicate __pred)" .br .in -1c .SS "Public Attributes" .in +1c .ti -1c .RI "\fB_Safe_iterator_base\fP * \fB_M_const_iterators\fP" .br .ti -1c .RI "\fB_Safe_iterator_base\fP * \fB_M_iterators\fP" .br .ti -1c .RI "unsigned int \fB_M_version\fP" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "void \fB_M_detach_all\fP ()" .br .ti -1c .RI "void \fB_M_detach_singular\fP ()" .br .ti -1c .RI "__gnu_cxx::__mutex & \fB_M_get_mutex\fP () throw ()" .br .ti -1c .RI "void \fB_M_invalidate_all\fP ()" .br .ti -1c .RI "void \fB_M_revalidate_singular\fP ()" .br .ti -1c .RI "void \fB_M_swap\fP (\fB_Safe_sequence_base\fP &) noexcept" .br .in -1c .SH "Detailed Description" .PP .SS "template .br class __gnu_debug::_Safe_forward_list< _SafeSequence >" Special iterators swap and invalidation for forward_list because of the before_begin iterator\&. .PP Definition at line 44 of file debug/forward_list\&. .SH "Member Function Documentation" .PP .SS "void __gnu_debug::_Safe_sequence_base::_M_attach (\fB_Safe_iterator_base\fP * __it, bool __constant)\fC [inherited]\fP" Attach an iterator to this sequence\&. .SS "void __gnu_debug::_Safe_sequence_base::_M_attach_single (\fB_Safe_iterator_base\fP * __it, bool __constant)\fC [inherited]\fP" Likewise but not thread safe\&. .SS "void __gnu_debug::_Safe_sequence_base::_M_detach (\fB_Safe_iterator_base\fP * __it)\fC [inherited]\fP" Detach an iterator from this sequence .SS "void __gnu_debug::_Safe_sequence_base::_M_detach_all ()\fC [protected]\fP, \fC [inherited]\fP" Detach all iterators, leaving them singular\&. .SS "void __gnu_debug::_Safe_sequence_base::_M_detach_single (\fB_Safe_iterator_base\fP * __it)\fC [inherited]\fP" Likewise but not thread safe\&. .SS "void __gnu_debug::_Safe_sequence_base::_M_detach_singular ()\fC [protected]\fP, \fC [inherited]\fP" Detach all singular iterators\&. .PP \fBPostcondition:\fP .RS 4 for all iterators i attached to this sequence, i->_M_version == _M_version\&. .RE .PP .SS "__gnu_cxx::__mutex& __gnu_debug::_Safe_sequence_base::_M_get_mutex ()\fC [protected]\fP, \fC [inherited]\fP" For use in _Safe_sequence\&. .PP Referenced by __gnu_debug::_Safe_sequence< map< _Key, _Tp, _Compare, _Allocator > >::_M_transfer_from_if()\&. .SS "void __gnu_debug::_Safe_sequence_base::_M_invalidate_all () const\fC [inline]\fP, \fC [inherited]\fP" Invalidates all iterators\&. .PP Definition at line 241 of file safe_base\&.h\&. .PP References __gnu_debug::_Safe_iterator_base::_M_attach(), __gnu_debug::_Safe_iterator_base::_M_attach_single(), __gnu_debug::_Safe_iterator_base::_M_detach(), and __gnu_debug::_Safe_iterator_base::_M_detach_single()\&. .SS "void \fB__gnu_debug::_Safe_sequence\fP< _SafeSequence >::_M_invalidate_if (_Predicate __pred)\fC [inherited]\fP" Invalidates all iterators \fCx\fP that reference this sequence, are not singular, and for which \fC__pred(x)\fP returns \fCtrue\fP\&. \fC__pred\fP will be invoked with the normal iterators nested in the safe ones\&. .PP Definition at line 38 of file safe_sequence\&.tcc\&. .SS "void __gnu_debug::_Safe_sequence_base::_M_revalidate_singular ()\fC [protected]\fP, \fC [inherited]\fP" Revalidates all attached singular iterators\&. This method may be used to validate iterators that were invalidated before (but for some reason, such as an exception, need to become valid again)\&. .SS "void \fB__gnu_debug::_Safe_sequence\fP< _SafeSequence >::_M_transfer_from_if (\fB_Safe_sequence\fP< _SafeSequence > & __from, _Predicate __pred)\fC [inherited]\fP" Transfers all iterators \fCx\fP that reference \fCfrom\fP sequence, are not singular, and for which \fC__pred(x)\fP returns \fCtrue\fP\&. \fC__pred\fP will be invoked with the normal iterators nested in the safe ones\&. .PP Definition at line 69 of file safe_sequence\&.tcc\&. .SH "Member Data Documentation" .PP .SS "\fB_Safe_iterator_base\fP* __gnu_debug::_Safe_sequence_base::_M_const_iterators\fC [inherited]\fP" .PP The list of constant iterators that reference this container\&. .PP Definition at line 186 of file safe_base\&.h\&. .PP Referenced by __gnu_debug::_Safe_sequence< map< _Key, _Tp, _Compare, _Allocator > >::_M_transfer_from_if()\&. .SS "\fB_Safe_iterator_base\fP* __gnu_debug::_Safe_sequence_base::_M_iterators\fC [inherited]\fP" .PP The list of mutable iterators that reference this container\&. .PP Definition at line 183 of file safe_base\&.h\&. .PP Referenced by __gnu_debug::_Safe_sequence< map< _Key, _Tp, _Compare, _Allocator > >::_M_transfer_from_if()\&. .SS "unsigned int __gnu_debug::_Safe_sequence_base::_M_version\fC [mutable]\fP, \fC [inherited]\fP" .PP The container version number\&. This number may never be 0\&. .PP Definition at line 189 of file safe_base\&.h\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.