Lines Matching refs:pair
74 struct pair
82 pair(const pair&) = default;
83 pair(pair&&) = default;
84 explicit(see-below) constexpr pair();
85 … explicit(see-below) pair(const T1& x, const T2& y); // constexpr in C++14
86 … template <class U = T1, class V = T2> explicit(see-below) pair(U&&, V&&); // constexpr in C++14
87 template <class U, class V> constexpr explicit(see below) pair(pair<U, V>&); // since C++23
88 … template <class U, class V> explicit(see-below) pair(const pair<U, V>& p); // constexpr in C++14
89 … template <class U, class V> explicit(see-below) pair(pair<U, V>&& p); // constexpr in C++14
91 constexpr explicit(see below) pair(const pair<U, V>&&); // since C++23
93 pair(piecewise_construct_t, tuple<Args1...> first_args,
96 constexpr const pair& operator=(const pair& p) const; // since C++23
97 … template <class U, class V> pair& operator=(const pair<U, V>& p); // constexpr in C++20
99 constexpr const pair& operator=(const pair<U, V>& p) const; // since C++23
100 pair& operator=(pair&& p) noexcept(is_nothrow_move_assignable<T1>::value &&
102 constexpr const pair& operator=(pair&& p) const; // since C++23
103 … template <class U, class V> pair& operator=(pair<U, V>&& p); // constexpr in C++20
105 constexpr const pair& operator=(pair<U, V>&& p) const; // since C++23
107 void swap(pair& p) noexcept(is_nothrow_swappable_v<T1> &&
109 constexpr void swap(const pair& p) const noexcept(see below); // since C++23
113 struct basic_common_reference<pair<T1, T2>, pair<U1, U2>, TQual, UQual>; // since C++23
116 struct common_type<pair<T1, T2>, pair<U1, U2>>; // since C++23
118 template<class T1, class T2> pair(T1, T2) -> pair<T1, T2>;
120 template <class T1, class T2> bool operator==(const pair<T1,T2>&, const pair<T1,T2>&); // constexpr…
121 template <class T1, class T2> bool operator!=(const pair<T1,T2>&, const pair<T1,T2>&); // constexpr…
122 template <class T1, class T2> bool operator< (const pair<T1,T2>&, const pair<T1,T2>&); // constexpr…
123 template <class T1, class T2> bool operator> (const pair<T1,T2>&, const pair<T1,T2>&); // constexpr…
124 template <class T1, class T2> bool operator>=(const pair<T1,T2>&, const pair<T1,T2>&); // constexpr…
125 template <class T1, class T2> bool operator<=(const pair<T1,T2>&, const pair<T1,T2>&); // constexpr…
129 operator<=>(const pair<T1,T2>&, const pair<T1,T2>&); // C++20
131 template <class T1, class T2> pair<V1, V2> make_pair(T1&&, T2&&); // constexpr in C+…
134 swap(pair<T1, T2>& x, pair<T1, T2>& y) noexcept(noexcept(x.swap(y))); // constexpr in C+…
137 constexpr void swap(const pair<T1, T2>& x, const pair<T1, T2>& y) noexcept(noexcept(x.swap(y))); …
145 template <class T1, class T2> struct tuple_size<pair<T1, T2> >;
146 template <class T1, class T2> struct tuple_element<0, pair<T1, T2> >;
147 template <class T1, class T2> struct tuple_element<1, pair<T1, T2> >;
150 typename tuple_element<I, pair<T1, T2> >::type&
151 get(pair<T1, T2>&) noexcept; // constexpr in C++14
154 const typename tuple_element<I, pair<T1, T2> >::type&
155 get(const pair<T1, T2>&) noexcept; // constexpr in C++14
158 typename tuple_element<I, pair<T1, T2> >::type&&
159 get(pair<T1, T2>&&) noexcept; // constexpr in C++14
162 const typename tuple_element<I, pair<T1, T2> >::type&&
163 get(const pair<T1, T2>&&) noexcept; // constexpr in C++14
166 constexpr T1& get(pair<T1, T2>&) noexcept; // C++14
169 constexpr const T1& get(const pair<T1, T2>&) noexcept; // C++14
172 constexpr T1&& get(pair<T1, T2>&&) noexcept; // C++14
175 constexpr const T1&& get(const pair<T1, T2>&&) noexcept; // C++14
178 constexpr T1& get(pair<T2, T1>&) noexcept; // C++14
181 constexpr const T1& get(const pair<T2, T1>&) noexcept; // C++14
184 constexpr T1&& get(pair<T2, T1>&&) noexcept; // C++14
187 constexpr const T1&& get(const pair<T2, T1>&&) noexcept; // C++14
253 #include <__utility/pair.h>