diff --git a/src/settings/internal/settings_object_data.h b/src/settings/internal/settings_object_data.h index 0369373..3cf663a 100644 --- a/src/settings/internal/settings_object_data.h +++ b/src/settings/internal/settings_object_data.h @@ -59,9 +59,13 @@ private: const auto isBool = is_same::value; const auto isInt = is_same::value; const auto isDouble = is_same::value; + const auto isFloat = is_same::value; const auto isString = is_same::value || is_same::value; + static_assert( !isFloat, + "'float' is not supported. Use 'double' instead." ); + static_assert( isBool || isInt || isDouble || isString, "Type is not supported for the settings object." ); diff --git a/src/settings/settings_object.cpp b/src/settings/settings_object.cpp index 4231b92..5986eda 100644 --- a/src/settings/settings_object.cpp +++ b/src/settings/settings_object.cpp @@ -65,8 +65,12 @@ std::list loadListFromDisk( const std::string structName, const auto isBool = is_same::value; const auto isInt = is_same::value; const auto isDouble = is_same::value; + const auto isFloat = is_same::value; const auto isString = is_same::value; + static_assert( !isFloat, + "'float' is not supported. Use 'double' instead." ); + static_assert( isBool || isInt || isDouble || isString, "Type is not supported for the settings object." );