IDA C++ SDK 9.2
Loading...
Searching...
No Matches
qpair< First, Second > Struct Template Reference

#include <qpair.hpp>

Public Types

using first_type = First
using second_type = Second

Public Member Functions

constexpr qpair ()=default
constexpr qpair (First const &a, Second const &b)
constexpr qpair (First const &a, Second &&b)
constexpr qpair (First &&a, Second const &b)
constexpr qpair (First &&a, Second &&b)
template<class F2, class S2, class = std::enable_if_t<std::is_constructible<First, F2 &&>::value && std::is_constructible<Second, S2 &&>::value>>
constexpr qpair (F2 &&a, S2 &&b)
 qpair (qpair const &)=default
 qpair (qpair &&)=default
qpairoperator= (qpair const &)=default
qpairoperator= (qpair &&)=default
template<class F2, class S2, class = std::enable_if_t<std::is_constructible<First, F2 const &>::value && std::is_constructible<Second, S2 const &>::value>>
constexpr qpair (std::pair< F2, S2 > const &p)
template<class F2, class S2, class = std::enable_if_t<std::is_constructible<First, F2 &&>::value && std::is_constructible<Second, S2 &&>::value>>
constexpr qpair (std::pair< F2, S2 > &&p)
template<class F2, class S2, std::enable_if_t< std::is_constructible< First, F2 const & >::value &&std::is_constructible< Second, S2 const & >::value &&!(std::is_same< First, F2 >::value &&std::is_same< Second, S2 >::value), int > = 0>
constexpr qpair (qpair< F2, S2 > const &p)
template<class F2, class S2, std::enable_if_t< std::is_constructible< First, F2 && >::value &&std::is_constructible< Second, S2 && >::value &&!(std::is_same< First, F2 >::value &&std::is_same< Second, S2 >::value), int > = 0>
constexpr qpair (qpair< F2, S2 > &&p)
void swap (qpair &other) noexcept(noexcept(std::swap(first, other.first)) &&noexcept(std::swap(second, other.second)))
template<class F2 = First, class S2 = Second>
 operator std::pair< std::decay_t< F2 >, std::decay_t< S2 > > () const

Public Attributes

First first
Second second

Member Typedef Documentation

◆ first_type

template<class First, class Second>
using qpair< First, Second >::first_type = First

◆ second_type

template<class First, class Second>
using qpair< First, Second >::second_type = Second

Constructor & Destructor Documentation

◆ qpair() [1/12]

template<class First, class Second>
qpair< First, Second >::qpair ( )
constexprdefault

◆ qpair() [2/12]

template<class First, class Second>
qpair< First, Second >::qpair ( First const & a,
Second const & b )
inlineconstexpr

◆ qpair() [3/12]

template<class First, class Second>
qpair< First, Second >::qpair ( First const & a,
Second && b )
inlineconstexpr

◆ qpair() [4/12]

template<class First, class Second>
qpair< First, Second >::qpair ( First && a,
Second const & b )
inlineconstexpr

◆ qpair() [5/12]

template<class First, class Second>
qpair< First, Second >::qpair ( First && a,
Second && b )
inlineconstexpr

◆ qpair() [6/12]

template<class First, class Second>
template<class F2, class S2, class = std::enable_if_t<std::is_constructible<First, F2 &&>::value && std::is_constructible<Second, S2 &&>::value>>
qpair< First, Second >::qpair ( F2 && a,
S2 && b )
inlineconstexpr

◆ qpair() [7/12]

template<class First, class Second>
qpair< First, Second >::qpair ( qpair< First, Second > const & )
default

◆ qpair() [8/12]

template<class First, class Second>
qpair< First, Second >::qpair ( qpair< First, Second > && )
default

◆ qpair() [9/12]

template<class First, class Second>
template<class F2, class S2, class = std::enable_if_t<std::is_constructible<First, F2 const &>::value && std::is_constructible<Second, S2 const &>::value>>
qpair< First, Second >::qpair ( std::pair< F2, S2 > const & p)
inlineconstexpr

◆ qpair() [10/12]

template<class First, class Second>
template<class F2, class S2, class = std::enable_if_t<std::is_constructible<First, F2 &&>::value && std::is_constructible<Second, S2 &&>::value>>
qpair< First, Second >::qpair ( std::pair< F2, S2 > && p)
inlineconstexpr

◆ qpair() [11/12]

template<class First, class Second>
template<class F2, class S2, std::enable_if_t< std::is_constructible< First, F2 const & >::value &&std::is_constructible< Second, S2 const & >::value &&!(std::is_same< First, F2 >::value &&std::is_same< Second, S2 >::value), int > = 0>
qpair< First, Second >::qpair ( qpair< F2, S2 > const & p)
inlineconstexpr

◆ qpair() [12/12]

template<class First, class Second>
template<class F2, class S2, std::enable_if_t< std::is_constructible< First, F2 && >::value &&std::is_constructible< Second, S2 && >::value &&!(std::is_same< First, F2 >::value &&std::is_same< Second, S2 >::value), int > = 0>
qpair< First, Second >::qpair ( qpair< F2, S2 > && p)
inlineconstexpr

Member Function Documentation

◆ operator=() [1/2]

template<class First, class Second>
qpair & qpair< First, Second >::operator= ( qpair< First, Second > const & )
default

◆ operator=() [2/2]

template<class First, class Second>
qpair & qpair< First, Second >::operator= ( qpair< First, Second > && )
default

◆ swap()

template<class First, class Second>
void qpair< First, Second >::swap ( qpair< First, Second > & other)
inlinenoexcept

◆ operator std::pair< std::decay_t< F2 >, std::decay_t< S2 > >()

template<class First, class Second>
template<class F2 = First, class S2 = Second>
qpair< First, Second >::operator std::pair< std::decay_t< F2 >, std::decay_t< S2 > > ( ) const
inlineexplicit

Member Data Documentation

◆ first

template<class First, class Second>
First qpair< First, Second >::first

◆ second

template<class First, class Second>
Second qpair< First, Second >::second

The documentation for this struct was generated from the following file:
  • /Users/geoffrey/ida-sdk/src/include/qpair.hpp