|
| | mark_t ()=default |
| | Initialize an empty mark_t.
|
| |
| template<class iterator > |
| | mark_t (const iterator &begin, const iterator &end) |
| | Create a mark_t from a range of set numbers.
|
| |
| | mark_t (std::initializer_list< unsigned > vals) |
| | Create a mark_t from a list of set numbers.
|
| |
| size_t | hash () const noexcept |
| | Returns a hash value for this mark.
|
| |
| bool | operator== (mark_t o) const |
| | Equality comparison.
|
| |
| bool | operator!= (mark_t o) const |
| | Inequality comparison.
|
| |
| bool | operator< (mark_t o) const |
| | Less-than comparison.
|
| |
| bool | operator<= (mark_t o) const |
| | Less-or-equal comparison.
|
| |
| bool | operator> (mark_t o) const |
| | Greater-than comparison.
|
| |
| bool | operator>= (mark_t o) const |
| | Greater-or-equal comparison.
|
| |
| | operator bool () const |
| | Returns true iff the mark is non-empty (at least one bit set).
|
| |
| bool | has (unsigned u) const |
| | Returns true iff acceptance set u is in this mark.
|
| |
| void | set (unsigned u) |
| | Add acceptance set u to this mark.
|
| |
| void | clear (unsigned u) |
| | Remove acceptance set u from this mark.
|
| |
| mark_t & | operator&= (mark_t r) |
| | Intersection-assignment.
|
| |
| mark_t & | operator|= (mark_t r) |
| | Union-assignment.
|
| |
| mark_t & | operator-= (mark_t r) |
| | Difference-assignment (removes bits set in r).
|
| |
| mark_t & | operator^= (mark_t r) |
| | Symmetric-difference-assignment.
|
| |
| mark_t | operator& (mark_t r) const |
| | Intersection.
|
| |
| mark_t | operator| (mark_t r) const |
| | Union.
|
| |
| mark_t | operator- (mark_t r) const |
| | Difference (bits in this mark but not in r).
|
| |
| mark_t | operator~ () const |
| | Bitwise complement.
|
| |
| mark_t | operator^ (mark_t r) const |
| | Symmetric difference.
|
| |
| mark_t | operator<< (unsigned i) const |
| | Left-shift all acceptance set indices by i.
|
| |
| mark_t & | operator<<= (unsigned i) |
| | Left-shift-assignment.
|
| |
| mark_t | operator>> (unsigned i) const |
| | Right-shift all acceptance set indices by i.
|
| |
| mark_t & | operator>>= (unsigned i) |
| | Right-shift-assignment.
|
| |
| mark_t | strip (mark_t y) const |
| | Remove bits indexed by y and compact the remaining bits.
|
| |
| bool | subset (mark_t m) const |
| | Whether the set of bits represented by *this is a subset of those represented by m.
|
| |
| bool | proper_subset (mark_t m) const |
| | Whether the set of bits represented by *this is a proper subset of those represented by m.
|
| |
| unsigned | count () const |
| | Number of bits set.
|
| |
| unsigned | max_set () const |
| | The number of the highest set used plus one.
|
| |
| unsigned | min_set () const |
| | The number of the lowest set used plus one.
|
| |
| mark_t | lowest () const |
| | A mark_t where all bits have been removed except the lowest one.
|
| |
| bool | is_singleton () const |
| | Whether the mark contains only one bit set.
|
| |
| bool | has_many () const |
| | Whether the mark contains at least two bits set.
|
| |
| mark_t & | remove_some (unsigned n) |
| | Remove n bits that were set.
|
| |
| template<class iterator > |
| void | fill (iterator here) const |
| | Fill a container with the indices of the bits that are set.
|
| |
| spot::internal::mark_container | sets () const |
| | Returns some iterable object that contains the used sets.
|
| |
| std::string | as_string () const |
| | Returns a string representation of this mark.
|
| |
An acceptance mark.
This type is used to represent a set of acceptance sets. It works (and is implemented) like a bit vector where bit at index i represents the membership to the i-th acceptance set.
Typically, each transition of an automaton is labeled by a mark_t that represents the membership of the transition to each of the acceptance sets.
For efficiency reason, the maximum number of acceptance sets (i.e., the size of the bit vector) supported is a compile-time constant. It can be changed by passing an option to the configure script of Spot.
| unsigned spot::acc_cond::mark_t::max_set |
( |
| ) |
const |
|
inline |
The number of the highest set used plus one.
If no set is used, this returns 0, If the sets {1,3,8} are used, this returns 9.