CLI11 2.4.2
 
Loading...
Searching...
No Matches
CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > > Struct Template Reference

#include <TypeTools.hpp>

Inheritance diagram for CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >:

Public Types

using value_type = typename T::value_type
 
using first_type = typename std::remove_const<typename value_type::first_type>::type
 
using second_type = typename std::remove_const<typename value_type::second_type>::type
 
using value_type
 
using first_type
 
using second_type
 

Static Public Member Functions

template<typename Q>
static auto first (Q &&pair_value) -> decltype(std::get< 0 >(std::forward< Q >(pair_value)))
 Get the first value (really just the underlying value)
 
template<typename Q>
static auto second (Q &&pair_value) -> decltype(std::get< 1 >(std::forward< Q >(pair_value)))
 Get the second value (really just the underlying value)
 
static auto first (Q &&pair_value) -> decltype(std::forward< Q >(pair_value))
 Get the first value (really just the underlying value)
 
static auto second (Q &&pair_value) -> decltype(std::forward< Q >(pair_value))
 Get the second value (really just the underlying value)
 

Detailed Description

template<typename T>
struct CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >

Adaptor for map-like structure (true version, must have key_type and mapped_type). This wraps a mapped container in a few utilities access it in a general way.

Member Typedef Documentation

◆ first_type [1/2]

using CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::first_type

◆ first_type [2/2]

template<typename T>
using CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::first_type = typename std::remove_const<typename value_type::first_type>::type

◆ second_type [1/2]

using CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::second_type

◆ second_type [2/2]

template<typename T>
using CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::second_type = typename std::remove_const<typename value_type::second_type>::type

◆ value_type [1/2]

using CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::value_type

◆ value_type [2/2]

template<typename T>
using CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::value_type = typename T::value_type

Member Function Documentation

◆ first() [1/2]

static auto CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::first ( Q && pair_value) -> decltype(std::forward<Q>(pair_value))
inlinestatic

Get the first value (really just the underlying value)

◆ first() [2/2]

template<typename T>
template<typename Q>
static auto CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::first ( Q && pair_value) -> decltype(std::get<0>(std::forward<Q>(pair_value)))
inlinestatic

Get the first value (really just the underlying value)

◆ second() [1/2]

static auto CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::second ( Q && pair_value) -> decltype(std::forward<Q>(pair_value))
inlinestatic

Get the second value (really just the underlying value)

◆ second() [2/2]

template<typename T>
template<typename Q>
static auto CLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >::second ( Q && pair_value) -> decltype(std::get<1>(std::forward<Q>(pair_value)))
inlinestatic

Get the second value (really just the underlying value)


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