|
@@ -163,7 +163,7 @@ class meta_factory: private internal::basic_meta_factory {
|
|
|
(std::is_member_object_pointer_v<decltype(value_list_element_v<Index, Setter>)> && ... && std::is_const_v<std::remove_reference_t<data_type>>) ? internal::meta_traits::is_const : internal::meta_traits::is_none,
|
|
(std::is_member_object_pointer_v<decltype(value_list_element_v<Index, Setter>)> && ... && std::is_const_v<std::remove_reference_t<data_type>>) ? internal::meta_traits::is_const : internal::meta_traits::is_none,
|
|
|
Setter::size,
|
|
Setter::size,
|
|
|
&internal::resolve<std::remove_cv_t<std::remove_reference_t<data_type>>>,
|
|
&internal::resolve<std::remove_cv_t<std::remove_reference_t<data_type>>>,
|
|
|
- &meta_arg<type_list<type_list_element_t<type_list_element_t<Index, args_type>::size != 1u, type_list_element_t<Index, args_type>>...>>,
|
|
|
|
|
|
|
+ &meta_arg<type_list<type_list_element_t<static_cast<std::size_t>(type_list_element_t<Index, args_type>::size != 1u), type_list_element_t<Index, args_type>>...>>,
|
|
|
+[](meta_handle instance, meta_any value) { return (meta_setter<Type, value_list_element_v<Index, Setter>>(*instance.operator->(), value.as_ref()) || ...); },
|
|
+[](meta_handle instance, meta_any value) { return (meta_setter<Type, value_list_element_v<Index, Setter>>(*instance.operator->(), value.as_ref()) || ...); },
|
|
|
&meta_getter<Type, Getter, Policy>});
|
|
&meta_getter<Type, Getter, Policy>});
|
|
|
}
|
|
}
|
|
@@ -410,7 +410,7 @@ public:
|
|
|
internal::meta_traits::is_none,
|
|
internal::meta_traits::is_none,
|
|
|
1u,
|
|
1u,
|
|
|
&internal::resolve<std::remove_cv_t<std::remove_reference_t<data_type>>>,
|
|
&internal::resolve<std::remove_cv_t<std::remove_reference_t<data_type>>>,
|
|
|
- &meta_arg<type_list<type_list_element_t<args_type::size != 1u, args_type>>>,
|
|
|
|
|
|
|
+ &meta_arg<type_list<type_list_element_t<static_cast<std::size_t>(args_type::size != 1u), args_type>>>,
|
|
|
&meta_setter<Type, Setter>,
|
|
&meta_setter<Type, Setter>,
|
|
|
&meta_getter<Type, Getter, Policy>});
|
|
&meta_getter<Type, Getter, Policy>});
|
|
|
}
|
|
}
|