Add float/int literal for Approx

This commit is contained in:
Henry Schreiner 2018-05-21 15:42:40 +02:00 committed by Martin Hořeňovský
parent d6c7392b24
commit 283e2e6d41
8 changed files with 177 additions and 8 deletions

View file

@ -25,6 +25,8 @@ namespace Detail {
static Approx custom();
Approx operator-() const;
template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type>
Approx operator()( T const& value ) {
Approx approx( static_cast<double>(value) );
@ -121,7 +123,12 @@ namespace Detail {
double m_scale;
double m_value;
};
}
} // end namespace Detail
namespace literals {
Detail::Approx operator "" _a(long double val);
Detail::Approx operator "" _a(unsigned long long val);
} // end namespace literals
template<>
struct StringMaker<Catch::Detail::Approx> {