|
struct | basic_common_reference< pair< T1, T2 >, pair< U1, U2 >, TQual, UQual > |
|
struct | pair< T1, T2 > |
| etl::pair is a class template that provides a way to store two heterogeneous objects as a single unit. A pair is a specific case of a etl::tuple with two elements. If neither T1 nor T2 is a possibly cv-qualified class type with non-trivial destructor, or array thereof, the destructor of pair is trivial. More...
|
|
struct | tuple_element< I, pair< T1, T2 > > |
| The partial specializations of tuple_element for pairs provide compile-time access to the types of the pair's elements, using tuple-like syntax. The program is ill-formed if I >= 2. More...
|
|
struct | tuple_size< pair< T1, T2 > > |
| The partial specialization of tuple_size for pairs provides a compile-time way to obtain the number of elements in a pair, which is always 2, using tuple-like syntax. More...
|
|
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > &&p) noexcept -> tuple_element_t< I, pair< T1, T2 > > && |
| Extracts an element from the pair using tuple-like interface.
|
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > &p) noexcept -> tuple_element_t< I, pair< T1, T2 > > & |
| Extracts an element from the pair using tuple-like interface.
|
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > const &&p) noexcept -> tuple_element_t< I, pair< T1, T2 > > const && |
| Extracts an element from the pair using tuple-like interface.
|
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > const &p) noexcept -> tuple_element_t< I, pair< T1, T2 > > const & |
| Extracts an element from the pair using tuple-like interface.
|
|
template<typename T1 , typename T2 > |
constexpr auto | make_pair (T1 &&t, T2 &&u) -> pair< decay_t< T1 >, decay_t< T2 > > |
| Creates a etl::pair object, deducing the target type from the types of arguments.
|
|
template<typename T1 , typename T2 > |
constexpr auto | operator< (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename T1 , typename T2 > |
constexpr auto | operator<= (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename T1 , typename T2 > |
constexpr auto | operator== (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Tests if both elements of lhs and rhs are equal, that is, compares lhs.first with rhs.first and lhs.second with rhs.second.
|
|
template<typename T1 , typename T2 > |
constexpr auto | operator> (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename T1 , typename T2 > |
constexpr auto | operator>= (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename T1 , typename T2 > |
| pair (T1, T2) -> pair< T1, T2 > |
|
template<typename T1 , typename T2 > |
constexpr auto | swap (pair< T1, T2 > &lhs, pair< T1, T2 > &rhs) noexcept(noexcept(lhs.swap(rhs))) -> void |
| Swaps the contents of x and y. Equivalent to x.swap(y).
|
|