forked from qt-creator/qt-creator
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 <ivan.donchevskii@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -849,4 +849,16 @@ OutputContainer setUnionMerge(InputContainer1 &&input1,
|
||||
merge,
|
||||
std::less<std::decay_t<decltype(*std::begin(input1))>>{});
|
||||
}
|
||||
|
||||
template<typename Container>
|
||||
std::make_unsigned_t<typename Container::size_type> usize(Container container)
|
||||
{
|
||||
return static_cast<std::make_unsigned_t<typename Container::size_type>>(container.size());
|
||||
}
|
||||
|
||||
template<typename Container>
|
||||
std::make_signed_t<typename Container::size_type> ssize(Container container)
|
||||
{
|
||||
return static_cast<std::make_signed_t<typename Container::size_type>>(container.size());
|
||||
}
|
||||
} // namespace Utils
|
||||
|
||||
Reference in New Issue
Block a user