Skip to content

Commit 4943abc

Browse files
refactor: Move make_primitive implementation to details namespace
Signed-off-by: FrozenlemonTee <1115306170@qq.com>
1 parent b0399c8 commit 4943abc

1 file changed

Lines changed: 8 additions & 8 deletions

File tree

src/primitive/traits.cppm

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ namespace mcpplibs::primitives::meta::details {
1313

1414
template <typename T> struct primitive_traits_impl;
1515

16+
template <typename T, typename PoliciesTuple> struct make_primitive;
17+
1618
template <underlying_type T, policy::policy_type... Policies>
1719
struct primitive_traits_impl<primitive<T, Policies...>> {
1820
using value_type = T;
@@ -27,21 +29,19 @@ struct primitive_traits_impl<primitive<T, Policies...>> {
2729
policy::resolve_policy_t<policy::category::concurrency, Policies...>;
2830
};
2931

32+
template <underlying_type T, policy::policy_type... Policies>
33+
struct make_primitive<T, std::tuple<Policies...>> {
34+
using type = primitive<T, Policies...>;
35+
};
36+
3037
} // namespace mcpplibs::primitives::meta::details
3138

3239
// Public API exported from this module.
3340
export namespace mcpplibs::primitives::meta {
3441
using policy_category = policy::category;
3542

36-
template <typename T, typename PoliciesTuple> struct make_primitive;
37-
38-
template <underlying_type T, policy::policy_type... Policies>
39-
struct make_primitive<T, std::tuple<Policies...>> {
40-
using type = primitive<T, Policies...>;
41-
};
42-
4343
template <underlying_type T, typename PoliciesTuple>
44-
using make_primitive_t = make_primitive<T, PoliciesTuple>::type;
44+
using make_primitive_t = details::make_primitive<T, PoliciesTuple>::type;
4545

4646
using default_policies =
4747
std::tuple<policy::resolve_policy_t<policy::category::value>,

0 commit comments

Comments
 (0)