![]()  | 
  
    Vcsn
    2.5.dev
    
   Be Rational 
   | 
 
Composite iterator. More...
#include <cross.hh>
Public Types | |
| using | iterators_type = IteratorsType | 
| Underlying iterators.  More... | |
Public Member Functions | |
| cross_iterator (const iterators_type &is, const iterators_type &begins, const iterators_type &ends) | |
| cross_iterator (const iterators_type &is, const iterators_type &ends) | |
| template<typename OtherValue , typename OtherIterators > | |
| cross_iterator (cross_iterator< OtherValue, OtherIterators > const &that) | |
| bool | empty () const | 
| Whether some of the range is empty.  More... | |
| void | increment () | 
| Advance to next position.  More... | |
| bool | equal (const cross_iterator &that) const | 
| value_type | dereference () const | 
Public Attributes | |
| iterators_type | is_ | 
| The current position.  More... | |
| iterators_type | begins_ | 
| The begins.  More... | |
| iterators_type | ends_ | 
| The ends.  More... | |
Private Member Functions | |
| template<std::size_t... I> | |
| bool | empty_ (seq< I... >) const | 
| void | done_ () | 
| We have reached the end, move all the cursors to this end.  More... | |
| int | increment_ () | 
| Move to the next position.  More... | |
| template<std::size_t... I> | |
| int | increment_ (seq< I... >) | 
| void | reset_up_to_ (int n) | 
| Move beginning of ranges to their end, and align.  More... | |
| template<std::size_t... I> | |
| void | reset_up_to_ (size_t n, seq< I... >) | 
| template<std::size_t... I> | |
| bool | equal_ (const cross_iterator &that, seq< I... >) const | 
| template<std::size_t... I> | |
| value_type | dereference_ (seq< I... >) const | 
| Tuple of values.  More... | |
Friends | |
| class | boost::iterator_core_access | 
Composite iterator.
| using vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::iterators_type = IteratorsType | 
      
  | 
  inline | 
Definition at line 71 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::begins_, vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::done_(), vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::empty(), and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::ends_.
      
  | 
  inline | 
      
  | 
  inline | 
Definition at line 87 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::begins_, vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::ends_, and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::is_.
      
  | 
  inline | 
Definition at line 116 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::dereference_().
      
  | 
  inlineprivate | 
Tuple of values.
Definition at line 196 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::is_.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::dereference().
      
  | 
  inlineprivate | 
We have reached the end, move all the cursors to this end.
Definition at line 134 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::ends_.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::cross_iterator(), and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::increment().
      
  | 
  inline | 
Whether some of the range is empty.
Definition at line 99 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::empty_().
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::cross_iterator().
      
  | 
  inlineprivate | 
Definition at line 125 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::begins_.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::empty().
      
  | 
  inline | 
Definition at line 111 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::equal_().
      
  | 
  inlineprivate | 
Definition at line 186 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::is_.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::equal().
      
  | 
  inline | 
Advance to next position.
Definition at line 105 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::done_(), and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::increment_().
      
  | 
  inlineprivate | 
Move to the next position.
Return the index of the lastest iterator that could move, -1 if we reached the end.
Definition at line 141 of file cross.hh.
References vcsn::res, and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::reset_up_to_().
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::increment().
      
  | 
  inlineprivate | 
Definition at line 152 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::is_, vcsn::res, and vcsn::detail::void.
      
  | 
  inlineprivate | 
Move beginning of ranges to their end, and align.
Definition at line 169 of file cross.hh.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::increment_().
      
  | 
  inlineprivate | 
Definition at line 175 of file cross.hh.
References vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::is_, and vcsn::detail::void.
      
  | 
  friend | 
| iterators_type vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::begins_ | 
The begins.
Definition at line 94 of file cross.hh.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::cross_iterator(), and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::empty_().
| iterators_type vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::ends_ | 
The ends.
Definition at line 96 of file cross.hh.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::cross_iterator(), and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::done_().
| iterators_type vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::is_ | 
The current position.
Definition at line 92 of file cross.hh.
Referenced by vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::cross_iterator(), vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::dereference_(), vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::equal_(), vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::increment_(), and vcsn::cross_sequences< Sequences >::cross_iterator< ValueType, IteratorsType >::reset_up_to_().