Audacity 3.2.0
Public Types | Public Member Functions | List of all members
Track::Dispatcher::applicable1< R, BaseClass, ArgumentType, Function > Struct Template Reference

Second, nonrecursive case of metafunction, generates operator () that calls function without fallthrough. More...

#include <Track.h>

Public Types

enum  : unsigned { SetUsed = 1u }
 Constant used in a compile-time check. More...
 
using QualifiedTrackType = std::conditional_t< std::is_const_v< ArgumentType >, const Track, Track >
 
using QualifiedBaseClass = std::conditional_t< std::is_const_v< ArgumentType >, const BaseClass, BaseClass >
 

Public Member Functions

operator() (QualifiedTrackType *pTrack, const Function &function,...) const
 Ignore the remaining functions and call the first only. More...
 

Detailed Description

template<typename R, typename BaseClass, typename ArgumentType, typename Function>
struct Track::Dispatcher::applicable1< R, BaseClass, ArgumentType, Function >

Second, nonrecursive case of metafunction, generates operator () that calls function without fallthrough.

Definition at line 497 of file Track.h.

Member Typedef Documentation

◆ QualifiedBaseClass

template<typename R , typename BaseClass , typename ArgumentType , typename Function >
using Track::Dispatcher::applicable1< R, BaseClass, ArgumentType, Function >::QualifiedBaseClass = std::conditional_t< std::is_const_v<ArgumentType>, const BaseClass, BaseClass >

Definition at line 502 of file Track.h.

◆ QualifiedTrackType

template<typename R , typename BaseClass , typename ArgumentType , typename Function >
using Track::Dispatcher::applicable1< R, BaseClass, ArgumentType, Function >::QualifiedTrackType = std::conditional_t< std::is_const_v<ArgumentType>, const Track, Track >

Definition at line 499 of file Track.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename R , typename BaseClass , typename ArgumentType , typename Function >
anonymous enum : unsigned

Constant used in a compile-time check.

Enumerator
SetUsed 

Definition at line 507 of file Track.h.

507: unsigned { SetUsed = 1u };

Member Function Documentation

◆ operator()()

template<typename R , typename BaseClass , typename ArgumentType , typename Function >
R Track::Dispatcher::applicable1< R, BaseClass, ArgumentType, Function >::operator() ( QualifiedTrackType pTrack,
const Function &  function,
  ... 
) const
inline

Ignore the remaining functions and call the first only.

Definition at line 510 of file Track.h.

512 { return function( static_cast<QualifiedBaseClass *>(pTrack) ); }
std::conditional_t< std::is_const_v< ArgumentType >, const BaseClass, BaseClass > QualifiedBaseClass
Definition: Track.h:504

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