diff --git a/include/hyperion/mpl/value.h b/include/hyperion/mpl/value.h index e28e1f0..a5bb8d3 100644 --- a/include/hyperion/mpl/value.h +++ b/include/hyperion/mpl/value.h @@ -66,23 +66,6 @@ HYPERION_IGNORE_DOCUMENTATION_WARNING_START; namespace hyperion::mpl { - namespace detail { - - template - struct has_static_constexpr_value : std::false_type { }; - - template - struct has_static_constexpr_value< - TType, - // NOLINTNEXTLINE(readability-simplify-boolean-expr,readability-implicit-bool-conversion) - std::void_t>> - : std::true_type { }; - - template - concept HasStaticConstexprValue = has_static_constexpr_value::value; - - } // namespace detail - /// @brief Concept specifying the requirements for a metaprogramming /// value type. /// @@ -95,7 +78,11 @@ namespace hyperion::mpl { /// @ingroup value /// @headerfile hyperion/mpl/value.h template - concept ValueType = requires { TType::value; } && detail::HasStaticConstexprValue; + concept ValueType = requires { + { + std::integral_constant{} + }; + }; /// @brief Type trait to determine whether type `TType` is a metaprogramming value type. ///