OmniSciDB  04ee39c94c
Experimental::ConstExprPair< T1, T2 > Struct Template Reference

#include <ConstExprLib.h>

Public Types

using first_type = T1
 
using second_type = T2
 

Public Member Functions

constexpr ConstExprPair ()
 
constexpr ConstExprPair (first_type const &t1, second_type const &t2)
 
template<typename U1 , typename U2 >
constexpr ConstExprPair (ConstExprPair< U1, U2 > const &p)
 
constexpr ConstExprPairoperator= (ConstExprPair &other)
 
constexpr void swap (ConstExprPair &other) noexcept
 

Public Attributes

first_type first
 
second_type second
 

Detailed Description

template<typename T1, typename T2>
struct Experimental::ConstExprPair< T1, T2 >

Definition at line 7 of file ConstExprLib.h.

Member Typedef Documentation

◆ first_type

template<typename T1, typename T2>
using Experimental::ConstExprPair< T1, T2 >::first_type = T1

Definition at line 8 of file ConstExprLib.h.

◆ second_type

template<typename T1, typename T2>
using Experimental::ConstExprPair< T1, T2 >::second_type = T2

Definition at line 9 of file ConstExprLib.h.

Constructor & Destructor Documentation

◆ ConstExprPair() [1/3]

template<typename T1, typename T2>
constexpr Experimental::ConstExprPair< T1, T2 >::ConstExprPair ( )
inline

Definition at line 11 of file ConstExprLib.h.

11 : first(), second() {}

◆ ConstExprPair() [2/3]

template<typename T1, typename T2>
constexpr Experimental::ConstExprPair< T1, T2 >::ConstExprPair ( first_type const &  t1,
second_type const &  t2 
)
inline

Definition at line 12 of file ConstExprLib.h.

13  : first(t1), second(t2) {}

◆ ConstExprPair() [3/3]

template<typename T1, typename T2>
template<typename U1 , typename U2 >
constexpr Experimental::ConstExprPair< T1, T2 >::ConstExprPair ( ConstExprPair< U1, U2 > const &  p)
inline

Definition at line 16 of file ConstExprLib.h.

17  : first(p.first), second(p.second) {}

Member Function Documentation

◆ operator=()

template<typename T1, typename T2>
constexpr ConstExprPair& Experimental::ConstExprPair< T1, T2 >::operator= ( ConstExprPair< T1, T2 > &  other)
inline

Definition at line 19 of file ConstExprLib.h.

References Experimental::ConstExprPair< T1, T2 >::first, and Experimental::ConstExprPair< T1, T2 >::second.

19  {
20  first = other.first;
21  second = other.second;
22  return *this;
23  }

◆ swap()

template<typename T1, typename T2>
constexpr void Experimental::ConstExprPair< T1, T2 >::swap ( ConstExprPair< T1, T2 > &  other)
inlinenoexcept

Definition at line 25 of file ConstExprLib.h.

References Experimental::ConstExprPair< T1, T2 >::first, and Experimental::ConstExprPair< T1, T2 >::second.

Referenced by TEST(), and yield_test_constexpr_pair().

25  {
26  first_type tempt1 = first;
27  second_type tempt2 = second;
28  first = other.first;
29  second = other.second;
30  other.first = tempt1;
31  other.second = tempt2;
32  }
+ Here is the caller graph for this function:

Member Data Documentation

◆ first

◆ second


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