Audacity 3.2.0
Public Types | List of all members
VisitHelperReturn< Visitor, Variant > Struct Template Reference

Help to define Visit() below. More...

#include <MemoryX.h>

Public Types

using Var = std::remove_reference_t< Variant >
 
using Alt = std::variant_alternative_t< 0, Var >
 
using QAlt = std::conditional_t< std::is_const_v< Var >, const Alt, Alt >
 
using Arg = std::conditional_t< std::is_lvalue_reference_v< Variant >, std::add_lvalue_reference_t< QAlt >, std::add_rvalue_reference_t< QAlt > >
 
using type = decltype(std::invoke(std::forward< Visitor >(std::declval< Visitor >()), std::declval< Arg >()))
 

Detailed Description

template<typename Visitor, typename Variant>
struct VisitHelperReturn< Visitor, Variant >

Help to define Visit() below.

Definition at line 571 of file MemoryX.h.

Member Typedef Documentation

◆ Alt

template<typename Visitor , typename Variant >
using VisitHelperReturn< Visitor, Variant >::Alt = std::variant_alternative_t<0, Var>

Definition at line 573 of file MemoryX.h.

◆ Arg

template<typename Visitor , typename Variant >
using VisitHelperReturn< Visitor, Variant >::Arg = std::conditional_t<std::is_lvalue_reference_v<Variant>, std::add_lvalue_reference_t<QAlt>, std::add_rvalue_reference_t<QAlt> >

Definition at line 576 of file MemoryX.h.

◆ QAlt

template<typename Visitor , typename Variant >
using VisitHelperReturn< Visitor, Variant >::QAlt = std::conditional_t< std::is_const_v<Var>, const Alt, Alt >

Definition at line 574 of file MemoryX.h.

◆ type

template<typename Visitor , typename Variant >
using VisitHelperReturn< Visitor, Variant >::type = decltype( std::invoke( std::forward<Visitor>( std::declval<Visitor>() ), std::declval<Arg>() ) )

Definition at line 580 of file MemoryX.h.

◆ Var

template<typename Visitor , typename Variant >
using VisitHelperReturn< Visitor, Variant >::Var = std::remove_reference_t<Variant>

Definition at line 572 of file MemoryX.h.


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