1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-31 18:45:36 +00:00

Merge branch 'more_constexpr' into 'master'

Some more constexpr in esm/variant.cpp

See merge request OpenMW/openmw!850
This commit is contained in:
Evil Eye 2021-06-22 18:40:06 +00:00
commit df3a47187b

View file

@ -10,20 +10,20 @@
namespace
{
const uint32_t STRV = ESM::FourCC<'S','T','R','V'>::value;
const uint32_t INTV = ESM::FourCC<'I','N','T','V'>::value;
const uint32_t FLTV = ESM::FourCC<'F','L','T','V'>::value;
const uint32_t STTV = ESM::FourCC<'S','T','T','V'>::value;
constexpr uint32_t STRV = ESM::FourCC<'S','T','R','V'>::value;
constexpr uint32_t INTV = ESM::FourCC<'I','N','T','V'>::value;
constexpr uint32_t FLTV = ESM::FourCC<'F','L','T','V'>::value;
constexpr uint32_t STTV = ESM::FourCC<'S','T','T','V'>::value;
template <typename T, bool orDefault = false>
struct GetValue
{
T operator()(int value) const { return static_cast<T>(value); }
constexpr T operator()(int value) const { return static_cast<T>(value); }
T operator()(float value) const { return static_cast<T>(value); }
constexpr T operator()(float value) const { return static_cast<T>(value); }
template <typename V>
T operator()(const V&) const
constexpr T operator()(const V&) const
{
if constexpr (orDefault)
return T {};