From 8bea373729c0cf18d2bcd573618fef7258d16e47 Mon Sep 17 00:00:00 2001 From: Marco Bubke Date: Wed, 9 Jan 2019 18:29:56 +0100 Subject: [PATCH] Utils: Add size functions to algorithms So you can type Utils::usize(qVector) == Utils::usize(stdVector) without a warning. You can write qVector.reserve(Utils::ssize(stdVector) etc.. Change-Id: If5b93b7daa8d4126cf588b0f025b99444bc8e8af Reviewed-by: Ivan Donchevskii Reviewed-by: Eike Ziller --- src/libs/utils/algorithm.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/libs/utils/algorithm.h b/src/libs/utils/algorithm.h index 9b699fee1c7..0f3a71426ea 100644 --- a/src/libs/utils/algorithm.h +++ b/src/libs/utils/algorithm.h @@ -849,4 +849,16 @@ OutputContainer setUnionMerge(InputContainer1 &&input1, merge, std::less>{}); } + +template +std::make_unsigned_t usize(Container container) +{ + return static_cast>(container.size()); +} + +template +std::make_signed_t ssize(Container container) +{ + return static_cast>(container.size()); +} } // namespace Utils