QtRocket
 
Loading...
Searching...
No Matches
Catch::Generators::RepeatGenerator< T > Class Template Referencefinal

#include <catch_amalgamated.hpp>

Inheritance diagram for Catch::Generators::RepeatGenerator< T >:
Collaboration diagram for Catch::Generators::RepeatGenerator< T >:

Public Member Functions

 RepeatGenerator (size_t repeats, GeneratorWrapper< T > &&generator)
 
T const & get () const override
 
bool next () override
 
- Public Member Functions inherited from Catch::Generators::GeneratorUntypedBase
 GeneratorUntypedBase ()=default
 
 GeneratorUntypedBase (GeneratorUntypedBase const &)=default
 
GeneratorUntypedBaseoperator= (GeneratorUntypedBase const &)=default
 
virtual ~GeneratorUntypedBase ()
 
bool countedNext ()
 
std::size_t currentElementIndex () const
 
StringRef currentElementAsString () const
 

Private Attributes

GeneratorWrapper< T > m_generator
 
std::vector< T > m_returned
 
size_t m_target_repeats
 
size_t m_current_repeat = 0
 
size_t m_repeat_index = 0
 

Additional Inherited Members

- Public Types inherited from Catch::Generators::IGenerator< T >
using type = T
 

Constructor & Destructor Documentation

◆ RepeatGenerator()

template<typename T>
Catch::Generators::RepeatGenerator< T >::RepeatGenerator ( size_t repeats,
GeneratorWrapper< T > && generator )
inline

Member Function Documentation

◆ get()

template<typename T>
T const & Catch::Generators::RepeatGenerator< T >::get ( ) const
inlineoverridevirtual

◆ next()

template<typename T>
bool Catch::Generators::RepeatGenerator< T >::next ( )
inlineoverridevirtual

Attempts to move the generator to the next element

Returns true iff the move succeeded (and a valid element can be retrieved).

Implements Catch::Generators::GeneratorUntypedBase.

Member Data Documentation

◆ m_current_repeat

template<typename T>
size_t Catch::Generators::RepeatGenerator< T >::m_current_repeat = 0
private

◆ m_generator

template<typename T>
GeneratorWrapper<T> Catch::Generators::RepeatGenerator< T >::m_generator
private

◆ m_repeat_index

template<typename T>
size_t Catch::Generators::RepeatGenerator< T >::m_repeat_index = 0
private

◆ m_returned

template<typename T>
std::vector<T> Catch::Generators::RepeatGenerator< T >::m_returned
mutableprivate

◆ m_target_repeats

template<typename T>
size_t Catch::Generators::RepeatGenerator< T >::m_target_repeats
private

The documentation for this class was generated from the following file: