template ctor for any_type

This commit is contained in:
BlackMATov
2023-02-07 23:22:43 +07:00
parent fa68b6fb01
commit ca7570897b
3 changed files with 8 additions and 100 deletions

View File

@@ -2008,19 +2008,8 @@ namespace meta_hpp
[[nodiscard]] const metadata_map& get_metadata() const noexcept; [[nodiscard]] const metadata_map& get_metadata() const noexcept;
any_type(const array_type& other) noexcept; template < detail::type_family Type >
any_type(const class_type& other) noexcept; any_type(const Type& other) noexcept;
any_type(const constructor_type& other) noexcept;
any_type(const destructor_type& other) noexcept;
any_type(const enum_type& other) noexcept;
any_type(const function_type& other) noexcept;
any_type(const member_type& other) noexcept;
any_type(const method_type& other) noexcept;
any_type(const nullptr_type& other) noexcept;
any_type(const number_type& other) noexcept;
any_type(const pointer_type& other) noexcept;
any_type(const reference_type& other) noexcept;
any_type(const void_type& other) noexcept;
template < detail::type_family Type > template < detail::type_family Type >
[[nodiscard]] bool is() const noexcept; [[nodiscard]] bool is() const noexcept;
@@ -7741,43 +7730,8 @@ namespace meta_hpp
return data_->metadata; return data_->metadata;
} }
inline any_type::any_type(const array_type& other) noexcept template < detail::type_family Type >
: data_{detail::type_access(other)} {} any_type::any_type(const Type& other) noexcept
inline any_type::any_type(const class_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const constructor_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const destructor_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const enum_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const function_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const member_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const method_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const nullptr_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const number_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const pointer_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const reference_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const void_type& other) noexcept
: data_{detail::type_access(other)} {} : data_{detail::type_access(other)} {}
template < detail::type_family Type > template < detail::type_family Type >

View File

@@ -75,19 +75,8 @@ namespace meta_hpp
[[nodiscard]] const metadata_map& get_metadata() const noexcept; [[nodiscard]] const metadata_map& get_metadata() const noexcept;
any_type(const array_type& other) noexcept; template < detail::type_family Type >
any_type(const class_type& other) noexcept; any_type(const Type& other) noexcept;
any_type(const constructor_type& other) noexcept;
any_type(const destructor_type& other) noexcept;
any_type(const enum_type& other) noexcept;
any_type(const function_type& other) noexcept;
any_type(const member_type& other) noexcept;
any_type(const method_type& other) noexcept;
any_type(const nullptr_type& other) noexcept;
any_type(const number_type& other) noexcept;
any_type(const pointer_type& other) noexcept;
any_type(const reference_type& other) noexcept;
any_type(const void_type& other) noexcept;
template < detail::type_family Type > template < detail::type_family Type >
[[nodiscard]] bool is() const noexcept; [[nodiscard]] bool is() const noexcept;

View File

@@ -34,43 +34,8 @@ namespace meta_hpp
return data_->metadata; return data_->metadata;
} }
inline any_type::any_type(const array_type& other) noexcept template < detail::type_family Type >
: data_{detail::type_access(other)} {} any_type::any_type(const Type& other) noexcept
inline any_type::any_type(const class_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const constructor_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const destructor_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const enum_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const function_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const member_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const method_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const nullptr_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const number_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const pointer_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const reference_type& other) noexcept
: data_{detail::type_access(other)} {}
inline any_type::any_type(const void_type& other) noexcept
: data_{detail::type_access(other)} {} : data_{detail::type_access(other)} {}
template < detail::type_family Type > template < detail::type_family Type >