// WARNING: Please don't edit this file. It was generated by C++/WinRT // v2.0.250303.1 #pragma once #ifndef WINRT_Microsoft_UI_Xaml_Data_H #define WINRT_Microsoft_UI_Xaml_Data_H #include "winrt/base.h" static_assert(winrt::check_version(CPPWINRT_VERSION, "2.0.250303.1"), "Mismatched C++/WinRT headers."); #define CPPWINRT_VERSION "2.0.250303.1" #include "winrt/Microsoft.UI.Xaml.h" #include "winrt/impl/Microsoft.UI.Xaml.2.h" #include "winrt/impl/Microsoft.UI.Xaml.Data.2.h" #include "winrt/impl/Windows.Foundation.2.h" #include "winrt/impl/Windows.Foundation.Collections.2.h" #include "winrt/impl/Windows.UI.Xaml.Interop.2.h" namespace winrt::impl { template auto consume_Microsoft_UI_Xaml_Data_IBinding::Path() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Path(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Path(&value)); } return winrt::Microsoft::UI::Xaml::PropertyPath{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::Path( winrt::Microsoft::UI::Xaml::PropertyPath const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Path(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Path(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::Mode() const { winrt::Microsoft::UI::Xaml::Data::BindingMode value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult( _winrt_abi_type->get_Mode(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->get_Mode(reinterpret_cast(&value))); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::Mode( winrt::Microsoft::UI::Xaml::Data::BindingMode const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::Source() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Source(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Source(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::Source( winrt::Windows::Foundation::IInspectable const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Source(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Source(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::RelativeSource() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_RelativeSource(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RelativeSource(&value)); } return winrt::Microsoft::UI::Xaml::Data::RelativeSource{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::RelativeSource( winrt::Microsoft::UI::Xaml::Data::RelativeSource const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_RelativeSource(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_RelativeSource(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::ElementName() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ElementName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ElementName(&value)); } return hstring{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::ElementName( param::hstring const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_ElementName(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ElementName(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::Converter() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Converter(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Converter(&value)); } return winrt::Microsoft::UI::Xaml::Data::IValueConverter{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::Converter( winrt::Microsoft::UI::Xaml::Data::IValueConverter const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Converter(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Converter(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::ConverterParameter() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ConverterParameter(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ConverterParameter(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::ConverterParameter( winrt::Windows::Foundation::IInspectable const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_ConverterParameter(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ConverterParameter(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::ConverterLanguage() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ConverterLanguage(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ConverterLanguage(&value)); } return hstring{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::ConverterLanguage( param::hstring const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_ConverterLanguage(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ConverterLanguage(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::FallbackValue() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_FallbackValue(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FallbackValue(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::FallbackValue( winrt::Windows::Foundation::IInspectable const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_FallbackValue(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_FallbackValue(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::TargetNullValue() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_TargetNullValue(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TargetNullValue(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::TargetNullValue( winrt::Windows::Foundation::IInspectable const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_TargetNullValue(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_TargetNullValue(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBinding::UpdateSourceTrigger() const { winrt::Microsoft::UI::Xaml::Data::UpdateSourceTrigger value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_UpdateSourceTrigger( reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UpdateSourceTrigger( reinterpret_cast(&value))); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IBinding::UpdateSourceTrigger( winrt::Microsoft::UI::Xaml::Data::UpdateSourceTrigger const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBinding>**)&_winrt_casted_result; check_hresult( _winrt_abi_type->put_UpdateSourceTrigger(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->put_UpdateSourceTrigger(static_cast(value))); } } template auto consume_Microsoft_UI_Xaml_Data_IBindingBaseFactory::CreateInstance( winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IBindingBaseFactory>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IBindingBaseFactory, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } return winrt::Microsoft::UI::Xaml::Data::BindingBase{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBindingExpression::DataItem() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IBindingExpression>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IBindingExpression, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_DataItem(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DataItem(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBindingExpression::ParentBinding() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IBindingExpression>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IBindingExpression, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ParentBinding(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ParentBinding(&value)); } return winrt::Microsoft::UI::Xaml::Data::Binding{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBindingExpression::UpdateSource() const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IBindingExpression>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IBindingExpression, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->UpdateSource()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->UpdateSource()); } } template auto consume_Microsoft_UI_Xaml_Data_IBindingFactory::CreateInstance( winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IBindingFactory>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IBindingFactory, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } return winrt::Microsoft::UI::Xaml::Data::Binding{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IBindingOperationsStatics::SetBinding( winrt::Microsoft::UI::Xaml::DependencyObject const& target, winrt::Microsoft::UI::Xaml::DependencyProperty const& dp, winrt::Microsoft::UI::Xaml::Data::BindingBase const& binding) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IBindingOperationsStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SetBinding( *(void**)(&target), *(void**)(&dp), *(void**)(&binding))); } else { auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IBindingOperationsStatics>**)this; check_hresult(_winrt_abi_type->SetBinding( *(void**)(&target), *(void**)(&dp), *(void**)(&binding))); } } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentItem() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_CurrentItem(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CurrentItem(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentPosition() const { int32_t value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_CurrentPosition(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CurrentPosition(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::IsCurrentAfterLast() const { bool value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsCurrentAfterLast(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsCurrentAfterLast(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::IsCurrentBeforeFirst() const { bool value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsCurrentBeforeFirst(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsCurrentBeforeFirst(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CollectionGroups() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_CollectionGroups(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CollectionGroups(&value)); } return winrt::Windows::Foundation::Collections::IObservableVector< winrt::Windows::Foundation::IInspectable>{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::HasMoreItems() const { bool value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_HasMoreItems(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_HasMoreItems(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentChanged( winrt::Windows::Foundation::EventHandler< winrt::Windows::Foundation::IInspectable> const& handler) const { winrt::event_token token{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_CurrentChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_CurrentChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentChanged( auto_revoke_t, winrt::Windows::Foundation::EventHandler< winrt::Windows::Foundation::IInspectable> const& handler) const { return impl::make_event_revoker( this, CurrentChanged(handler)); } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentChanged( winrt::event_token const& token) const noexcept { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_CurrentChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_CurrentChanged(impl::bind_in(token)); } } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentChanging( winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventHandler const& handler) const { winrt::event_token token{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_CurrentChanging(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_CurrentChanging(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentChanging( auto_revoke_t, winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventHandler const& handler) const { return impl::make_event_revoker( this, CurrentChanging(handler)); } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::CurrentChanging( winrt::event_token const& token) const noexcept { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_CurrentChanging(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_CurrentChanging(impl::bind_in(token)); } } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::MoveCurrentTo( winrt::Windows::Foundation::IInspectable const& item) const { bool result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MoveCurrentTo(*(void**)(&item), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MoveCurrentTo(*(void**)(&item), &result)); } return result; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::MoveCurrentToPosition( int32_t index) const { bool result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MoveCurrentToPosition(index, &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MoveCurrentToPosition(index, &result)); } return result; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::MoveCurrentToFirst() const { bool result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MoveCurrentToFirst(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MoveCurrentToFirst(&result)); } return result; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::MoveCurrentToLast() const { bool result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MoveCurrentToLast(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MoveCurrentToLast(&result)); } return result; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::MoveCurrentToNext() const { bool result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MoveCurrentToNext(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MoveCurrentToNext(&result)); } return result; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::MoveCurrentToPrevious() const { bool result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MoveCurrentToPrevious(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MoveCurrentToPrevious(&result)); } return result; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionView::LoadMoreItemsAsync( uint32_t count) const { void* operation{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionView>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionView, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->LoadMoreItemsAsync(count, &operation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadMoreItemsAsync(count, &operation)); } return winrt::Windows::Foundation::IAsyncOperation< winrt::Microsoft::UI::Xaml::Data::LoadMoreItemsResult>{ operation, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewFactory::CreateView() const { void* result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewFactory>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewFactory, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateView(&result)); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult(_winrt_abi_type->CreateView(&result)); } return winrt::Microsoft::UI::Xaml::Data::ICollectionView{ result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewGroup::Group() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewGroup>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewGroup, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Group(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Group(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewGroup::GroupItems() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewGroup>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewGroup, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_GroupItems(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_GroupItems(&value)); } return winrt::Windows::Foundation::Collections::IObservableVector< winrt::Windows::Foundation::IInspectable>{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSource::Source() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Source(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Source(&value)); } return winrt::Windows::Foundation::IInspectable{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSource::Source( winrt::Windows::Foundation::IInspectable const& value) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Source(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Source(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSource::View() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_View(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_View(&value)); } return winrt::Microsoft::UI::Xaml::Data::ICollectionView{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSource::IsSourceGrouped() const { bool value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsSourceGrouped(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsSourceGrouped(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSource::IsSourceGrouped( bool value) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsSourceGrouped(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsSourceGrouped(value)); } } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSource::ItemsPath() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ItemsPath(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ItemsPath(&value)); } return winrt::Microsoft::UI::Xaml::PropertyPath{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSource::ItemsPath( winrt::Microsoft::UI::Xaml::PropertyPath const& value) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_ItemsPath(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ItemsPath(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSourceStatics< D>::SourceProperty() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSourceStatics, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_SourceProperty(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_SourceProperty(&value)); } return winrt::Microsoft::UI::Xaml::DependencyProperty{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSourceStatics< D>::ViewProperty() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSourceStatics, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ViewProperty(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ViewProperty(&value)); } return winrt::Microsoft::UI::Xaml::DependencyProperty{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSourceStatics< D>::IsSourceGroupedProperty() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSourceStatics, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsSourceGroupedProperty(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsSourceGroupedProperty(&value)); } return winrt::Microsoft::UI::Xaml::DependencyProperty{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICollectionViewSourceStatics< D>::ItemsPathProperty() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICollectionViewSourceStatics, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ItemsPathProperty(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ItemsPathProperty(&value)); } return winrt::Microsoft::UI::Xaml::DependencyProperty{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICurrentChangingEventArgs::Cancel() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Cancel(&value)); } else { auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs>**)this; check_hresult(_winrt_abi_type->get_Cancel(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICurrentChangingEventArgs::Cancel( bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Cancel(value)); } else { auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs>**)this; check_hresult(_winrt_abi_type->put_Cancel(value)); } } template auto consume_Microsoft_UI_Xaml_Data_ICurrentChangingEventArgs::IsCancelable() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsCancelable(&value)); } else { auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs>**)this; check_hresult(_winrt_abi_type->get_IsCancelable(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICurrentChangingEventArgsFactory:: CreateInstance( winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgsFactory, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } return winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventArgs{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICurrentChangingEventArgsFactory:: CreateWithCancelableParameter( bool isCancelable, winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgsFactory, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateWithCancelableParameter( isCancelable, *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateWithCancelableParameter( isCancelable, *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } return winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventArgs{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::Type() const { winrt::Windows::UI::Xaml::Interop::TypeName value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Type(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Type(put_abi(value))); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::Name() const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Name(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Name(&value)); } return hstring{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::GetValue( winrt::Windows::Foundation::IInspectable const& target) const { void* result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetValue(*(void**)(&target), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetValue(*(void**)(&target), &result)); } return winrt::Windows::Foundation::IInspectable{result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::SetValue( winrt::Windows::Foundation::IInspectable const& target, winrt::Windows::Foundation::IInspectable const& value) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->SetValue(*(void**)(&target), *(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->SetValue(*(void**)(&target), *(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::GetIndexedValue( winrt::Windows::Foundation::IInspectable const& target, winrt::Windows::Foundation::IInspectable const& index) const { void* result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetIndexedValue(*(void**)(&target), *(void**)(&index), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetIndexedValue(*(void**)(&target), *(void**)(&index), &result)); } return winrt::Windows::Foundation::IInspectable{result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::SetIndexedValue( winrt::Windows::Foundation::IInspectable const& target, winrt::Windows::Foundation::IInspectable const& value, winrt::Windows::Foundation::IInspectable const& index) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SetIndexedValue( *(void**)(&target), *(void**)(&value), *(void**)(&index))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetIndexedValue( *(void**)(&target), *(void**)(&value), *(void**)(&index))); } } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::CanWrite() const { bool value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_CanWrite(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CanWrite(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICustomProperty::CanRead() const { bool value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ICustomProperty>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomProperty, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_CanRead(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CanRead(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_ICustomPropertyProvider< D>::GetCustomProperty(param::hstring const& name) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomPropertyProvider, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->GetCustomProperty(*(void**)(&name), &result)); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult( _winrt_abi_type->GetCustomProperty(*(void**)(&name), &result)); } return winrt::Microsoft::UI::Xaml::Data::ICustomProperty{ result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICustomPropertyProvider< D>::GetIndexedProperty(param::hstring const& name, winrt::Windows::UI::Xaml::Interop::TypeName const& type) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomPropertyProvider, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetIndexedProperty( *(void**)(&name), impl::bind_in(type), &result)); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult(_winrt_abi_type->GetIndexedProperty( *(void**)(&name), impl::bind_in(type), &result)); } return winrt::Microsoft::UI::Xaml::Data::ICustomProperty{ result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICustomPropertyProvider< D>::GetStringRepresentation() const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomPropertyProvider, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetStringRepresentation(&result)); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult(_winrt_abi_type->GetStringRepresentation(&result)); } return hstring{result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ICustomPropertyProvider::Type() const { winrt::Windows::UI::Xaml::Interop::TypeName value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ICustomPropertyProvider, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Type(put_abi(value))); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult(_winrt_abi_type->get_Type(put_abi(value))); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IDataErrorsChangedEventArgs< D>::PropertyName() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IDataErrorsChangedEventArgs, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PropertyName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PropertyName(&value)); } return hstring{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IDataErrorsChangedEventArgs< D>::PropertyName(param::hstring const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IDataErrorsChangedEventArgs, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_PropertyName(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_PropertyName(*(void**)(&value))); } } template auto consume_Microsoft_UI_Xaml_Data_IDataErrorsChangedEventArgsFactory< D>::CreateInstance(param::hstring const& name) const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IDataErrorsChangedEventArgsFactory, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&name), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&name), &value)); } return winrt::Microsoft::UI::Xaml::Data::DataErrorsChangedEventArgs{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IItemIndexRange::FirstIndex() const { int32_t value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IItemIndexRange>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IItemIndexRange, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_FirstIndex(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FirstIndex(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IItemIndexRange::Length() const { uint32_t value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IItemIndexRange>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IItemIndexRange, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Length(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Length(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IItemIndexRange::LastIndex() const { int32_t value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IItemIndexRange>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IItemIndexRange, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_LastIndex(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LastIndex(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IItemIndexRangeFactory::CreateInstance( int32_t firstIndex, uint32_t length, winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IItemIndexRangeFactory>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IItemIndexRangeFactory, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInstance( firstIndex, length, *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance( firstIndex, length, *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } return winrt::Microsoft::UI::Xaml::Data::ItemIndexRange{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IItemsRangeInfo::RangesChanged( winrt::Microsoft::UI::Xaml::Data::ItemIndexRange const& visibleRange, param::vector_view const& trackedItems) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IItemsRangeInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IItemsRangeInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->RangesChanged(*(void**)(&visibleRange), *(void**)(&trackedItems))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RangesChanged(*(void**)(&visibleRange), *(void**)(&trackedItems))); } } template auto consume_Microsoft_UI_Xaml_Data_INotifyDataErrorInfo::HasErrors() const { bool value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_HasErrors(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_HasErrors(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_INotifyDataErrorInfo::ErrorsChanged( winrt::Windows::Foundation::EventHandler< winrt::Microsoft::UI::Xaml::Data::DataErrorsChangedEventArgs> const& handler) const { winrt::event_token token{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_ErrorsChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_ErrorsChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Microsoft_UI_Xaml_Data_INotifyDataErrorInfo::ErrorsChanged( auto_revoke_t, winrt::Windows::Foundation::EventHandler< winrt::Microsoft::UI::Xaml::Data::DataErrorsChangedEventArgs> const& handler) const { return impl::make_event_revoker( this, ErrorsChanged(handler)); } template auto consume_Microsoft_UI_Xaml_Data_INotifyDataErrorInfo::ErrorsChanged( winrt::event_token const& token) const noexcept { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_ErrorsChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_ErrorsChanged(impl::bind_in(token)); } } template auto consume_Microsoft_UI_Xaml_Data_INotifyDataErrorInfo::GetErrors( param::hstring const& propertyName) const { void* result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::INotifyDataErrorInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->GetErrors(*(void**)(&propertyName), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->GetErrors(*(void**)(&propertyName), &result)); } return winrt::Windows::Foundation::Collections::IIterable< winrt::Windows::Foundation::IInspectable>{result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_INotifyPropertyChanged::PropertyChanged( winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventHandler const& handler) const { winrt::event_token token{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::INotifyPropertyChanged>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::INotifyPropertyChanged, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PropertyChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult(_winrt_abi_type->add_PropertyChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Microsoft_UI_Xaml_Data_INotifyPropertyChanged::PropertyChanged( auto_revoke_t, winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventHandler const& handler) const { return impl::make_event_revoker( this, PropertyChanged(handler)); } template auto consume_Microsoft_UI_Xaml_Data_INotifyPropertyChanged::PropertyChanged( winrt::event_token const& token) const noexcept { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::INotifyPropertyChanged>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::INotifyPropertyChanged, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PropertyChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *( abi_t**)this; _winrt_abi_type->remove_PropertyChanged(impl::bind_in(token)); } } template auto consume_Microsoft_UI_Xaml_Data_IPropertyChangedEventArgs::PropertyName() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IPropertyChangedEventArgs, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PropertyName(&value)); } else { auto const _winrt_abi_type = *(abi_t< winrt::Microsoft::UI::Xaml::Data::IPropertyChangedEventArgs>**)this; check_hresult(_winrt_abi_type->get_PropertyName(&value)); } return hstring{value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IPropertyChangedEventArgsFactory:: CreateInstance( param::hstring const& name, winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IPropertyChangedEventArgsFactory, D const*>(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&name), *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&name), *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } return winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventArgs{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IRelativeSource::Mode() const { winrt::Microsoft::UI::Xaml::Data::RelativeSourceMode value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IRelativeSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IRelativeSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->get_Mode(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->get_Mode(reinterpret_cast(&value))); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IRelativeSource::Mode( winrt::Microsoft::UI::Xaml::Data::RelativeSourceMode const& value) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IRelativeSource>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IRelativeSource, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } } template auto consume_Microsoft_UI_Xaml_Data_IRelativeSourceFactory::CreateInstance( winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const { void* value{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IRelativeSourceFactory>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IRelativeSourceFactory, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } else { auto const _winrt_abi_type = *( abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance( *(void**)(&baseInterface), impl::bind_out(innerInterface), &value)); } return winrt::Microsoft::UI::Xaml::Data::RelativeSource{ value, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ISelectionInfo::SelectRange( winrt::Microsoft::UI::Xaml::Data::ItemIndexRange const& itemIndexRange) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ISelectionInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ISelectionInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SelectRange(*(void**)(&itemIndexRange))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SelectRange(*(void**)(&itemIndexRange))); } } template auto consume_Microsoft_UI_Xaml_Data_ISelectionInfo::DeselectRange( winrt::Microsoft::UI::Xaml::Data::ItemIndexRange const& itemIndexRange) const { if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ISelectionInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ISelectionInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->DeselectRange(*(void**)(&itemIndexRange))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->DeselectRange(*(void**)(&itemIndexRange))); } } template auto consume_Microsoft_UI_Xaml_Data_ISelectionInfo::IsSelected( int32_t index) const { bool result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ISelectionInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ISelectionInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->IsSelected(index, &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->IsSelected(index, &result)); } return result; } template auto consume_Microsoft_UI_Xaml_Data_ISelectionInfo::GetSelectedRanges() const { void* result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::ISelectionInfo>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ISelectionInfo, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetSelectedRanges(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetSelectedRanges(&result)); } return winrt::Windows::Foundation::Collections::IVectorView< winrt::Microsoft::UI::Xaml::Data::ItemIndexRange>{ result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ISupportIncrementalLoading< D>::LoadMoreItemsAsync(uint32_t count) const { void* operation{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ISupportIncrementalLoading, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->LoadMoreItemsAsync(count, &operation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadMoreItemsAsync(count, &operation)); } return winrt::Windows::Foundation::IAsyncOperation< winrt::Microsoft::UI::Xaml::Data::LoadMoreItemsResult>{ operation, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_ISupportIncrementalLoading< D>::HasMoreItems() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::ISupportIncrementalLoading, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_HasMoreItems(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_HasMoreItems(&value)); } return value; } template auto consume_Microsoft_UI_Xaml_Data_IValueConverter::Convert( winrt::Windows::Foundation::IInspectable const& value, winrt::Windows::UI::Xaml::Interop::TypeName const& targetType, winrt::Windows::Foundation::IInspectable const& parameter, param::hstring const& language) const { void* result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IValueConverter>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IValueConverter, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Convert( *(void**)(&value), impl::bind_in(targetType), *(void**)(¶meter), *(void**)(&language), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Convert( *(void**)(&value), impl::bind_in(targetType), *(void**)(¶meter), *(void**)(&language), &result)); } return winrt::Windows::Foundation::IInspectable{result, take_ownership_from_abi}; } template auto consume_Microsoft_UI_Xaml_Data_IValueConverter::ConvertBack( winrt::Windows::Foundation::IInspectable const& value, winrt::Windows::UI::Xaml::Interop::TypeName const& targetType, winrt::Windows::Foundation::IInspectable const& parameter, param::hstring const& language) const { void* result{}; if constexpr (!std::is_same_v< D, winrt::Microsoft::UI::Xaml::Data::IValueConverter>) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::UI::Xaml::Data::IValueConverter, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ConvertBack( *(void**)(&value), impl::bind_in(targetType), *(void**)(¶meter), *(void**)(&language), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ConvertBack( *(void**)(&value), impl::bind_in(targetType), *(void**)(¶meter), *(void**)(&language), &result)); } return winrt::Windows::Foundation::IInspectable{result, take_ownership_from_abi}; } template struct delegate final : implements_delegate< winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventHandler, H> { delegate(H&& handler) : implements_delegate< winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventHandler, H>( std::forward(handler)) {} int32_t __stdcall Invoke(void* sender, void* e) noexcept final try { (*this)( *reinterpret_cast( &sender), *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventArgs const*>( &e)); return 0; } catch (...) { return to_hresult(); } }; template struct delegate final : implements_delegate< winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventHandler, H> { delegate(H&& handler) : implements_delegate< winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventHandler, H>( std::forward(handler)) {} int32_t __stdcall Invoke(void* sender, void* e) noexcept final try { (*this)( *reinterpret_cast( &sender), *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventArgs const*>( &e)); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Path(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Path()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Path(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Path( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Mode(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Mode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Mode(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Mode( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Source(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Source()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Source(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Source( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RelativeSource(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().RelativeSource()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_RelativeSource(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RelativeSource( *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::RelativeSource const*>(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ElementName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ElementName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ElementName(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ElementName(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Converter(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Converter()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Converter(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Converter( *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::IValueConverter const*>(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ConverterParameter(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().ConverterParameter()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ConverterParameter(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ConverterParameter( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ConverterLanguage(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ConverterLanguage()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ConverterLanguage(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ConverterLanguage(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_FallbackValue(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().FallbackValue()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_FallbackValue(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().FallbackValue( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TargetNullValue(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().TargetNullValue()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_TargetNullValue(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().TargetNullValue( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_UpdateSourceTrigger(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().UpdateSourceTrigger()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_UpdateSourceTrigger(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UpdateSourceTrigger( *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::UpdateSourceTrigger const*>( &value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base {}; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* baseInterface, void** innerInterface, void** value) noexcept final try { if (innerInterface) *innerInterface = nullptr; winrt::Windows::Foundation::IInspectable winrt_impl_innerInterface; clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().CreateInstance( *reinterpret_cast( &baseInterface), winrt_impl_innerInterface)); if (innerInterface) *innerInterface = detach_abi(winrt_impl_innerInterface); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_DataItem(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().DataItem()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ParentBinding(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().ParentBinding()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall UpdateSource() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UpdateSource(); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base {}; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::IBindingExpressionBaseFactory> { }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::IBindingExpressionFactory> {}; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* baseInterface, void** innerInterface, void** value) noexcept final try { if (innerInterface) *innerInterface = nullptr; winrt::Windows::Foundation::IInspectable winrt_impl_innerInterface; clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().CreateInstance( *reinterpret_cast( &baseInterface), winrt_impl_innerInterface)); if (innerInterface) *innerInterface = detach_abi(winrt_impl_innerInterface); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base {}; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::IBindingOperationsStatics> { int32_t __stdcall SetBinding(void* target, void* dp, void* binding) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetBinding( *reinterpret_cast( &target), *reinterpret_cast< winrt::Microsoft::UI::Xaml::DependencyProperty const*>(&dp), *reinterpret_cast( &binding)); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall get_CurrentItem(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().CurrentItem()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CurrentPosition(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CurrentPosition()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsCurrentAfterLast(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsCurrentAfterLast()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsCurrentBeforeFirst(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsCurrentBeforeFirst()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CollectionGroups(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>( this->shim().CollectionGroups()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_HasMoreItems(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().HasMoreItems()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall add_CurrentChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().CurrentChanged( *reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_CurrentChanged( winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().CurrentChanged( *reinterpret_cast(&token)); return 0; } int32_t __stdcall add_CurrentChanging( void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().CurrentChanging( *reinterpret_cast(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_CurrentChanging( winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().CurrentChanging( *reinterpret_cast(&token)); return 0; } int32_t __stdcall MoveCurrentTo(void* item, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().MoveCurrentTo( *reinterpret_cast( &item))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MoveCurrentToPosition(int32_t index, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().MoveCurrentToPosition(index)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MoveCurrentToFirst(bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().MoveCurrentToFirst()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MoveCurrentToLast(bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().MoveCurrentToLast()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MoveCurrentToNext(bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().MoveCurrentToNext()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MoveCurrentToPrevious(bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().MoveCurrentToPrevious()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall LoadMoreItemsAsync(uint32_t count, void** operation) noexcept final try { clear_abi(operation); typename D::abi_guard guard(this->shim()); *operation = detach_from>( this->shim().LoadMoreItemsAsync(count)); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall CreateView(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().CreateView()); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall get_Group(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Group()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_GroupItems(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>( this->shim().GroupItems()); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Source(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Source()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Source(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Source( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_View(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().View()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsSourceGrouped(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsSourceGrouped()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsSourceGrouped(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsSourceGrouped(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ItemsPath(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().ItemsPath()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ItemsPath(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ItemsPath( *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::ICollectionViewSourceStatics> { int32_t __stdcall get_SourceProperty(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().SourceProperty()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ViewProperty(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().ViewProperty()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsSourceGroupedProperty(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().IsSourceGroupedProperty()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ItemsPathProperty(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().ItemsPathProperty()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs> { int32_t __stdcall get_Cancel(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Cancel()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Cancel(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Cancel(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsCancelable(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsCancelable()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce< D, winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgsFactory> : produce_base< D, winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgsFactory> { int32_t __stdcall CreateInstance(void* baseInterface, void** innerInterface, void** value) noexcept final try { if (innerInterface) *innerInterface = nullptr; winrt::Windows::Foundation::IInspectable winrt_impl_innerInterface; clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from< winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventArgs>( this->shim().CreateInstance( *reinterpret_cast( &baseInterface), winrt_impl_innerInterface)); if (innerInterface) *innerInterface = detach_abi(winrt_impl_innerInterface); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateWithCancelableParameter(bool isCancelable, void* baseInterface, void** innerInterface, void** value) noexcept final try { if (innerInterface) *innerInterface = nullptr; winrt::Windows::Foundation::IInspectable winrt_impl_innerInterface; clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from< winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventArgs>( this->shim().CreateWithCancelableParameter( isCancelable, *reinterpret_cast( &baseInterface), winrt_impl_innerInterface)); if (innerInterface) *innerInterface = detach_abi(winrt_impl_innerInterface); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall get_Type( struct struct_Windows_UI_Xaml_Interop_TypeName* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Type()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Name(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Name()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetValue(void* target, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().GetValue( *reinterpret_cast( &target))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetValue(void* target, void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetValue( *reinterpret_cast( &target), *reinterpret_cast( &value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetIndexedValue(void* target, void* index, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().GetIndexedValue( *reinterpret_cast( &target), *reinterpret_cast( &index))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetIndexedValue(void* target, void* value, void* index) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetIndexedValue( *reinterpret_cast( &target), *reinterpret_cast( &value), *reinterpret_cast( &index)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CanWrite(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CanWrite()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CanRead(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CanRead()); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall GetCustomProperty(void* name, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().GetCustomProperty( *reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetIndexedProperty( void* name, struct struct_Windows_UI_Xaml_Interop_TypeName type, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().GetIndexedProperty( *reinterpret_cast(&name), *reinterpret_cast< winrt::Windows::UI::Xaml::Interop::TypeName const*>(&type))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetStringRepresentation(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetStringRepresentation()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Type( struct struct_Windows_UI_Xaml_Interop_TypeName* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Type()); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::IDataErrorsChangedEventArgs> { int32_t __stdcall get_PropertyName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PropertyName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_PropertyName(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PropertyName(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce< D, winrt::Microsoft::UI::Xaml::Data::IDataErrorsChangedEventArgsFactory> : produce_base { int32_t __stdcall CreateInstance(void* name, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from< winrt::Microsoft::UI::Xaml::Data::DataErrorsChangedEventArgs>( this->shim().CreateInstance(*reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_FirstIndex(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FirstIndex()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Length(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Length()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_LastIndex(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().LastIndex()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(int32_t firstIndex, uint32_t length, void* baseInterface, void** innerInterface, void** value) noexcept final try { if (innerInterface) *innerInterface = nullptr; winrt::Windows::Foundation::IInspectable winrt_impl_innerInterface; clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().CreateInstance( firstIndex, length, *reinterpret_cast( &baseInterface), winrt_impl_innerInterface)); if (innerInterface) *innerInterface = detach_abi(winrt_impl_innerInterface); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall RangesChanged(void* visibleRange, void* trackedItems) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RangesChanged( *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::ItemIndexRange const*>( &visibleRange), *reinterpret_cast const*>( &trackedItems)); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall get_HasErrors(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().HasErrors()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall add_ErrorsChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().ErrorsChanged( *reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_ErrorsChanged( winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().ErrorsChanged( *reinterpret_cast(&token)); return 0; } int32_t __stdcall GetErrors(void* propertyName, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from>( this->shim().GetErrors( *reinterpret_cast(&propertyName))); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall add_PropertyChanged( void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().PropertyChanged( *reinterpret_cast(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PropertyChanged( winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PropertyChanged( *reinterpret_cast(&token)); return 0; } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::IPropertyChangedEventArgs> { int32_t __stdcall get_PropertyName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PropertyName()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce< D, winrt::Microsoft::UI::Xaml::Data::IPropertyChangedEventArgsFactory> : produce_base< D, winrt::Microsoft::UI::Xaml::Data::IPropertyChangedEventArgsFactory> { int32_t __stdcall CreateInstance(void* name, void* baseInterface, void** innerInterface, void** value) noexcept final try { if (innerInterface) *innerInterface = nullptr; winrt::Windows::Foundation::IInspectable winrt_impl_innerInterface; clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from< winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventArgs>( this->shim().CreateInstance( *reinterpret_cast(&name), *reinterpret_cast( &baseInterface), winrt_impl_innerInterface)); if (innerInterface) *innerInterface = detach_abi(winrt_impl_innerInterface); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Mode(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().Mode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Mode(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Mode( *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::RelativeSourceMode const*>( &value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* baseInterface, void** innerInterface, void** value) noexcept final try { if (innerInterface) *innerInterface = nullptr; winrt::Windows::Foundation::IInspectable winrt_impl_innerInterface; clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from( this->shim().CreateInstance( *reinterpret_cast( &baseInterface), winrt_impl_innerInterface)); if (innerInterface) *innerInterface = detach_abi(winrt_impl_innerInterface); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall SelectRange(void* itemIndexRange) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SelectRange( *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::ItemIndexRange const*>( &itemIndexRange)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall DeselectRange(void* itemIndexRange) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().DeselectRange( *reinterpret_cast< winrt::Microsoft::UI::Xaml::Data::ItemIndexRange const*>( &itemIndexRange)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall IsSelected(int32_t index, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().IsSelected(index)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetSelectedRanges(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from>( this->shim().GetSelectedRanges()); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base< D, winrt::Microsoft::UI::Xaml::Data::ISupportIncrementalLoading> { int32_t __stdcall LoadMoreItemsAsync(uint32_t count, void** operation) noexcept final try { clear_abi(operation); typename D::abi_guard guard(this->shim()); *operation = detach_from>( this->shim().LoadMoreItemsAsync(count)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_HasMoreItems(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().HasMoreItems()); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall Convert( void* value, struct struct_Windows_UI_Xaml_Interop_TypeName targetType, void* parameter, void* language, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from< winrt::Windows::Foundation::IInspectable>(this->shim().Convert( *reinterpret_cast( &value), *reinterpret_cast( &targetType), *reinterpret_cast( ¶meter), *reinterpret_cast(&language))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ConvertBack( void* value, struct struct_Windows_UI_Xaml_Interop_TypeName targetType, void* parameter, void* language, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from< winrt::Windows::Foundation::IInspectable>(this->shim().ConvertBack( *reinterpret_cast( &value), *reinterpret_cast( &targetType), *reinterpret_cast( ¶meter), *reinterpret_cast(&language))); return 0; } catch (...) { return to_hresult(); } }; } // namespace winrt::impl WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml::Data { inline Binding::Binding() { winrt::Windows::Foundation::IInspectable baseInterface, innerInterface; *this = impl::call_factory( [&](IBindingFactory const& f) { return f.CreateInstance(baseInterface, innerInterface); }); } inline BindingBase::BindingBase() { winrt::Windows::Foundation::IInspectable baseInterface, innerInterface; *this = impl::call_factory( [&](IBindingBaseFactory const& f) { return f.CreateInstance(baseInterface, innerInterface); }); } inline auto BindingOperations::SetBinding( winrt::Microsoft::UI::Xaml::DependencyObject const& target, winrt::Microsoft::UI::Xaml::DependencyProperty const& dp, winrt::Microsoft::UI::Xaml::Data::BindingBase const& binding) { impl::call_factory( [&](IBindingOperationsStatics const& f) { return f.SetBinding(target, dp, binding); }); } inline CollectionViewSource::CollectionViewSource() : CollectionViewSource( impl::call_factory_cast< CollectionViewSource (*)( winrt::Windows::Foundation::IActivationFactory const&), CollectionViewSource>( [](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) {} inline auto CollectionViewSource::SourceProperty() { return impl::call_factory_cast< winrt::Microsoft::UI::Xaml::DependencyProperty (*)( ICollectionViewSourceStatics const&), CollectionViewSource, ICollectionViewSourceStatics>( [](ICollectionViewSourceStatics const& f) { return f.SourceProperty(); }); } inline auto CollectionViewSource::ViewProperty() { return impl::call_factory_cast< winrt::Microsoft::UI::Xaml::DependencyProperty (*)( ICollectionViewSourceStatics const&), CollectionViewSource, ICollectionViewSourceStatics>( [](ICollectionViewSourceStatics const& f) { return f.ViewProperty(); }); } inline auto CollectionViewSource::IsSourceGroupedProperty() { return impl::call_factory_cast< winrt::Microsoft::UI::Xaml::DependencyProperty (*)( ICollectionViewSourceStatics const&), CollectionViewSource, ICollectionViewSourceStatics>( [](ICollectionViewSourceStatics const& f) { return f.IsSourceGroupedProperty(); }); } inline auto CollectionViewSource::ItemsPathProperty() { return impl::call_factory_cast< winrt::Microsoft::UI::Xaml::DependencyProperty (*)( ICollectionViewSourceStatics const&), CollectionViewSource, ICollectionViewSourceStatics>( [](ICollectionViewSourceStatics const& f) { return f.ItemsPathProperty(); }); } inline CurrentChangingEventArgs::CurrentChangingEventArgs() { winrt::Windows::Foundation::IInspectable baseInterface, innerInterface; *this = impl::call_factory( [&](ICurrentChangingEventArgsFactory const& f) { return f.CreateInstance(baseInterface, innerInterface); }); } inline CurrentChangingEventArgs::CurrentChangingEventArgs(bool isCancelable) { winrt::Windows::Foundation::IInspectable baseInterface, innerInterface; *this = impl::call_factory( [&](ICurrentChangingEventArgsFactory const& f) { return f.CreateWithCancelableParameter(isCancelable, baseInterface, innerInterface); }); } inline DataErrorsChangedEventArgs::DataErrorsChangedEventArgs( param::hstring const& name) : DataErrorsChangedEventArgs( impl::call_factory( [&](IDataErrorsChangedEventArgsFactory const& f) { return f.CreateInstance(name); })) {} inline ItemIndexRange::ItemIndexRange(int32_t firstIndex, uint32_t length) { winrt::Windows::Foundation::IInspectable baseInterface, innerInterface; *this = impl::call_factory( [&](IItemIndexRangeFactory const& f) { return f.CreateInstance(firstIndex, length, baseInterface, innerInterface); }); } inline PropertyChangedEventArgs::PropertyChangedEventArgs( param::hstring const& name) { winrt::Windows::Foundation::IInspectable baseInterface, innerInterface; *this = impl::call_factory( [&](IPropertyChangedEventArgsFactory const& f) { return f.CreateInstance(name, baseInterface, innerInterface); }); } inline RelativeSource::RelativeSource() { winrt::Windows::Foundation::IInspectable baseInterface, innerInterface; *this = impl::call_factory( [&](IRelativeSourceFactory const& f) { return f.CreateInstance(baseInterface, innerInterface); }); } template CurrentChangingEventHandler::CurrentChangingEventHandler(L handler) : CurrentChangingEventHandler( impl::make_delegate( std::forward(handler))) {} template CurrentChangingEventHandler::CurrentChangingEventHandler(F * handler) : CurrentChangingEventHandler( [=](auto&&... args) { return handler(args...); }) {} template CurrentChangingEventHandler::CurrentChangingEventHandler(O * object, M method) : CurrentChangingEventHandler( [=](auto&&... args) { return ((*object).*(method))(args...); }) {} template CurrentChangingEventHandler::CurrentChangingEventHandler(com_ptr && object, M method) : CurrentChangingEventHandler( [o = std::move(object), method](auto&&... args) { return ((*o).*(method))(args...); }) {} template CurrentChangingEventHandler::CurrentChangingEventHandler( weak_ref && object, LM && lambda_or_method) : CurrentChangingEventHandler( [o = std::move(object), lm = std::forward(lambda_or_method)](auto&&... args) { if (auto s = o.get()) { if constexpr (std::is_member_function_pointer_v) ((*s).*(lm))(args...); else lm(args...); } }) {} template CurrentChangingEventHandler::CurrentChangingEventHandler( std::shared_ptr && object, M method) : CurrentChangingEventHandler( [o = std::move(object), method](auto&&... args) { return ((*o).*(method))(args...); }) {} template CurrentChangingEventHandler::CurrentChangingEventHandler( std::weak_ptr && object, LM && lambda_or_method) : CurrentChangingEventHandler( [o = std::move(object), lm = std::forward(lambda_or_method)](auto&&... args) { if (auto s = o.lock()) { if constexpr (std::is_member_function_pointer_v) ((*s).*(lm))(args...); else lm(args...); } }) {} inline auto CurrentChangingEventHandler::operator()( winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::Data::CurrentChangingEventArgs const& e) const { check_hresult((*(impl::abi_t**)this) ->Invoke(*(void**)(&sender), *(void**)(&e))); } template PropertyChangedEventHandler::PropertyChangedEventHandler(L handler) : PropertyChangedEventHandler( impl::make_delegate( std::forward(handler))) {} template PropertyChangedEventHandler::PropertyChangedEventHandler(F * handler) : PropertyChangedEventHandler( [=](auto&&... args) { return handler(args...); }) {} template PropertyChangedEventHandler::PropertyChangedEventHandler(O * object, M method) : PropertyChangedEventHandler( [=](auto&&... args) { return ((*object).*(method))(args...); }) {} template PropertyChangedEventHandler::PropertyChangedEventHandler(com_ptr && object, M method) : PropertyChangedEventHandler( [o = std::move(object), method](auto&&... args) { return ((*o).*(method))(args...); }) {} template PropertyChangedEventHandler::PropertyChangedEventHandler( weak_ref && object, LM && lambda_or_method) : PropertyChangedEventHandler( [o = std::move(object), lm = std::forward(lambda_or_method)](auto&&... args) { if (auto s = o.get()) { if constexpr (std::is_member_function_pointer_v) ((*s).*(lm))(args...); else lm(args...); } }) {} template PropertyChangedEventHandler::PropertyChangedEventHandler( std::shared_ptr && object, M method) : PropertyChangedEventHandler( [o = std::move(object), method](auto&&... args) { return ((*o).*(method))(args...); }) {} template PropertyChangedEventHandler::PropertyChangedEventHandler( std::weak_ptr && object, LM && lambda_or_method) : PropertyChangedEventHandler( [o = std::move(object), lm = std::forward(lambda_or_method)](auto&&... args) { if (auto s = o.lock()) { if constexpr (std::is_member_function_pointer_v) ((*s).*(lm))(args...); else lm(args...); } }) {} inline auto PropertyChangedEventHandler::operator()( winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::Data::PropertyChangedEventArgs const& e) const { check_hresult((*(impl::abi_t**)this) ->Invoke(*(void**)(&sender), *(void**)(&e))); } template struct BindingT : implements, impl::require, impl::base { using composable = Binding; protected: BindingT() { impl::call_factory( [&](IBindingFactory const& f) { [[maybe_unused]] auto winrt_impl_discarded = f.CreateInstance(*this, this->m_inner); }); } }; template struct BindingBaseT : implements, impl::require, impl::base { using composable = BindingBase; protected: BindingBaseT() { impl::call_factory( [&](IBindingBaseFactory const& f) { [[maybe_unused]] auto winrt_impl_discarded = f.CreateInstance(*this, this->m_inner); }); } }; template struct CurrentChangingEventArgsT : implements, impl::require< D, winrt::Microsoft::UI::Xaml::Data::ICurrentChangingEventArgs>, impl::base { using composable = CurrentChangingEventArgs; protected: CurrentChangingEventArgsT() { impl::call_factory( [&](ICurrentChangingEventArgsFactory const& f) { [[maybe_unused]] auto winrt_impl_discarded = f.CreateInstance(*this, this->m_inner); }); } CurrentChangingEventArgsT(bool isCancelable) { impl::call_factory( [&](ICurrentChangingEventArgsFactory const& f) { [[maybe_unused]] auto winrt_impl_discarded = f.CreateWithCancelableParameter(isCancelable, *this, this->m_inner); }); } }; template struct ItemIndexRangeT : implements, impl::require, impl::base { using composable = ItemIndexRange; protected: ItemIndexRangeT(int32_t firstIndex, uint32_t length) { impl::call_factory( [&](IItemIndexRangeFactory const& f) { [[maybe_unused]] auto winrt_impl_discarded = f.CreateInstance(firstIndex, length, *this, this->m_inner); }); } }; template struct PropertyChangedEventArgsT : implements, impl::require< D, winrt::Microsoft::UI::Xaml::Data::IPropertyChangedEventArgs>, impl::base { using composable = PropertyChangedEventArgs; protected: PropertyChangedEventArgsT(param::hstring const& name) { impl::call_factory( [&](IPropertyChangedEventArgsFactory const& f) { [[maybe_unused]] auto winrt_impl_discarded = f.CreateInstance(name, *this, this->m_inner); }); } }; template struct RelativeSourceT : implements, impl::require, impl::base { using composable = RelativeSource; protected: RelativeSourceT() { impl::call_factory( [&](IRelativeSourceFactory const& f) { [[maybe_unused]] auto winrt_impl_discarded = f.CreateInstance(*this, this->m_inner); }); } }; } namespace std { #ifndef WINRT_LEAN_AND_MEAN template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash< winrt::Microsoft::UI::Xaml::Data::IDataErrorsChangedEventArgsFactory> : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; #endif #ifdef __cpp_lib_format #endif } // namespace std #endif