ReactOS  0.4.13-dev-464-g6b95727
_Bit_iterator_base Struct Reference

#include <_bvector.h>

Inheritance diagram for _Bit_iterator_base:

Public Types

typedef ptrdiff_t difference_type
 

Public Member Functions

void _M_bump_up ()
 
void _M_bump_down ()
 
 _Bit_iterator_base ()
 
 _Bit_iterator_base (unsigned int *__x, unsigned int __y)
 
void _M_advance (difference_type __i)
 
difference_type _M_subtract (const _Bit_iterator_base &__x) const
 

Public Attributes

unsigned int_M_p
 
unsigned int _M_offset
 

Detailed Description

Definition at line 103 of file _bvector.h.

Member Typedef Documentation

◆ difference_type

Definition at line 104 of file _bvector.h.

Constructor & Destructor Documentation

◆ _Bit_iterator_base() [1/2]

_Bit_iterator_base::_Bit_iterator_base ( )
inline

Definition at line 123 of file _bvector.h.

123 : _M_p(0), _M_offset(0) {}
unsigned int _M_offset
Definition: _bvector.h:107
unsigned int * _M_p
Definition: _bvector.h:106

◆ _Bit_iterator_base() [2/2]

_Bit_iterator_base::_Bit_iterator_base ( unsigned int __x,
unsigned int  __y 
)
inline

Definition at line 124 of file _bvector.h.

124 : _M_p(__x), _M_offset(__y) {}
unsigned int _M_offset
Definition: _bvector.h:107
unsigned int * _M_p
Definition: _bvector.h:106

Member Function Documentation

◆ _M_advance()

void _Bit_iterator_base::_M_advance ( difference_type  __i)
inline

Definition at line 131 of file _bvector.h.

131  {
132  difference_type __n = __i + _M_offset;
133  _M_p += __n / _STLP_WORD_BIT;
134  __n = __n % _STLP_WORD_BIT;
135  if (__n < 0) {
136  _M_offset = (unsigned int) __n + _STLP_WORD_BIT;
137  --_M_p;
138  } else
139  _M_offset = (unsigned int) __n;
140  }
return __n
Definition: _algo.h:75
unsigned int _M_offset
Definition: _bvector.h:107
unsigned int * _M_p
Definition: _bvector.h:106
#define _STLP_WORD_BIT
Definition: _bvector.h:37
ptrdiff_t difference_type
Definition: _bvector.h:104
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
Definition: typeof.h:31

Referenced by _Bit_iter< _Bit_reference, _Bit_reference * >::operator+=().

◆ _M_bump_down()

void _Bit_iterator_base::_M_bump_down ( )
inline

Definition at line 116 of file _bvector.h.

116  {
117  if (_M_offset-- == 0) {
119  --_M_p;
120  }
121  }
unsigned int _M_offset
Definition: _bvector.h:107
unsigned int * _M_p
Definition: _bvector.h:106
#define _STLP_WORD_BIT
Definition: _bvector.h:37

Referenced by _Bit_iter< _Bit_reference, _Bit_reference * >::operator--().

◆ _M_bump_up()

void _Bit_iterator_base::_M_bump_up ( )
inline

Definition at line 109 of file _bvector.h.

109  {
110  if (_M_offset++ == _STLP_WORD_BIT - 1) {
111  _M_offset = 0;
112  ++_M_p;
113  }
114  }
unsigned int _M_offset
Definition: _bvector.h:107
unsigned int * _M_p
Definition: _bvector.h:106
#define _STLP_WORD_BIT
Definition: _bvector.h:37

Referenced by _Bit_iter< _Bit_reference, _Bit_reference * >::operator++().

◆ _M_subtract()

difference_type _Bit_iterator_base::_M_subtract ( const _Bit_iterator_base __x) const
inline

Definition at line 142 of file _bvector.h.

142  {
143  return _STLP_WORD_BIT * (_M_p - __x._M_p) + _M_offset - __x._M_offset;
144  }
unsigned int _M_offset
Definition: _bvector.h:107
unsigned int * _M_p
Definition: _bvector.h:106
#define _STLP_WORD_BIT
Definition: _bvector.h:37

Referenced by _Bit_iter< _Bit_reference, _Bit_reference * >::operator-().

Member Data Documentation

◆ _M_offset

◆ _M_p


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