Audacity 3.2.0
Namespaces | Classes | Functions
Callable Namespace Reference

Namespaces

namespace  detail
 

Classes

struct  Constantly
 Generates functions useable as non-type template parameters. More...
 
struct  OverloadSet
 
struct  SharedPtrFactory
 Generates functions useable as non-type template parameters. More...
 
struct  type_identity
 standard in C++20; add a level of indirection to a type More...
 
struct  UniquePtrFactory
 Generates functions useable as non-type template parameters. More...
 

Functions

template<typename... Is>
 OverloadSet (Is &&... invocables) -> OverloadSet< Is &&... >
 
template<typename T , typename... FixedArgs>
constexpr auto UniqueMaker ()
 Generate variadic factory functions. More...
 

Function Documentation

◆ OverloadSet()

template<typename... Is>
Callable::OverloadSet ( Is &&...  invocables) -> OverloadSet< Is &&... >

Referenced by Tester< Const, ref >::DoTests().

Here is the caller graph for this function:

◆ UniqueMaker()

template<typename T , typename... FixedArgs>
constexpr auto Callable::UniqueMaker ( )
constexpr

Generate variadic factory functions.

Template Parameters
FixedArgscan be useful to enable initializer-list syntax for an argument, where otherwise type deduction would fail

Definition at line 122 of file Callable.h.

122 {
123 return [](FixedArgs... fixedArgs, auto&&... args) {
124 return std::make_unique<T>(
125 std::forward<FixedArgs>(fixedArgs)...,
126 std::forward<decltype(args)>(args)...);
127 };
128 }