| 
| 
  | SingleEnumerator (T v) | 
|   | 
| T  | getCurrent () const | 
|   | Get current element in the collection.  
  | 
|   | 
| bool  | moveNext () | 
|   | 
| 
bool  | any () | 
|   | True if the enumerator has at least one element. 
  | 
|   | 
| 
template<typename S >  | 
| Enumerator< S > *  | as () | 
|   | Cast to an enumerator of S objects. 
  | 
|   | 
| 
EnumeratorHandle< T >  | begin () | 
|   | 
| virtual Enumerator< T > *  | concat (Enumerator< T > *other) | 
|   | Append all elements of other after all elements of this.  
  | 
|   | 
| 
uint64_t  | count () | 
|   | Enumerate all elements and return the count. 
  | 
|   | 
| 
EnumeratorHandle< T >  | end () | 
|   | 
| 
template<typename Mapper >  | 
| Enumerator< std::invoke_result_t< Mapper, T > > *  | map (Mapper map) | 
|   | Apply specified function to all elements of this enumerator. 
  | 
|   | 
| 
T  | next () | 
|   | Next element; throws if there are no elements. 
  | 
|   | 
| 
T  | nextOrDefault () | 
|   | Next element, or the default value if none exists. 
  | 
|   | 
| virtual void  | reset () | 
|   | Move back to the beginning of the collection.  
  | 
|   | 
| 
T  | single () | 
|   | The only next element; throws if the enumerator does not have exactly 1 element. 
  | 
|   | 
| T  | singleOrDefault () | 
|   | 
| 
const char *  | stateName () const | 
|   | 
| 
std::vector< T >  | toVector () | 
|   | 
| 
template<typename Filter >  | 
| Enumerator< T > *  | where (Filter filter) | 
|   | Return an enumerator returning all elements that pass the filter. 
  | 
|   | 
 | 
| 
using  | value_type = T | 
|   | 
| 
static Enumerator< T > *  | concatAll (Enumerator< Enumerator< T > * > *inputs) | 
|   | Concatenate all these collections into a single one. 
  | 
|   | 
| 
template<typename Container >  | 
| static Enumerator< typename Container::value_type > *  | createEnumerator (const Container &data) | 
|   | 
| 
template<typename Iter >  | 
| static Enumerator< typename Iter::value_type > *  | createEnumerator (Iter begin, Iter end) | 
|   | 
| 
template<typename Iter >  | 
| static Enumerator< typename Iter::value_type > *  | createEnumerator (iterator_range< Iter > range) | 
|   | 
| 
static Enumerator< T > *  | emptyEnumerator () | 
|   | 
| 
EnumeratorState  | state = EnumeratorState::NotStarted | 
|   | 
| 
static std::vector< T >  | emptyVector | 
|   |