8#include <QtCore/qtconfigmacros.h>
13# include <memory_resource>
36#if defined(__cpp_lib_erase_if) && __cpp_lib_erase_if >= 202002L
44template <
typename T,
typename U>
48 const auto origSize = c.size();
49 auto it =
std::remove(c.begin(), c.end(), value);
51 return origSize - c.size();
54template <
typename T,
typename Pred>
58 const auto origSize = c.size();
59 auto it =
std::remove_if(c.begin(), c.end(), pred);
61 return origSize - c.size();
64#ifdef __cpp_lib_polymorphic_allocator
65template <
typename T,
typename U>
75template <
typename T,
typename Pred>
void registerCallback(QRhi &rhi, const std::weak_ptr< QRhiCallback > &cb)
The QRhiCallback class implements a thread-safe wrapper around QRhi cleanup callbacks....
The class associates values of the specified type with different QRhi. One instance of QRhiValueMappe...
QRhiValueMapper & operator=(QRhiValueMapper &&) noexcept=default
QRhiValueMapper(QRhiValueMapper &&) noexcept=default
QRhi * findRhi(Predicate &&p) const
std::pair< Value *, bool > tryMap(QRhi &rhi, V &&value)
Value * get(QRhi *rhi) const
Combined button and popup list for selecting options.
constexpr std::vector< T, std::allocator< T > >::size_type erase(std::vector< T, std::allocator< T > > &c, const U &value)
constexpr std::vector< T, std::allocator< T > >::size_type erase_if(std::vector< T, std::allocator< T > > &c, Pred pred)
Q_GLOBAL_STATIC(const QTzTimeZoneHash, tzZones, loadTzTimeZones())