4 #include <stk_util/util/type_traits_rdestl.h> 9 template<
typename T1,
typename T2>
12 typedef T1 first_type;
13 typedef T2 second_type;
16 pair(
const T1& a,
const T2& b): first(a), second(b) {}
17 explicit pair(
const T1& a): first(a) {}
19 pair(
const pair<T1,T2>& rhs) : first(rhs.first), second(rhs.second) {}
21 pair& operator=(
const pair<T1,T2>& rhs)
34 template<
typename T1,
typename T2>
struct is_pod<pair<T1, T2> >
36 enum { value = (is_pod<T1>::value || is_fundamental<T1>::value) &&
37 (is_pod<T2>::value || is_fundamental<T2>::value) };
41 template<
typename T1,
typename T2>
42 pair<T1, T2> make_pair(
const T1& a,
const T2& b)
44 return pair<T1, T2>(a, b);
50 #endif // #ifndef RDESTL_PAIR_H