in src/iceberg/expected.h [1465:1475]
constexpr E error_or(G&& v) const& //
noexcept(std::is_nothrow_copy_constructible_v<E> &&
expected_detail::is_nothrow_convertible_v<G, E>) {
static_assert(std::is_copy_constructible_v<E>, "E must be copy-constructible");
static_assert(std::is_convertible_v<G, E>, "is_convertible_v<G, E> must be true");
if (this->m_has_val) {
return static_cast<E>(std::forward<G>(v));
} else {
return this->m_unexpect;
}
}