Tests for VK_EXT_shader_module_identifier
[platform/upstream/VK-GL-CTS.git] / framework / delibs / decpp / deSTLUtil.hpp
index 46e05cd..f290c04 100644 (file)
@@ -30,6 +30,7 @@
 #include <utility>
 #include <iterator>
 #include <vector>
+#include <limits>
 
 namespace de
 {
@@ -136,6 +137,15 @@ const T* dataOrNull (const std::vector<T>& container)
        return (container.empty() ? nullptr : container.data());
 }
 
+// Returns the container size() as an uint32_t value.
+template <typename T>
+uint32_t sizeU32 (const T& container)
+{
+       const size_t sz = container.size();
+       DE_ASSERT(sz <= static_cast<size_t>(std::numeric_limits<uint32_t>::max()));
+       return static_cast<uint32_t>(sz);
+}
+
 } // de
 
 #endif // _DESTLUTIL_HPP