Storm 1.10.0.1
A Modern Probabilistic Model Checker
|
A class that enables iterating over the indices of the bit vector whose corresponding bits are set to true. More...
#include <BitVector.h>
Public Types | |
using | iterator_category = std::forward_iterator_tag |
using | value_type = uint_fast64_t |
using | difference_type = std::ptrdiff_t |
using | pointer = uint_fast64_t * |
using | reference = uint_fast64_t & |
Public Member Functions | |
const_reverse_iterator () | |
Constructs a reverse iterator over the indices of the set bits in the given bit vector, starting and stopping, respectively, at the given index range [lowerBound, upperBound). | |
const_reverse_iterator (uint64_t const *dataPtr, uint64_t upperBound, uint64_t lowerBound=0ull, bool setOnFirstBit=true) | |
const_reverse_iterator (const_reverse_iterator const &other) | |
const_reverse_iterator & | operator= (const_reverse_iterator const &other) |
const_reverse_iterator & | operator++ () |
Lets the iterator point to the previous bit with value 1. | |
const_reverse_iterator | operator++ (int) |
Lets the iterator point to the previous bit with value 1. | |
const_reverse_iterator & | operator+= (size_t n) |
Lets the iterator point to the n'th previous bit with value 1. | |
uint_fast64_t | operator* () const |
Returns the index of the current bit to which this iterator points. | |
bool | operator!= (const_reverse_iterator const &other) const |
Compares the iterator with another iterator for inequality. | |
bool | operator== (const_reverse_iterator const &other) const |
Compares the iterator with another iterator for equality. | |
Friends | |
class | BitVector |
A class that enables iterating over the indices of the bit vector whose corresponding bits are set to true.
Note that this is a const iterator, which cannot alter the bit vector. The indices are iterated over from largest to smallest
Definition at line 125 of file BitVector.h.
using storm::storage::BitVector::const_reverse_iterator::difference_type = std::ptrdiff_t |
Definition at line 133 of file BitVector.h.
using storm::storage::BitVector::const_reverse_iterator::iterator_category = std::forward_iterator_tag |
Definition at line 131 of file BitVector.h.
using storm::storage::BitVector::const_reverse_iterator::pointer = uint_fast64_t* |
Definition at line 134 of file BitVector.h.
using storm::storage::BitVector::const_reverse_iterator::reference = uint_fast64_t& |
Definition at line 135 of file BitVector.h.
using storm::storage::BitVector::const_reverse_iterator::value_type = uint_fast64_t |
Definition at line 132 of file BitVector.h.
storm::storage::BitVector::const_reverse_iterator::const_reverse_iterator | ( | ) |
Constructs a reverse iterator over the indices of the set bits in the given bit vector, starting and stopping, respectively, at the given index range [lowerBound, upperBound).
dataPtr | A pointer to the first bucket of the underlying bit vector. |
upperBound | indicates the index where to begin the reverse iteration. We start at the bit with index upperBound-1 |
setOnFirstBit | A flag that indicates whether the iterator is to be moved to the index of the first bit upon construction. |
lowerBound | The index at which to abort the iteration process. |
Definition at line 75 of file BitVector.cpp.
storm::storage::BitVector::const_reverse_iterator::const_reverse_iterator | ( | uint64_t const * | dataPtr, |
uint64_t | upperBound, | ||
uint64_t | lowerBound = 0ull , |
||
bool | setOnFirstBit = true |
||
) |
Definition at line 77 of file BitVector.cpp.
storm::storage::BitVector::const_reverse_iterator::const_reverse_iterator | ( | const_reverse_iterator const & | other | ) |
Definition at line 87 of file BitVector.cpp.
bool storm::storage::BitVector::const_reverse_iterator::operator!= | ( | const_reverse_iterator const & | other | ) | const |
Compares the iterator with another iterator for inequality.
other | The iterator with respect to which inequality is checked. |
Definition at line 123 of file BitVector.cpp.
uint_fast64_t storm::storage::BitVector::const_reverse_iterator::operator* | ( | ) | const |
Returns the index of the current bit to which this iterator points.
Definition at line 119 of file BitVector.cpp.
BitVector::const_reverse_iterator & storm::storage::BitVector::const_reverse_iterator::operator++ | ( | ) |
Lets the iterator point to the previous bit with value 1.
Definition at line 102 of file BitVector.cpp.
BitVector::const_reverse_iterator storm::storage::BitVector::const_reverse_iterator::operator++ | ( | int | ) |
Lets the iterator point to the previous bit with value 1.
Definition at line 106 of file BitVector.cpp.
BitVector::const_reverse_iterator & storm::storage::BitVector::const_reverse_iterator::operator+= | ( | size_t | n | ) |
Lets the iterator point to the n'th previous bit with value 1.
Definition at line 112 of file BitVector.cpp.
BitVector::const_reverse_iterator & storm::storage::BitVector::const_reverse_iterator::operator= | ( | const_reverse_iterator const & | other | ) |
Definition at line 92 of file BitVector.cpp.
bool storm::storage::BitVector::const_reverse_iterator::operator== | ( | const_reverse_iterator const & | other | ) | const |
Compares the iterator with another iterator for equality.
other | The iterator with respect to which equality is checked. |
Definition at line 127 of file BitVector.cpp.
|
friend |
Definition at line 127 of file BitVector.h.