Loading...
Searching...
No Matches
Catch::Generators::Generators< T > Class Template Reference

`#include <catch_amalgamated.hpp>`

Inheritance diagram for Catch::Generators::Generators< T >:
[legend]
Collaboration diagram for Catch::Generators::Generators< T >:
[legend]

## Public Member Functions

template<typename... Gs>
| Generators (Gs &&... moreGenerators)
T const & | get () const override
bool | next () override
Public Member Functions inherited from Catch::Generators::GeneratorUntypedBase
| GeneratorUntypedBase ()=default
| GeneratorUntypedBase (GeneratorUntypedBase const &)=default
GeneratorUntypedBase & | operator= (GeneratorUntypedBase const &)=default
virtual | ~GeneratorUntypedBase ()
bool | countedNext ()
std::size_t | currentElementIndex () const
StringRef | currentElementAsString () const

## Private Member Functions

void | add_generator (GeneratorWrapper< T > &&generator)
void | add_generator (T const &val)
void | add_generator (T &&val)
template<typename U>
std::enable_if_t<!std::is_same< std::decay_t< U >, T >::value > | add_generator (U &&val)
template<typename U>
void | add_generators (U &&valueOrGenerator)
template<typename U, typename... Gs>
void | add_generators (U &&valueOrGenerator, Gs &&... moreGenerators)

## Private Attributes

std::vector< GeneratorWrapper< T > > | m_generators
size_t | m_current = 0

## Additional Inherited Members

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

## Constructor & Destructor Documentation

## Generators()

template<typename T>
template<typename... Gs>

Catch::Generators::Generators< T >::Generators | ( | Gs &&... | moreGenerators | ) |

inline

Here is the call graph for this function:

## Member Function Documentation

## add_generator() [1/4]

template<typename T>

void Catch::Generators::Generators< T >::add_generator | ( | GeneratorWrapper< T > && | generator | ) |

inlineprivate

Here is the caller graph for this function:

## add_generator() [2/4]

template<typename T>

void Catch::Generators::Generators< T >::add_generator | ( | T && | val | ) |

inlineprivate

Here is the call graph for this function:

## add_generator() [3/4]

template<typename T>

void Catch::Generators::Generators< T >::add_generator | ( | T const & | val | ) |

inlineprivate

Here is the call graph for this function:

## add_generator() [4/4]

template<typename T>
template<typename U>

std::enable_if_t<!std::is_same< std::decay_t< U >, T >::value > Catch::Generators::Generators< T >::add_generator | ( | U && | val | ) |

inlineprivate

Here is the call graph for this function:

## add_generators() [1/2]

template<typename T>
template<typename U>

void Catch::Generators::Generators< T >::add_generators | ( | U && | valueOrGenerator | ) |

inlineprivate

Here is the call graph for this function:
Here is the caller graph for this function:

## add_generators() [2/2]

template<typename T>
template<typename U, typename... Gs>

void Catch::Generators::Generators< T >::add_generators | ( | U && | valueOrGenerator,
|  | Gs &&... | moreGenerators )

inlineprivate

Here is the call graph for this function:

## get()

template<typename T>

T const & Catch::Generators::Generators< T >::get | ( |  | ) | const

inlineoverridevirtual

Implements Catch::Generators::IGenerator< T >.

## next()

template<typename T>

bool Catch::Generators::Generators< 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

template<typename T>

size_t Catch::Generators::Generators< T >::m_current = 0

private

## m_generators

template<typename T>

std::vector<GeneratorWrapper<T> > Catch::Generators::Generators< T >::m_generators

private

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

- tests/vendor/catch_amalgamated.hpp