sparrow 0.3.0
Loading...
Searching...
No Matches
sparrow::bitset_iterator< B, is_const > Class Template Reference

Iterator used to iterate over the bits of a dynamic bitset as if they were addressable values. More...

#include <bitset_iterator.hpp>

Inheritance diagram for sparrow::bitset_iterator< B, is_const >:
[legend]
Collaboration diagram for sparrow::bitset_iterator< B, is_const >:
[legend]

Public Types

using self_type = bitset_iterator<B, is_const>
 
using base_type
 
using reference = typename base_type::reference
 
using difference_type = typename base_type::difference_type
 
using block_type = mpl::constify_t<typename B::block_type, is_const>
 
using bitset_type = mpl::constify_t<B, is_const>
 
using size_type = typename B::size_type
 

Public Member Functions

constexpr bitset_iterator () noexcept=default
 
constexpr bitset_iterator (bitset_type *bitset, block_type *block, size_type index)
 

Friends

class iterator_access
 

Detailed Description

template<class B, bool is_const>
class sparrow::bitset_iterator< B, is_const >

Iterator used to iterate over the bits of a dynamic bitset as if they were addressable values.

Template Parameters
Bthe dynamic bitset this iterator operates on
is_consta boolean indicating whether this is a const iterator.

Definition at line 37 of file bitset_iterator.hpp.

Member Typedef Documentation

◆ base_type

template<class B, bool is_const>
using sparrow::bitset_iterator< B, is_const >::base_type
Initial value:
std::contiguous_iterator_tag,
std::conditional_t<is_const, bool, bitset_reference<B>>>
bitset_iterator< B, is_const > self_type
typename constify< T, is_const >::type constify_t
Definition mp_utils.hpp:390

Definition at line 46 of file bitset_iterator.hpp.

◆ bitset_type

template<class B, bool is_const>
using sparrow::bitset_iterator< B, is_const >::bitset_type = mpl::constify_t<B, is_const>

Definition at line 55 of file bitset_iterator.hpp.

◆ block_type

template<class B, bool is_const>
using sparrow::bitset_iterator< B, is_const >::block_type = mpl::constify_t<typename B::block_type, is_const>

Definition at line 54 of file bitset_iterator.hpp.

◆ difference_type

template<class B, bool is_const>
using sparrow::bitset_iterator< B, is_const >::difference_type = typename base_type::difference_type

Definition at line 52 of file bitset_iterator.hpp.

◆ reference

template<class B, bool is_const>
using sparrow::bitset_iterator< B, is_const >::reference = typename base_type::reference

Definition at line 51 of file bitset_iterator.hpp.

◆ self_type

template<class B, bool is_const>
using sparrow::bitset_iterator< B, is_const >::self_type = bitset_iterator<B, is_const>

Definition at line 45 of file bitset_iterator.hpp.

◆ size_type

template<class B, bool is_const>
using sparrow::bitset_iterator< B, is_const >::size_type = typename B::size_type

Definition at line 56 of file bitset_iterator.hpp.

Constructor & Destructor Documentation

◆ bitset_iterator() [1/2]

template<class B, bool is_const>
sparrow::bitset_iterator< B, is_const >::bitset_iterator ( )
constexprdefaultnoexcept
Here is the caller graph for this function:

◆ bitset_iterator() [2/2]

template<class B, bool is_const>
sparrow::bitset_iterator< B, is_const >::bitset_iterator ( bitset_type * bitset,
block_type * block,
size_type index )
constexpr

Definition at line 84 of file bitset_iterator.hpp.

Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ iterator_access

template<class B, bool is_const>
friend class iterator_access
friend

Definition at line 80 of file bitset_iterator.hpp.


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