| 137 | |
| 138 | template <typename... Types1, typename... Types2> |
| 139 | constexpr bool operator==(const tuple<Types1...>& lhs, const tuple<Types2...>& rhs) |
| 140 | { |
| 141 | static_assert( |
| 142 | sizeof...(Types1) == sizeof...(Types2), |
| 143 | "Tuples size is not equal in cx::operator==(const cx::tuple<>&, const cx::tuple<>&)"); |
| 144 | |
| 145 | return detail::tuples<sizeof...(Types1) -1>::equal(lhs, rhs); |
| 146 | } |
| 147 | |
| 148 | template <> |
| 149 | constexpr bool operator==(const tuple<>&, const tuple<>&) |