From e6a9c66a233a84bae5c6dba9ac531943f00fc97f Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Wed, 19 Oct 2016 14:46:16 +0200 Subject: compat/util: fix conversion from value for clamp --- compat/util.hpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'compat') diff --git a/compat/util.hpp b/compat/util.hpp index 20be92a4..abcc9ba2 100644 --- a/compat/util.hpp +++ b/compat/util.hpp @@ -23,8 +23,10 @@ void run_in_thread_async(QObject* obj, F&& fun) QObject::connect(&src, &QObject::destroyed, obj, std::move(fun), Qt::AutoConnection); } -template -auto clamp(t val, u min, w max) -> decltype (val * min * max) +namespace detail { + +template +inline auto clamp_(n val, n min, n max) -> n { if (val > max) return max; @@ -33,6 +35,14 @@ auto clamp(t val, u min, w max) -> decltype (val * min * max) return val; } +} + +template +inline auto clamp(const t& val, const u& min, const w& max) -> decltype(val * min * max) +{ + return ::detail::clamp_(val, min, max); +} + namespace detail { template -- cgit v1.2.3