Defined in sims.hpp.
This class provides a means of iterating over the two-sided congruence generating pairs (cgp) of a finite index two-sided congruence defined by a WordGraph.
Public Types | |
| using | const_pointer = const_rcgp_iterator::const_pointer |
| Type of const pointers to value_type. | |
| using | const_reference = const_rcgp_iterator::const_reference |
| Type of const references to value_type. | |
| using | difference_type = const_rcgp_iterator::difference_type |
| Difference type for const_cgp_iterator. | |
| using | felsch_graph_type = Sims1::felsch_graph_type |
| Type of FelschGraph. | |
| using | iterator_category = std::forward_iterator_tag |
| Iterator category (forward iterator). | |
| using | label_type = word_graph_type::label_type |
| Type of the labels in word_graph_type. | |
| using | node_type = word_graph_type::node_type |
| Type of the nodes in word_graph_type. | |
| using | pointer = const_rcgp_iterator::pointer |
| Type of pointers to value_type. | |
| using | reference = const_rcgp_iterator::reference |
| Type of references to value_type. | |
| using | size_type = const_rcgp_iterator::size_type |
| Size type for const_cgp_iterator. | |
| using | value_type = relation_type |
| Type of values pointed to by const_cgp_iterator. | |
| using | word_graph_type = Sims1::word_graph_type |
| Type of WordGraph. | |
Public Types inherited from const_rcgp_iterator | |
| using | const_pointer = typename std::vector<relation_type>::const_pointer |
| Type of const pointers to value_type. | |
| using | const_reference |
| Type of const references to value_type. | |
| using | difference_type |
| Difference type for const_rcgp_iterator. | |
| using | felsch_graph_type = Sims1::felsch_graph_type |
| Type of FelschGraph. | |
| using | iterator_category = std::forward_iterator_tag |
| Iterator category (forward iterator). | |
| using | label_type = word_graph_type::label_type |
| Type of the labels in word_graph_type. | |
| using | node_type = word_graph_type::node_type |
| Type of the nodes in word_graph_type. | |
| using | pointer = typename std::vector<relation_type>::pointer |
| Type of pointers to value_type. | |
| using | reference = typename std::vector<relation_type>::reference |
| Type of references to value_type. | |
| using | size_type = typename std::vector<relation_type>::size_type |
| Size type for const_rcgp_iterator. | |
| using | value_type = relation_type |
| Type of values pointed to by const_cgp_iterator. | |
| using | word_graph_type = Sims1::word_graph_type |
| Type of WordGraph. | |
Public Member Functions | |
| const_rcgp_iterator ()=default | |
| Default constructor. | |
| const_rcgp_iterator (const_rcgp_iterator &&)=default | |
| Default move constructor. | |
| const_rcgp_iterator (const_rcgp_iterator const &)=default | |
| Default copy constructor. | |
| bool | operator!= (const_rcgp_iterator const &that) const noexcept |
| Check if both iterators point to distinct generating pairs. | |
| const_reference | operator* () const |
| Return a const reference to the generating pair pointed to by the iterator. | |
| const_cgp_iterator const & | operator++ () |
| Prefix increment operator. | |
| const_cgp_iterator | operator++ (int) noexcept |
| Postfix increment operator. | |
| bool | operator== (const_rcgp_iterator const &that) const noexcept |
| Check if both iterators point to the same generating pair. | |
| void | swap (const_cgp_iterator &that) noexcept |
| Swap. | |
Public Member Functions inherited from const_rcgp_iterator | |
| const_rcgp_iterator ()=default | |
| Default constructor. | |
| const_rcgp_iterator (const_rcgp_iterator &&)=default | |
| Default move constructor. | |
| const_rcgp_iterator (const_rcgp_iterator const &)=default | |
| Default copy constructor. | |
| bool | operator!= (const_rcgp_iterator const &that) const noexcept |
| Check if both iterators point to distinct generating pairs. | |
| const_reference | operator* () const |
| Return a const reference to the generating pair pointed to by the iterator. | |
| const_rcgp_iterator const & | operator++ () |
| Prefix increment operator. | |
| const_rcgp_iterator | operator++ (int) noexcept |
| Postfix increment operator. | |
| const_pointer | operator-> () const |
| const_rcgp_iterator & | operator= (const_rcgp_iterator &&)=default |
| Default move assignment operator. | |
| const_rcgp_iterator & | operator= (const_rcgp_iterator const &)=default |
| Default copy assignment operator. | |
| bool | operator== (const_rcgp_iterator const &that) const noexcept |
| Check if both iterators point to the same generating pair. | |
| void | swap (const_rcgp_iterator &that) noexcept |
| Swap. | |
|
inlinenodiscard |
This function returns a const reference to the generating pair pointed to by the iterator.