| 118 | |
| 119 | template <class T, class U> |
| 120 | auto operator==(const T& x, const U& y) -> decltype(x.name() == y.name()) |
| 121 | { |
| 122 | static_assert(is_reflectable<T>{} or sizeof(T) <= 1, |
| 123 | "Missing equality operator or reflect method."); |
| 124 | if(x.name() != y.name()) |
| 125 | return false; |
| 126 | const auto& yy = any_cast<T>(y); |
| 127 | return reflect_tie(x) == reflect_tie(yy); |
| 128 | } |
| 129 | |
| 130 | } // namespace operation_operators |
| 131 |
nothing calls this directly
no test coverage detected