Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
Catch::Generators Namespace Reference

Namespaces

namespace  pf
 

Classes

struct  as
 
class  ChunkGenerator
 
class  FilterGenerator
 
class  FixedValuesGenerator
 
class  Generators
 
class  GeneratorUntypedBase
 
class  GeneratorWrapper
 
struct  IGenerator
 
class  IteratorGenerator
 
class  MapGenerator
 
class  RandomFloatingGenerator
 
class  RandomIntegerGenerator
 
class  RangeGenerator
 
class  RepeatGenerator
 
class  SingleValueGenerator
 
class  TakeGenerator
 

Typedefs

using GeneratorBasePtr = std::unique_ptr<GeneratorUntypedBase>
 

Functions

template<typename T >
GeneratorWrapper< T > value (T &&value)
 
template<typename T >
GeneratorWrapper< T > values (std::initializer_list< T > values)
 
template<typename... Ts>
GeneratorWrapper< std::tuple< Ts... > > table (std::initializer_list< std::tuple< typename std::decay< Ts >::type... > > tuples)
 
template<typename T , typename... Gs>
auto makeGenerators (GeneratorWrapper< T > &&generator, Gs &&... moreGenerators) -> Generators< T >
 
template<typename T >
auto makeGenerators (GeneratorWrapper< T > &&generator) -> Generators< T >
 
template<typename T , typename... Gs>
auto makeGenerators (T &&val, Gs &&... moreGenerators) -> Generators< T >
 
template<typename T , typename U , typename... Gs>
auto makeGenerators (as< T >, U &&val, Gs &&... moreGenerators) -> Generators< T >
 
auto acquireGeneratorTracker (StringRef generatorName, SourceLineInfo const &lineInfo) -> IGeneratorTracker &
 
template<typename L >
auto generate (StringRef generatorName, SourceLineInfo const &lineInfo, L const &generatorExpression) -> decltype(std::declval< decltype(generatorExpression())>().get())
 
template<typename T >
GeneratorWrapper< T > take (size_t target, GeneratorWrapper< T > &&generator)
 
template<typename T , typename Predicate >
GeneratorWrapper< T > filter (Predicate &&pred, GeneratorWrapper< T > &&generator)
 
template<typename T >
GeneratorWrapper< T > repeat (size_t repeats, GeneratorWrapper< T > &&generator)
 
template<typename Func , typename U , typename T = FunctionReturnType<Func, U>>
GeneratorWrapper< T > map (Func &&function, GeneratorWrapper< U > &&generator)
 
template<typename T >
GeneratorWrapper< std::vector< T > > chunk (size_t size, GeneratorWrapper< T > &&generator)
 
template<typename T >
std::enable_if< std::is_integral< T >::value &&!std::is_same< T, bool >::value, GeneratorWrapper< T > >::type random (T a, T b)
 
template<typename T >
std::enable_if< std::is_floating_point< T >::value, GeneratorWrapper< T > >::type random (T a, T b)
 
template<typename T >
GeneratorWrapper< T > range (T const &start, T const &end, T const &step)
 
template<typename T >
GeneratorWrapper< T > range (T const &start, T const &end)
 
template<typename InputIterator , typename InputSentinel , typename ResultType = typename std::iterator_traits<InputIterator>::value_type>
GeneratorWrapper< ResultType > from_range (InputIterator from, InputSentinel to)
 
template<typename Container , typename ResultType = typename Container::value_type>
GeneratorWrapper< ResultType > from_range (Container const &cnt)
 

Typedef Documentation

◆ GeneratorBasePtr

Definition at line 3855 of file catch.hpp.

Function Documentation

◆ acquireGeneratorTracker()

auto Catch::Generators::acquireGeneratorTracker ( StringRef generatorName,
SourceLineInfo const & lineInfo ) -> IGeneratorTracker &

Referenced by generate().

+ Here is the caller graph for this function:

◆ chunk()

template<typename T >
GeneratorWrapper< std::vector< T > > Catch::Generators::chunk ( size_t size,
GeneratorWrapper< T > && generator )

Definition at line 4333 of file catch.hpp.

◆ filter()

