meta: merge meta container operation enums

This commit is contained in:
skypjack
2023-07-20 10:51:48 +02:00
committed by Michele Caini
parent f20b9e3875
commit 2ae3e52f76
2 changed files with 11 additions and 15 deletions

View File

@@ -48,7 +48,7 @@ template<typename Type>
struct basic_meta_sequence_container_traits {
static_assert(std::is_same_v<Type, std::remove_cv_t<std::remove_reference_t<Type>>>, "Unexpected type");
using operation = internal::meta_sequence_container_operation;
using operation = internal::meta_container_operation;
using size_type = typename meta_sequence_container::size_type;
using iterator = typename meta_sequence_container::iterator;
@@ -112,6 +112,9 @@ struct basic_meta_sequence_container_traits {
}
}
break;
default:
// nothing to do here
break;
}
@@ -123,7 +126,7 @@ template<typename Type>
struct basic_meta_associative_container_traits {
static_assert(std::is_same_v<Type, std::remove_cv_t<std::remove_reference_t<Type>>>, "Unexpected type");
using operation = internal::meta_associative_container_operation;
using operation = internal::meta_container_operation;
using size_type = typename meta_associative_container::size_type;
using iterator = typename meta_associative_container::iterator;
@@ -187,6 +190,9 @@ struct basic_meta_associative_container_traits {
return true;
}
break;
default:
// nothing to do here
break;
}

View File

@@ -33,7 +33,7 @@ class meta_type;
namespace internal {
enum class meta_sequence_container_operation {
enum class meta_container_operation {
size,
clear,
reserve,
@@ -41,16 +41,6 @@ enum class meta_sequence_container_operation {
begin,
end,
insert,
erase
};
enum class meta_associative_container_operation {
size,
clear,
reserve,
begin,
end,
insert,
erase,
find
};
@@ -65,7 +55,7 @@ enum class meta_associative_container_operation {
/*! @brief Proxy object for sequence containers. */
class meta_sequence_container {
class meta_iterator;
using operation = internal::meta_sequence_container_operation;
using operation = internal::meta_container_operation;
public:
/*! @brief Unsigned integer type. */
@@ -115,7 +105,7 @@ private:
/*! @brief Proxy object for associative containers. */
class meta_associative_container {
class meta_iterator;
using operation = internal::meta_associative_container_operation;
using operation = internal::meta_container_operation;
public:
/*! @brief Unsigned integer type. */