template<typename_Iterator,typename_Sequence>void__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach(_Safe_sequence_base*__seq)[inline]
Attach iterator to the given sequence.
References __gnu_debug::_Safe_local_iterator_base::_M_attach(), and __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_S_constant().
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=().
void__gnu_debug::_Safe_local_iterator_base::_M_attach(_Safe_sequence_base*__seq,bool__constant)[protected],[inherited]
Attaches this iterator to the given container, detaching it from whatever container it was attached to
originally. If the new container is the NULL pointer, the iterator is left unattached.
Referenced by __gnu_debug::_Safe_local_iterator_base::_Safe_local_iterator_base(),
__gnu_debug::_Safe_local_iterator_base::_Safe_local_iterator_base(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach().
template<typename_Iterator,typename_Sequence>void__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach_single(_Safe_sequence_base*__seq)[inline]
Likewise, but not thread-safe.
References __gnu_debug::_Safe_local_iterator_base::_M_attach_single(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_S_constant().
void__gnu_debug::_Safe_local_iterator_base::_M_attach_single(_Safe_sequence_base*__seq,bool__constant)[protected],[inherited]
Likewise, but not thread-safe.
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach_single().
bool__gnu_debug::_Safe_iterator_base::_M_attached_to(const_Safe_sequence_base*__seq)const[inline],[inherited]
Determines if we are attached to the given sequence.
References __gnu_debug::_Safe_iterator_base::_M_sequence.
bool__gnu_debug::_Safe_iterator_base::_M_can_compare(const_Safe_iterator_base&__x)const[inherited]
Can we compare this iterator to the given iterator __x? Returns true if both iterators are nonsingular
and reference the same sequence.
template<typename_Iterator,typename_Sequence>bool__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_dereferenceable()const[inline]
Is the iterator dereferenceable?
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_end(), and
__gnu_debug::_Safe_iterator_base::_M_singular().
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator*(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator->().
void__gnu_debug::_Safe_local_iterator_base::_M_detach()[protected],[inherited]
Detach the iterator for whatever container it is attached to, if any.
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=().
void__gnu_debug::_Safe_local_iterator_base::_M_detach_single()[protected],[inherited]
Likewise, but not thread-safe.
__gnu_cxx::__mutex&__gnu_debug::_Safe_iterator_base::_M_get_mutex()[protected],[inherited]
For use in _Safe_iterator.
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator++(),
__gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::operator++(),
__gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::operator=(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(), __gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::operator=(), and __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=().
template<typename_Iterator,typename_Sequence>template<typename_Other>bool__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_in_same_bucket(const_Safe_local_iterator<_Other,_Sequence>&__other)const[inline]
Is this iterator part of the same bucket as the other one?
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::bucket().
template<typename_Iterator,typename_Sequence>bool__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_incrementable()const[inline]
Is the iterator incrementable?
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_end(), and
__gnu_debug::_Safe_iterator_base::_M_singular().
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator++(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator++().
void__gnu_debug::_Safe_iterator_base::_M_invalidate()[inline],[inherited]
Invalidate the iterator, making it singular.
References __gnu_debug::_Safe_iterator_base::_M_version.
template<typename_Iterator,typename_Sequence>bool__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_begin()const[inline]
Is this iterator equal to the sequence's begin(bucket) iterator?
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::bucket().
template<typename_Iterator,typename_Sequence>bool__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_end()const[inline]
Is this iterator equal to the sequence's end(bucket) iterator?
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::bucket().
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_dereferenceable(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_incrementable().
void__gnu_debug::_Safe_iterator_base::_M_reset()[inherited]
Reset all member variables
bool__gnu_debug::_Safe_iterator_base::_M_singular()const[inherited]
Is this iterator singular?
Referenced by __gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::_Safe_iterator(),
__gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::_Safe_iterator(),
__gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::_Safe_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::__check_singular_aux(), __gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::_M_dereferenceable(), __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_dereferenceable(),
__gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::_M_incrementable(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_incrementable(),
__gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::operator=(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(), __gnu_debug::_Safe_iterator<_Iterator,_Sequence,_Category>::operator=(), and __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=().
void__gnu_debug::_Safe_iterator_base::_M_unlink()[inline],[inherited]
Unlink itself
References __gnu_debug::_Safe_iterator_base::_M_next, and __gnu_debug::_Safe_iterator_base::_M_prior.
template<typename_Iterator,typename_Sequence>bool__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_value_initialized()const[inline]
Is the iterator value-initialized?
References __gnu_debug::_Safe_iterator_base::_M_version, and __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base().
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=().
template<typename_Iterator,typename_Sequence>staticconstexprbool__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_S_constant()[inline],[static],[constexpr]
Determine if this is a constant iterator.
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach_single().
template<typename_Iterator,typename_Sequence>_Iterator&__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base()[inline],[noexcept]
Return the underlying iterator.
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_Safe_local_iterator(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_begin(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_end(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_value_initialized(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::bucket(), __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator*(), __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator++(), __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator->(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=().
template<typename_Iterator,typename_Sequence>size_type__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::bucket()const[inline]
Return the bucket.
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base().
Referenced by __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_in_same_bucket(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_begin(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_is_end().
template<typename_Iterator,typename_Sequence>__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator_Iterator()const[inline]
Conversion to underlying non-debug iterator to allow better interaction with non-debug containers.
template<typename_Iterator,typename_Sequence>reference__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator*()const[inline]
Iterator dereference.
Precondition
iterator is dereferenceable
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_dereferenceable(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base().
template<typename_Iterator,typename_Sequence>_Safe_local_iterator&__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator++()[inline]
Iterator preincrement.
Precondition
iterator is incrementable
References __gnu_debug::_Safe_iterator_base::_M_get_mutex(), __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_incrementable(), and __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base().
template<typename_Iterator,typename_Sequence>_Safe_local_iterator__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator++(int)[inline]
Iterator postincrement.
Precondition
iterator is incrementable
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_incrementable().
template<typename_Iterator,typename_Sequence>pointer__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator->()const[inline]
Iterator dereference.
Precondition
iterator is dereferenceable
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_dereferenceable(), and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base().
template<typename_Iterator,typename_Sequence>_Safe_local_iterator&__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(_Safe_local_iterator<_Iterator,_Sequence>&&__x)[inline],[noexcept]
Move assignment.
Postcondition
__x is singular and unattached
References std::__addressof(), __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach(),
__gnu_debug::_Safe_local_iterator_base::_M_detach(), __gnu_debug::_Safe_iterator_base::_M_get_mutex(),
__gnu_debug::_Safe_iterator_base::_M_sequence, __gnu_debug::_Safe_iterator_base::_M_singular(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_value_initialized(),
__gnu_debug::_Safe_iterator_base::_M_version, __gnu_debug::_Safe_sequence_base::_M_version, and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base().
template<typename_Iterator,typename_Sequence>_Safe_local_iterator&__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::operator=(const_Safe_local_iterator<_Iterator,_Sequence>&__x)[inline]
Copy assignment.
References __gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_attach(),
__gnu_debug::_Safe_local_iterator_base::_M_detach(), __gnu_debug::_Safe_iterator_base::_M_get_mutex(),
__gnu_debug::_Safe_iterator_base::_M_sequence, __gnu_debug::_Safe_iterator_base::_M_singular(),
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::_M_value_initialized(),
__gnu_debug::_Safe_iterator_base::_M_version, __gnu_debug::_Safe_sequence_base::_M_version, and
__gnu_debug::_Safe_local_iterator<_Iterator,_Sequence>::base().