|
|
@@ -24,54 +24,6 @@ template<typename>
|
|
|
struct meta_associative_container_traits;
|
|
|
|
|
|
|
|
|
-/**
|
|
|
- * @brief Provides the member constant `value` to true if support for meta
|
|
|
- * sequence containers is enabled for the given type, false otherwise.
|
|
|
- * @tparam Type Potentially sequence container type.
|
|
|
- */
|
|
|
-template<typename Type, typename = void>
|
|
|
-struct has_meta_sequence_container_traits: std::false_type {};
|
|
|
-
|
|
|
-
|
|
|
-/*! @copydoc has_meta_sequence_container_traits */
|
|
|
-template<typename Type>
|
|
|
-struct has_meta_sequence_container_traits<Type, std::void_t<typename meta_sequence_container_traits<Type>::type::value_type>>
|
|
|
- : std::true_type
|
|
|
-{};
|
|
|
-
|
|
|
-
|
|
|
-/**
|
|
|
- * @brief Helper variable template.
|
|
|
- * @tparam Type Potentially sequence container type.
|
|
|
- */
|
|
|
-template<typename Type>
|
|
|
-inline constexpr auto has_meta_sequence_container_traits_v = has_meta_sequence_container_traits<Type>::value;
|
|
|
-
|
|
|
-
|
|
|
-/**
|
|
|
- * @brief Provides the member constant `value` to true if support for meta
|
|
|
- * associative containers is enabled for the given type, false otherwise.
|
|
|
- * @tparam Type Potentially associative container type.
|
|
|
- */
|
|
|
-template<typename, typename = void>
|
|
|
-struct has_meta_associative_container_traits: std::false_type {};
|
|
|
-
|
|
|
-
|
|
|
-/*! @copydoc has_meta_associative_container_traits */
|
|
|
-template<typename Type>
|
|
|
-struct has_meta_associative_container_traits<Type, std::void_t<typename meta_associative_container_traits<Type>::type::key_type>>
|
|
|
- : std::true_type
|
|
|
-{};
|
|
|
-
|
|
|
-
|
|
|
-/**
|
|
|
- * @brief Helper variable template.
|
|
|
- * @tparam Type Potentially associative container type.
|
|
|
- */
|
|
|
-template<typename Type>
|
|
|
-inline constexpr auto has_meta_associative_container_traits_v = has_meta_associative_container_traits<Type>::value;
|
|
|
-
|
|
|
-
|
|
|
/**
|
|
|
* @brief Provides the member constant `value` to true if a meta associative
|
|
|
* container claims to wrap a key-only type, false otherwise.
|
|
|
@@ -84,7 +36,7 @@ struct is_key_only_meta_associative_container: std::true_type {};
|
|
|
/*! @copydoc is_key_only_meta_associative_container */
|
|
|
template<typename Type>
|
|
|
struct is_key_only_meta_associative_container<Type, std::void_t<typename meta_associative_container_traits<Type>::type::mapped_type>>
|
|
|
- : std::false_type
|
|
|
+ : std::false_type
|
|
|
{};
|
|
|
|
|
|
|