template<typename T , typename Predicate >
GeneratorWrapper< T > Catch::Generators::filter ( Predicate && pred,
GeneratorWrapper< T > && generator )

Definition at line 4195 of file catch.hpp.

◆ from_range() [1/2]

template<typename Container , typename ResultType = typename Container::value_type>
GeneratorWrapper< ResultType > Catch::Generators::from_range ( Container const & cnt)

Definition at line 4746 of file catch.hpp.

◆ from_range() [2/2]

template<typename InputIterator , typename InputSentinel , typename ResultType = typename std::iterator_traits<InputIterator>::value_type>
GeneratorWrapper< ResultType > Catch::Generators::from_range ( InputIterator from,
InputSentinel to )

Definition at line 4740 of file catch.hpp.

◆ generate()

template<typename L >
auto Catch::Generators::generate ( StringRef generatorName,
SourceLineInfo const & lineInfo,
L const & generatorExpression ) -> decltype(std::declval<decltype(generatorExpression())>().get())

Definition at line 4085 of file catch.hpp.

References acquireGeneratorTracker(), and Catch::IGeneratorTracker::hasGenerator().

+ Here is the call graph for this function:

◆ makeGenerators() [1/4]

template<typename T , typename U , typename... Gs>
auto Catch::Generators::makeGenerators ( as< T > ,
U && val,
Gs &&... moreGenerators ) -> Generators<T>

Definition at line 4075 of file catch.hpp.

◆ makeGenerators() [2/4]

template<typename T >
auto Catch::Generators::makeGenerators ( GeneratorWrapper< T > && generator) -> Generators<T>

Definition at line 4067 of file catch.hpp.

◆ makeGenerators() [3/4]

template<typename T , typename... Gs>
auto Catch::Generators::makeGenerators ( GeneratorWrapper< T > && generator,
Gs &&... moreGenerators ) -> Generators<T>

Definition at line 4063 of file catch.hpp.

◆ makeGenerators() [4/4]

template<typename T , typename... Gs>
auto Catch::Generators::makeGenerators ( T && val,
Gs &&... moreGenerators ) -> Generators<T>

Definition at line 4071 of file catch.hpp.

◆ map()

template<typename Func , typename U , typename T = FunctionReturnType<Func, U>>
GeneratorWrapper< T > Catch::Generators::map ( Func && function,
GeneratorWrapper< U > && generator )

Definition at line 4283 of file catch.hpp.

◆ random() [1/2]

template<typename T >
std::enable_if< std::is_integral< T >::value &&!std::is_same< T, bool >::value, GeneratorWrapper< T > >::type Catch::Generators::random ( T a,
T b )

Definition at line 4651 of file catch.hpp.

◆ random() [2/2]

template<typename T >
std::enable_if< std::is_floating_point< T >::value, GeneratorWrapper< T > >::type Catch::Generators::random ( T a,
T b )

Definition at line 4660 of file catch.hpp.

◆ range() [1/2]

template<typename T >
GeneratorWrapper< T > Catch::Generators::range ( T const & start,
T const & end )

Definition at line 4706 of file catch.hpp.

◆ range() [2/2]

template<typename T >
GeneratorWrapper< T > Catch::Generators::range ( T const & start,
T const & end,
T const & step )

Definition at line 4700 of file catch.hpp.

◆ repeat()

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

Definition at line 4251 of file catch.hpp.

◆ table()

template<typename... Ts>
GeneratorWrapper< std::tuple< Ts... > > Catch::Generators::table ( std::initializer_list< std::tuple< typename std::decay< Ts >::type... > > tuples)

Definition at line 4054 of file catch.hpp.

◆ take()

template<typename T >
GeneratorWrapper< T > Catch::Generators::take ( size_t target,
GeneratorWrapper< T > && generator )

Definition at line 4151 of file catch.hpp.

◆ value()

template<typename T >
GeneratorWrapper< T > Catch::Generators::value ( T && value)

Definition at line 4001 of file catch.hpp.

◆ values()

template<typename T >
GeneratorWrapper< T > Catch::Generators::values ( std::initializer_list< T > values)

Definition at line 4005 of file catch.hpp.