|
template<typename T, typename E> |
|
bool operator==(const Result<T, E>& lhs, const Result<T, E>& rhs) { |
|
static_assert(concept::EqualityComparable<T>::value, "T must be EqualityComparable for Result to be comparable"); |
|
static_assert(concept::EqualityComparable<E>::value, "E must be EqualityComparable for Result to be comparable"); |
|
|
|
if (lhs.isOk() && rhs.isOk()) { |
|
return lhs.storage().template get<T>() == rhs.storage().template get<T>(); |
|
} |
|
if (lhs.isErr() && rhs.isErr()) { |
|
return lhs.storage().template get<E>() == rhs.storage().template get<E>(); |
|
} |
|
} |
Shouldn't a simple return false; in the end fix it?
result/result.h
Lines 862 to 873 in fee9af7
Shouldn't a simple
return false;in the end fix it?