bool operator==(const basic_outcome<A, B, C, D> &) const

Returns true if this outcome compares equal to the other outcome. Comparison is done using operator== on value_type or error_type and/or exception_type if the currently chosen state is the same for both outcomes, otherwise false is returned.

Requires: operator== must be a valid expression between value_type and A, and between error_type and B, and between exception_type and C. If value_type is void, then so must be A; similarly for error_type and B; similarly for exception_type and C.

Complexity: Whatever the underlying operator== have. Constexpr and noexcept of underlying operations is propagated.

Guarantees: None.