Use shimmed std::as_const instead of qAsConst
This commit is contained in:
@@ -5,11 +5,12 @@
|
||||
#define STDSHIMS_H
|
||||
|
||||
#include <memory>
|
||||
#include <type_traits>
|
||||
#include <utility>
|
||||
|
||||
#if (__cplusplus >= 201402L || _MSC_VER)
|
||||
#ifndef _MSC_VER
|
||||
#warning "This file should now be removed! The functions it provides are part of the C++14 standard."
|
||||
#warning "This part of this file should now be removed! The functions it provides are part of the C++14 standard."
|
||||
#endif
|
||||
using std::make_unique;
|
||||
|
||||
@@ -30,5 +31,24 @@ std::unique_ptr<T, Deleter> make_unique(Args&&... args)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (__cplusplus >= 201703L || _MSC_VER >= 1914)
|
||||
#ifndef _MSC_VER
|
||||
#warning "This part of this file should now be removed! The functions it provides are part of the C++17 standard."
|
||||
#endif
|
||||
using std::as_const;
|
||||
|
||||
#else
|
||||
|
||||
/// Shim for http://en.cppreference.com/w/cpp/utility/as_const
|
||||
template <typename T>
|
||||
constexpr typename std::add_const<T>::type& as_const(T& t) noexcept
|
||||
{
|
||||
return t;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
void as_const(const T&&) = delete;
|
||||
#endif
|
||||
|
||||
#endif // include guard
|
||||
|
||||
|
||||
Reference in New Issue
Block a user