29 #ifndef _GLIBCXX_DEBUG_SAFE_BASE_H 
   30 #define _GLIBCXX_DEBUG_SAFE_BASE_H 1 
   36   class _Safe_sequence_base;
 
   77     : _M_sequence(0), _M_version(0), _M_prior(0), _M_next(0)
 
   88     : _M_sequence(0), _M_version(0), _M_prior(0), _M_next(0)
 
   89     { this->
_M_attach(const_cast<_Safe_sequence_base*>(__seq), __constant); }
 
   95     : _M_sequence(0), _M_version(0), _M_prior(0), _M_next(0)
 
  115     void _M_attach(_Safe_sequence_base* __seq, 
bool __constant);
 
  118     void _M_attach_single(_Safe_sequence_base* __seq, 
bool __constant) throw ();
 
  130     { 
return _M_sequence == __seq; }
 
  192     : _M_iterators(0), _M_const_iterators(0), _M_version(1)
 
  195 #if __cplusplus >= 201103L 
  199     _Safe_sequence_base(_Safe_sequence_base&& __x) noexcept
 
  200       : _Safe_sequence_base()
 
  243     { 
if (++_M_version == 0) _M_version = 1; }
 
void _M_revalidate_singular()
void _M_detach(_Safe_iterator_base *__it)
_Safe_iterator_base * _M_prior
_Safe_iterator_base * _M_const_iterators
The list of constant iterators that reference this container. 
void _M_attach(_Safe_sequence_base *__seq, bool __constant)
Basic functionality for a safe iterator. 
bool _M_can_compare(const _Safe_iterator_base &__x) const 
_Safe_iterator_base * _M_next
unsigned int _M_version
The container version number. This number may never be 0. 
void _M_swap(_Safe_sequence_base &__x)
_Safe_iterator_base(const _Safe_sequence_base *__seq, bool __constant)
void _M_detach_singular()
__gnu_cxx::__mutex & _M_get_mutex()
_Safe_sequence_base * _M_sequence
bool _M_attached_to(const _Safe_sequence_base *__seq) const 
_Safe_iterator_base * _M_iterators
The list of mutable iterators that reference this container. 
void _M_attach_single(_Safe_sequence_base *__seq, bool __constant)
void _M_invalidate_all() const 
GNU debug classes for public use. 
void _M_detach_single(_Safe_iterator_base *__it)
void _M_attach(_Safe_iterator_base *__it, bool __constant)
__gnu_cxx::__mutex & _M_get_mutex()
_Safe_iterator_base(const _Safe_iterator_base &__x, bool __constant)
void _M_attach_single(_Safe_iterator_base *__it, bool __constant)
Base class that supports tracking of iterators that reference a sequence.