29 #ifndef _GLIBCXX_DEBUG_SAFE_UNORDERED_BASE_H
30 #define _GLIBCXX_DEBUG_SAFE_UNORDERED_BASE_H 1
36 class _Safe_unordered_container_base;
65 { this->
_M_attach(const_cast<_Safe_sequence_base*>(__seq), __constant); }
76 _Safe_unordered_container_base*
77 _M_get_container() const noexcept;
85 void _M_attach(_Safe_sequence_base* __seq,
bool __constant);
119 typedef _Safe_sequence_base
_Base;
130 : _M_local_iterators(
nullptr), _M_const_local_iterators(
nullptr)
139 _Safe_unordered_container_base(_Safe_unordered_container_base&& __x)
141 : _Safe_unordered_container_base()
142 { this->_M_swap(__x); }
147 { this->_M_detach_all(); }
Basic functionality for a safe iterator.
void _M_attach_single(_Safe_sequence_base *__seq, bool __constant)
_Safe_local_iterator_base(const _Safe_sequence_base *__seq, bool __constant)
GNU debug classes for public use.
void _M_attach(_Safe_sequence_base *__seq, bool __constant)
Basic functionality for a safe iterator.
Base class that supports tracking of local iterators that reference an unordered container.
~_Safe_unordered_container_base() noexcept
_Safe_local_iterator_base(const _Safe_local_iterator_base &__x, bool __constant)
_Safe_local_iterator_base()
_Safe_sequence_base * _M_sequence
_Safe_iterator_base * _M_local_iterators
The list of mutable local iterators that reference this container.
Base class that supports tracking of iterators that reference a sequence.
_Safe_iterator_base * _M_const_local_iterators
The list of constant local iterators that reference this container.