@@ -60,7 +60,8 @@ concept meta_associative_container_like = requires(Type value) {
6060 * @tparam Type Type of underlying sequence container.
6161 */
6262template <cvref_unqualified Type>
63- struct basic_meta_sequence_container_traits {
63+ requires internal::meta_sequence_container_like<Type>
64+ struct meta_sequence_container_traits <Type> {
6465 /* ! @brief Unsigned integer type. */
6566 using size_type = meta_sequence_container::size_type;
6667 /* ! @brief Meta iterator type. */
@@ -182,7 +183,8 @@ struct basic_meta_sequence_container_traits {
182183 * @tparam Type Type of underlying associative container.
183184 */
184185template <cvref_unqualified Type>
185- struct basic_meta_associative_container_traits {
186+ requires internal::meta_associative_container_like<Type>
187+ struct meta_associative_container_traits <Type> {
186188 /* ! @brief Unsigned integer type. */
187189 using size_type = meta_associative_container::size_type;
188190 /* ! @brief Meta iterator type. */
@@ -279,20 +281,6 @@ struct basic_meta_associative_container_traits {
279281 }
280282};
281283
282- /* *
283- * @brief Traits meta sequence container like types.
284- * @tparam Type Container type to inspect.
285- */
286- template <internal::meta_sequence_container_like Type>
287- struct meta_sequence_container_traits <Type>: basic_meta_sequence_container_traits<Type> {};
288-
289- /* *
290- * @brief Traits for meta associative container like types.
291- * @tparam Type Container type to inspect.
292- */
293- template <internal::meta_associative_container_like Type>
294- struct meta_associative_container_traits <Type>: basic_meta_associative_container_traits<Type> {};
295-
296284} // namespace entt
297285
298286#endif
0 commit comments