#ifndef SPROUT_RATIONAL_VALUES_HPP #define SPROUT_RATIONAL_VALUES_HPP #include #include #include namespace sprout { // // abs // template inline SPROUT_CONSTEXPR sprout::rational abs(sprout::rational const& x) { return x.numerator() >= IntType(0) ? x : sprout::detail::make_rational( -x.numerator(), x.denominator(), sprout::detail::rational_private_constructor_tag() ) ; } } // namespace sprout #endif // SPROUT_RATIONAL_VALUES_HPP