diff --git a/include/fastgltf/types.hpp b/include/fastgltf/types.hpp index 5b3573357..d257969ba 100644 --- a/include/fastgltf/types.hpp +++ b/include/fastgltf/types.hpp @@ -1020,7 +1020,7 @@ namespace fastgltf { static constexpr auto missing_value = static_cast(std::numeric_limits>::max()); }; - template + FASTGLTF_EXPORT template class OptionalWithFlagValue; /** @@ -1043,7 +1043,7 @@ namespace fastgltf { * If no specialization for T of OptionalFlagValue is provided, a static assert will be triggered. * In those cases, use std::optional or fastgltf::Optional instead. */ - FASTGLTF_EXPORT template + template class OptionalWithFlagValue final { static_assert(!std::is_same_v::missing_value)>>, "OptionalWithFlagValue can only be used when there is an appropriate specialization of OptionalFlagValue."); @@ -1200,7 +1200,7 @@ namespace fastgltf { template [[nodiscard]] auto and_then(F&& func)&& { - using U = std::remove_cv_t>>; + using U = std::remove_cv_t>>; if (!has_value()) return U(); return std::invoke(std::forward(func), std::move(**this)); @@ -1208,7 +1208,7 @@ namespace fastgltf { template [[nodiscard]] auto and_then(F&& func) const&& { - using U = std::remove_cv_t>>; + using U = std::remove_cv_t>>; if (!has_value()) return U(); return std::invoke(std::forward(func), std::move(**this)); @@ -1232,7 +1232,7 @@ namespace fastgltf { template [[nodiscard]] auto transform(F&& func)&& { - using U = std::remove_cv_t>; + using U = std::remove_cv_t>; if (!has_value()) return Optional(); return Optional(std::invoke(std::forward(func), std::move(**this))); @@ -1240,7 +1240,7 @@ namespace fastgltf { template [[nodiscard]] auto transform(F&& func) const&& { - using U = std::remove_cv_t>; + using U = std::remove_cv_t>; if (!has_value()) return Optional(); return Optional(std::invoke(std::forward(func), std::move(**this)));