STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Public Attributes | List of all members
_Vb_iter_base< _Alloc > Class Template Reference
Inheritance diagram for _Vb_iter_base< _Alloc >:
_Iterator012< random_access_iterator_tag, bool, _Alloc::difference_type, bool *, bool, _Iterator_base > _Iterator_base0 _Vb_const_iterator< _Alloc > _Vb_reference< _Alloc > _Vb_iterator< _Alloc >

Public Types

typedef _Alloc::size_type _Sizet
 
typedef vector< bool, _Alloc > _Mycont
 
- Public Types inherited from _Iterator012< random_access_iterator_tag, bool, _Alloc::difference_type, bool *, bool, _Iterator_base >
typedef random_access_iterator_tag iterator_category
 
typedef bool value_type
 
typedef _Alloc::difference_type difference_type
 
typedef boolpointer
 
typedef bool reference
 

Public Member Functions

 _Vb_iter_base ()
 
 _Vb_iter_base (const _Vbase *_Ptr, _Sizet _Off, const _Container_base *_Mypvbool)
 
void _Advance (_Sizet _Off)
 
int _Valid (_Sizet _Inc) const
 
- Public Member Functions inherited from _Iterator_base0
void _Adopt (const void *)
 
const _Container_base0_Getcont () const
 

Public Attributes

const _Vbase_Myptr
 
_Sizet _Myoff
 

Member Typedef Documentation

template<class _Alloc >
typedef vector<bool, _Alloc> _Vb_iter_base< _Alloc >::_Mycont
template<class _Alloc >
typedef _Alloc::size_type _Vb_iter_base< _Alloc >::_Sizet

Constructor & Destructor Documentation

template<class _Alloc >
_Vb_iter_base< _Alloc >::_Vb_iter_base ( )
inline
1879  : _Myptr(0), _Myoff(0)
1880  { // construct with null pointer
1881  }
const _Vbase * _Myptr
Definition: vector:1913
_Sizet _Myoff
Definition: vector:1914
template<class _Alloc >
_Vb_iter_base< _Alloc >::_Vb_iter_base ( const _Vbase _Ptr,
_Sizet  _Off,
const _Container_base _Mypvbool 
)
inline
1885  : _Myptr(_Ptr), _Myoff(_Off)
1886  { // construct with offset and pointer
1887  this->_Adopt(_Mypvbool);
1888  }
const _Vbase * _Myptr
Definition: vector:1913
void _Adopt(const void *)
Definition: xutility:53
_Sizet _Myoff
Definition: vector:1914

Member Function Documentation

template<class _Alloc >
void _Vb_iter_base< _Alloc >::_Advance ( _Sizet  _Off)
inline
1891  { // advance iterator by _Off
1892  _Myoff += _Off;
1893  _Myptr += _Myoff / _VBITS;
1894  _Myoff %= _VBITS;
1895  }
const _Vbase * _Myptr
Definition: vector:1913
const int _VBITS
Definition: vector:1862
_Sizet _Myoff
Definition: vector:1914
template<class _Alloc >
int _Vb_iter_base< _Alloc >::_Valid ( _Sizet  _Inc) const
inline
1898  { // test for valid incremented offset
1899  #if _ITERATOR_DEBUG_LEVEL == 2
1900  const auto _Cont = static_cast<const _Mycont *>(this->_Getcont());
1901  _Sizet _Mysize = _Cont->_Mysize;
1902 
1903  _Inc += _Myoff;
1904  _Inc += _VBITS * (_Myptr - _Cont->_Myvec.data());
1905  return (_Inc < _Mysize ? -1 : _Inc == _Mysize ? 0 : +1);
1906 
1907  #else /* _ITERATOR_DEBUG_LEVEL == 2 */
1908  (void) _Inc;
1909  return (-1);
1910  #endif /* _ITERATOR_DEBUG_LEVEL == 2 */
1911  }
_Alloc::size_type _Sizet
Definition: vector:1875
const _Container_base0 * _Getcont() const
Definition: xutility:57
vector< bool, _Alloc > _Mycont
Definition: vector:1876
const _Vbase * _Myptr
Definition: vector:1913
_CRT_BEGIN_C_HEADER typedef void(__CRTDECL *unexpected_handler)()
const int _VBITS
Definition: vector:1862
_Sizet _Myoff
Definition: vector:1914

Member Data Documentation

template<class _Alloc >
_Sizet _Vb_iter_base< _Alloc >::_Myoff
template<class _Alloc >
const _Vbase* _Vb_iter_base< _Alloc >::_Myptr

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