// C++/WinRT v2.0.250303.1 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_Data_Xml_Dom_H #define WINRT_Windows_Data_Xml_Dom_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/impl/Windows.Foundation.2.h" #include "winrt/impl/Windows.Foundation.Collections.2.h" #include "winrt/impl/Windows.Storage.2.h" #include "winrt/impl/Windows.Storage.Streams.2.h" #include "winrt/impl/Windows.Data.Xml.Dom.2.h" namespace winrt::impl { template auto consume_Windows_Data_Xml_Dom_IDtdEntity::PublicId() 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_casted_result; check_hresult(_winrt_abi_type->get_PublicId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PublicId(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IDtdEntity::SystemId() 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_casted_result; check_hresult(_winrt_abi_type->get_SystemId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_SystemId(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IDtdEntity::NotationName() 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_casted_result; check_hresult(_winrt_abi_type->get_NotationName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NotationName(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IDtdNotation::PublicId() 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_casted_result; check_hresult(_winrt_abi_type->get_PublicId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PublicId(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IDtdNotation::SystemId() 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_casted_result; check_hresult(_winrt_abi_type->get_SystemId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_SystemId(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlAttribute::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(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_Windows_Data_Xml_Dom_IXmlAttribute::Specified() 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(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_Specified(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Specified(&value)); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlAttribute::Value() 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_casted_result; check_hresult(_winrt_abi_type->get_Value(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Value(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlAttribute::Value(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_casted_result; check_hresult(_winrt_abi_type->put_Value(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Value(*(void**)(&value))); } } template auto consume_Windows_Data_Xml_Dom_IXmlCharacterData::Data() 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_casted_result; check_hresult(_winrt_abi_type->get_Data(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Data(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlCharacterData::Data(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_casted_result; check_hresult(_winrt_abi_type->put_Data(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Data(*(void**)(&value))); } } template auto consume_Windows_Data_Xml_Dom_IXmlCharacterData::Length() const { uint32_t 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_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_Windows_Data_Xml_Dom_IXmlCharacterData::SubstringData(uint32_t offset, uint32_t count) const { void* data{}; 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_casted_result; check_hresult(_winrt_abi_type->SubstringData(offset, count, &data)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SubstringData(offset, count, &data)); } return hstring{ data, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlCharacterData::AppendData(param::hstring const& data) 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_casted_result; check_hresult(_winrt_abi_type->AppendData(*(void**)(&data))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->AppendData(*(void**)(&data))); } } template auto consume_Windows_Data_Xml_Dom_IXmlCharacterData::InsertData(uint32_t offset, param::hstring const& data) 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_casted_result; check_hresult(_winrt_abi_type->InsertData(offset, *(void**)(&data))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->InsertData(offset, *(void**)(&data))); } } template auto consume_Windows_Data_Xml_Dom_IXmlCharacterData::DeleteData(uint32_t offset, uint32_t count) 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_casted_result; check_hresult(_winrt_abi_type->DeleteData(offset, count)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->DeleteData(offset, count)); } } template auto consume_Windows_Data_Xml_Dom_IXmlCharacterData::ReplaceData(uint32_t offset, uint32_t count, param::hstring const& data) 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_casted_result; check_hresult(_winrt_abi_type->ReplaceData(offset, count, *(void**)(&data))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ReplaceData(offset, count, *(void**)(&data))); } } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::Doctype() 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_casted_result; check_hresult(_winrt_abi_type->get_Doctype(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Doctype(&value)); } return winrt::Windows::Data::Xml::Dom::XmlDocumentType{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::Implementation() 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_casted_result; check_hresult(_winrt_abi_type->get_Implementation(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Implementation(&value)); } return winrt::Windows::Data::Xml::Dom::XmlDomImplementation{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::DocumentElement() 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_casted_result; check_hresult(_winrt_abi_type->get_DocumentElement(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DocumentElement(&value)); } return winrt::Windows::Data::Xml::Dom::XmlElement{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateElement(param::hstring const& tagName) const { void* newElement{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateElement(*(void**)(&tagName), &newElement)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateElement(*(void**)(&tagName), &newElement)); } return winrt::Windows::Data::Xml::Dom::XmlElement{ newElement, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateDocumentFragment() const { void* newDocumentFragment{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateDocumentFragment(&newDocumentFragment)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateDocumentFragment(&newDocumentFragment)); } return winrt::Windows::Data::Xml::Dom::XmlDocumentFragment{ newDocumentFragment, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateTextNode(param::hstring const& data) const { void* newTextNode{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateTextNode(*(void**)(&data), &newTextNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateTextNode(*(void**)(&data), &newTextNode)); } return winrt::Windows::Data::Xml::Dom::XmlText{ newTextNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateComment(param::hstring const& data) const { void* newComment{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateComment(*(void**)(&data), &newComment)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateComment(*(void**)(&data), &newComment)); } return winrt::Windows::Data::Xml::Dom::XmlComment{ newComment, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateProcessingInstruction(param::hstring const& target, param::hstring const& data) const { void* newProcessingInstruction{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateProcessingInstruction(*(void**)(&target), *(void**)(&data), &newProcessingInstruction)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateProcessingInstruction(*(void**)(&target), *(void**)(&data), &newProcessingInstruction)); } return winrt::Windows::Data::Xml::Dom::XmlProcessingInstruction{ newProcessingInstruction, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateAttribute(param::hstring const& name) const { void* newAttribute{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateAttribute(*(void**)(&name), &newAttribute)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateAttribute(*(void**)(&name), &newAttribute)); } return winrt::Windows::Data::Xml::Dom::XmlAttribute{ newAttribute, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateEntityReference(param::hstring const& name) const { void* newEntityReference{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateEntityReference(*(void**)(&name), &newEntityReference)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateEntityReference(*(void**)(&name), &newEntityReference)); } return winrt::Windows::Data::Xml::Dom::XmlEntityReference{ newEntityReference, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::GetElementsByTagName(param::hstring const& tagName) const { void* elements{}; 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_casted_result; check_hresult(_winrt_abi_type->GetElementsByTagName(*(void**)(&tagName), &elements)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetElementsByTagName(*(void**)(&tagName), &elements)); } return winrt::Windows::Data::Xml::Dom::XmlNodeList{ elements, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateCDataSection(param::hstring const& data) const { void* newCDataSection{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateCDataSection(*(void**)(&data), &newCDataSection)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateCDataSection(*(void**)(&data), &newCDataSection)); } return winrt::Windows::Data::Xml::Dom::XmlCDataSection{ newCDataSection, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::DocumentUri() 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_casted_result; check_hresult(_winrt_abi_type->get_DocumentUri(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DocumentUri(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateAttributeNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& qualifiedName) const { void* newAttribute{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateAttributeNS(*(void**)(&namespaceUri), *(void**)(&qualifiedName), &newAttribute)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateAttributeNS(*(void**)(&namespaceUri), *(void**)(&qualifiedName), &newAttribute)); } return winrt::Windows::Data::Xml::Dom::XmlAttribute{ newAttribute, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::CreateElementNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& qualifiedName) const { void* newElement{}; 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_casted_result; check_hresult(_winrt_abi_type->CreateElementNS(*(void**)(&namespaceUri), *(void**)(&qualifiedName), &newElement)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateElementNS(*(void**)(&namespaceUri), *(void**)(&qualifiedName), &newElement)); } return winrt::Windows::Data::Xml::Dom::XmlElement{ newElement, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::GetElementById(param::hstring const& elementId) const { void* element{}; 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_casted_result; check_hresult(_winrt_abi_type->GetElementById(*(void**)(&elementId), &element)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetElementById(*(void**)(&elementId), &element)); } return winrt::Windows::Data::Xml::Dom::XmlElement{ element, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocument::ImportNode(winrt::Windows::Data::Xml::Dom::IXmlNode const& node, bool deep) const { void* newNode{}; 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_casted_result; check_hresult(_winrt_abi_type->ImportNode(*(void**)(&node), deep, &newNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ImportNode(*(void**)(&node), deep, &newNode)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ newNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentIO::LoadXml(param::hstring const& xml) 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_casted_result; check_hresult(_winrt_abi_type->LoadXml(*(void**)(&xml))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadXml(*(void**)(&xml))); } } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentIO::LoadXml(param::hstring const& xml, winrt::Windows::Data::Xml::Dom::XmlLoadSettings const& loadSettings) 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_casted_result; check_hresult(_winrt_abi_type->LoadXmlWithSettings(*(void**)(&xml), *(void**)(&loadSettings))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadXmlWithSettings(*(void**)(&xml), *(void**)(&loadSettings))); } } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentIO::SaveToFileAsync(winrt::Windows::Storage::IStorageFile const& file) const { void* asyncInfo{}; 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_casted_result; check_hresult(_winrt_abi_type->SaveToFileAsync(*(void**)(&file), &asyncInfo)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SaveToFileAsync(*(void**)(&file), &asyncInfo)); } return winrt::Windows::Foundation::IAsyncAction{ asyncInfo, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentIO2::LoadXmlFromBuffer(winrt::Windows::Storage::Streams::IBuffer const& buffer) 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_casted_result; check_hresult(_winrt_abi_type->LoadXmlFromBuffer(*(void**)(&buffer))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadXmlFromBuffer(*(void**)(&buffer))); } } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentIO2::LoadXmlFromBuffer(winrt::Windows::Storage::Streams::IBuffer const& buffer, winrt::Windows::Data::Xml::Dom::XmlLoadSettings const& loadSettings) 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_casted_result; check_hresult(_winrt_abi_type->LoadXmlFromBufferWithSettings(*(void**)(&buffer), *(void**)(&loadSettings))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadXmlFromBufferWithSettings(*(void**)(&buffer), *(void**)(&loadSettings))); } } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentStatics::LoadFromUriAsync(winrt::Windows::Foundation::Uri const& uri) const { void* asyncInfo{}; 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_casted_result; check_hresult(_winrt_abi_type->LoadFromUriAsync(*(void**)(&uri), &asyncInfo)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadFromUriAsync(*(void**)(&uri), &asyncInfo)); } return winrt::Windows::Foundation::IAsyncOperation{ asyncInfo, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentStatics::LoadFromUriAsync(winrt::Windows::Foundation::Uri const& uri, winrt::Windows::Data::Xml::Dom::XmlLoadSettings const& loadSettings) const { void* asyncInfo{}; 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_casted_result; check_hresult(_winrt_abi_type->LoadFromUriWithSettingsAsync(*(void**)(&uri), *(void**)(&loadSettings), &asyncInfo)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadFromUriWithSettingsAsync(*(void**)(&uri), *(void**)(&loadSettings), &asyncInfo)); } return winrt::Windows::Foundation::IAsyncOperation{ asyncInfo, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentStatics::LoadFromFileAsync(winrt::Windows::Storage::IStorageFile const& file) const { void* asyncInfo{}; 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_casted_result; check_hresult(_winrt_abi_type->LoadFromFileAsync(*(void**)(&file), &asyncInfo)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadFromFileAsync(*(void**)(&file), &asyncInfo)); } return winrt::Windows::Foundation::IAsyncOperation{ asyncInfo, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentStatics::LoadFromFileAsync(winrt::Windows::Storage::IStorageFile const& file, winrt::Windows::Data::Xml::Dom::XmlLoadSettings const& loadSettings) const { void* asyncInfo{}; 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_casted_result; check_hresult(_winrt_abi_type->LoadFromFileWithSettingsAsync(*(void**)(&file), *(void**)(&loadSettings), &asyncInfo)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadFromFileWithSettingsAsync(*(void**)(&file), *(void**)(&loadSettings), &asyncInfo)); } return winrt::Windows::Foundation::IAsyncOperation{ asyncInfo, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentType::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(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_Windows_Data_Xml_Dom_IXmlDocumentType::Entities() 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_casted_result; check_hresult(_winrt_abi_type->get_Entities(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Entities(&value)); } return winrt::Windows::Data::Xml::Dom::XmlNamedNodeMap{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDocumentType::Notations() 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_casted_result; check_hresult(_winrt_abi_type->get_Notations(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Notations(&value)); } return winrt::Windows::Data::Xml::Dom::XmlNamedNodeMap{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlDomImplementation::HasFeature(param::hstring const& feature, winrt::Windows::Foundation::IInspectable const& version) const { bool featureSupported{}; 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_casted_result; check_hresult(_winrt_abi_type->HasFeature(*(void**)(&feature), *(void**)(&version), &featureSupported)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->HasFeature(*(void**)(&feature), *(void**)(&version), &featureSupported)); } return featureSupported; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::TagName() 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_casted_result; check_hresult(_winrt_abi_type->get_TagName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TagName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::GetAttribute(param::hstring const& attributeName) const { void* attributeValue{}; 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_casted_result; check_hresult(_winrt_abi_type->GetAttribute(*(void**)(&attributeName), &attributeValue)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetAttribute(*(void**)(&attributeName), &attributeValue)); } return hstring{ attributeValue, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::SetAttribute(param::hstring const& attributeName, param::hstring const& attributeValue) 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_casted_result; check_hresult(_winrt_abi_type->SetAttribute(*(void**)(&attributeName), *(void**)(&attributeValue))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetAttribute(*(void**)(&attributeName), *(void**)(&attributeValue))); } } template auto consume_Windows_Data_Xml_Dom_IXmlElement::RemoveAttribute(param::hstring const& attributeName) 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_casted_result; check_hresult(_winrt_abi_type->RemoveAttribute(*(void**)(&attributeName))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RemoveAttribute(*(void**)(&attributeName))); } } template auto consume_Windows_Data_Xml_Dom_IXmlElement::GetAttributeNode(param::hstring const& attributeName) const { void* attributeNode{}; 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_casted_result; check_hresult(_winrt_abi_type->GetAttributeNode(*(void**)(&attributeName), &attributeNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetAttributeNode(*(void**)(&attributeName), &attributeNode)); } return winrt::Windows::Data::Xml::Dom::XmlAttribute{ attributeNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::SetAttributeNode(winrt::Windows::Data::Xml::Dom::XmlAttribute const& newAttribute) const { void* previousAttribute{}; 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_casted_result; check_hresult(_winrt_abi_type->SetAttributeNode(*(void**)(&newAttribute), &previousAttribute)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetAttributeNode(*(void**)(&newAttribute), &previousAttribute)); } return winrt::Windows::Data::Xml::Dom::XmlAttribute{ previousAttribute, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::RemoveAttributeNode(winrt::Windows::Data::Xml::Dom::XmlAttribute const& attributeNode) const { void* removedAttribute{}; 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_casted_result; check_hresult(_winrt_abi_type->RemoveAttributeNode(*(void**)(&attributeNode), &removedAttribute)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RemoveAttributeNode(*(void**)(&attributeNode), &removedAttribute)); } return winrt::Windows::Data::Xml::Dom::XmlAttribute{ removedAttribute, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::GetElementsByTagName(param::hstring const& tagName) const { void* elements{}; 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_casted_result; check_hresult(_winrt_abi_type->GetElementsByTagName(*(void**)(&tagName), &elements)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetElementsByTagName(*(void**)(&tagName), &elements)); } return winrt::Windows::Data::Xml::Dom::XmlNodeList{ elements, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::SetAttributeNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& qualifiedName, 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_casted_result; check_hresult(_winrt_abi_type->SetAttributeNS(*(void**)(&namespaceUri), *(void**)(&qualifiedName), *(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetAttributeNS(*(void**)(&namespaceUri), *(void**)(&qualifiedName), *(void**)(&value))); } } template auto consume_Windows_Data_Xml_Dom_IXmlElement::GetAttributeNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& localName) 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_casted_result; check_hresult(_winrt_abi_type->GetAttributeNS(*(void**)(&namespaceUri), *(void**)(&localName), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetAttributeNS(*(void**)(&namespaceUri), *(void**)(&localName), &value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::RemoveAttributeNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& localName) 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_casted_result; check_hresult(_winrt_abi_type->RemoveAttributeNS(*(void**)(&namespaceUri), *(void**)(&localName))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RemoveAttributeNS(*(void**)(&namespaceUri), *(void**)(&localName))); } } template auto consume_Windows_Data_Xml_Dom_IXmlElement::SetAttributeNodeNS(winrt::Windows::Data::Xml::Dom::XmlAttribute const& newAttribute) const { void* previousAttribute{}; 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_casted_result; check_hresult(_winrt_abi_type->SetAttributeNodeNS(*(void**)(&newAttribute), &previousAttribute)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetAttributeNodeNS(*(void**)(&newAttribute), &previousAttribute)); } return winrt::Windows::Data::Xml::Dom::XmlAttribute{ previousAttribute, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlElement::GetAttributeNodeNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& localName) const { void* previousAttribute{}; 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_casted_result; check_hresult(_winrt_abi_type->GetAttributeNodeNS(*(void**)(&namespaceUri), *(void**)(&localName), &previousAttribute)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetAttributeNodeNS(*(void**)(&namespaceUri), *(void**)(&localName), &previousAttribute)); } return winrt::Windows::Data::Xml::Dom::XmlAttribute{ previousAttribute, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::MaxElementDepth() const { uint32_t 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_casted_result; check_hresult(_winrt_abi_type->get_MaxElementDepth(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MaxElementDepth(&value)); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::MaxElementDepth(uint32_t 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_casted_result; check_hresult(_winrt_abi_type->put_MaxElementDepth(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_MaxElementDepth(value)); } } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ProhibitDtd() 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(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_ProhibitDtd(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ProhibitDtd(&value)); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ProhibitDtd(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(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_ProhibitDtd(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ProhibitDtd(value)); } } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ResolveExternals() 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(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_ResolveExternals(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ResolveExternals(&value)); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ResolveExternals(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(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_ResolveExternals(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ResolveExternals(value)); } } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ValidateOnParse() 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(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_ValidateOnParse(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ValidateOnParse(&value)); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ValidateOnParse(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(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_ValidateOnParse(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ValidateOnParse(value)); } } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ElementContentWhiteSpace() 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(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_ElementContentWhiteSpace(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ElementContentWhiteSpace(&value)); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlLoadSettings::ElementContentWhiteSpace(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(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_ElementContentWhiteSpace(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ElementContentWhiteSpace(value)); } } template auto consume_Windows_Data_Xml_Dom_IXmlNamedNodeMap::Length() const { uint32_t 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_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_Windows_Data_Xml_Dom_IXmlNamedNodeMap::Item(uint32_t index) const { void* node{}; 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_casted_result; check_hresult(_winrt_abi_type->Item(index, &node)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Item(index, &node)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ node, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNamedNodeMap::GetNamedItem(param::hstring const& name) const { void* node{}; 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_casted_result; check_hresult(_winrt_abi_type->GetNamedItem(*(void**)(&name), &node)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetNamedItem(*(void**)(&name), &node)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ node, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNamedNodeMap::SetNamedItem(winrt::Windows::Data::Xml::Dom::IXmlNode const& node) const { void* previousNode{}; 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_casted_result; check_hresult(_winrt_abi_type->SetNamedItem(*(void**)(&node), &previousNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetNamedItem(*(void**)(&node), &previousNode)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ previousNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNamedNodeMap::RemoveNamedItem(param::hstring const& name) const { void* previousNode{}; 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_casted_result; check_hresult(_winrt_abi_type->RemoveNamedItem(*(void**)(&name), &previousNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RemoveNamedItem(*(void**)(&name), &previousNode)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ previousNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNamedNodeMap::GetNamedItemNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& name) const { void* node{}; 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_casted_result; check_hresult(_winrt_abi_type->GetNamedItemNS(*(void**)(&namespaceUri), *(void**)(&name), &node)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetNamedItemNS(*(void**)(&namespaceUri), *(void**)(&name), &node)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ node, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNamedNodeMap::RemoveNamedItemNS(winrt::Windows::Foundation::IInspectable const& namespaceUri, param::hstring const& name) const { void* previousNode{}; 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_casted_result; check_hresult(_winrt_abi_type->RemoveNamedItemNS(*(void**)(&namespaceUri), *(void**)(&name), &previousNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RemoveNamedItemNS(*(void**)(&namespaceUri), *(void**)(&name), &previousNode)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ previousNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNamedNodeMap::SetNamedItemNS(winrt::Windows::Data::Xml::Dom::IXmlNode const& node) const { void* previousNode{}; 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_casted_result; check_hresult(_winrt_abi_type->SetNamedItemNS(*(void**)(&node), &previousNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetNamedItemNS(*(void**)(&node), &previousNode)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ previousNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::NodeValue() 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_casted_result; check_hresult(_winrt_abi_type->get_NodeValue(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NodeValue(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::NodeValue(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_casted_result; check_hresult(_winrt_abi_type->put_NodeValue(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_NodeValue(*(void**)(&value))); } } template auto consume_Windows_Data_Xml_Dom_IXmlNode::NodeType() const { winrt::Windows::Data::Xml::Dom::NodeType 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_casted_result; check_hresult(_winrt_abi_type->get_NodeType(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NodeType(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::NodeName() 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_casted_result; check_hresult(_winrt_abi_type->get_NodeName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NodeName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::ParentNode() 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_casted_result; check_hresult(_winrt_abi_type->get_ParentNode(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ParentNode(&value)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::ChildNodes() 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_casted_result; check_hresult(_winrt_abi_type->get_ChildNodes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ChildNodes(&value)); } return winrt::Windows::Data::Xml::Dom::XmlNodeList{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::FirstChild() 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_casted_result; check_hresult(_winrt_abi_type->get_FirstChild(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FirstChild(&value)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::LastChild() 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_casted_result; check_hresult(_winrt_abi_type->get_LastChild(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LastChild(&value)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::PreviousSibling() 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_casted_result; check_hresult(_winrt_abi_type->get_PreviousSibling(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PreviousSibling(&value)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::NextSibling() 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_casted_result; check_hresult(_winrt_abi_type->get_NextSibling(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NextSibling(&value)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::Attributes() 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_casted_result; check_hresult(_winrt_abi_type->get_Attributes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Attributes(&value)); } return winrt::Windows::Data::Xml::Dom::XmlNamedNodeMap{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::HasChildNodes() 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(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->HasChildNodes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->HasChildNodes(&value)); } return value; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::OwnerDocument() 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_casted_result; check_hresult(_winrt_abi_type->get_OwnerDocument(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_OwnerDocument(&value)); } return winrt::Windows::Data::Xml::Dom::XmlDocument{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::InsertBefore(winrt::Windows::Data::Xml::Dom::IXmlNode const& newChild, winrt::Windows::Data::Xml::Dom::IXmlNode const& referenceChild) const { void* insertedChild{}; 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_casted_result; check_hresult(_winrt_abi_type->InsertBefore(*(void**)(&newChild), *(void**)(&referenceChild), &insertedChild)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->InsertBefore(*(void**)(&newChild), *(void**)(&referenceChild), &insertedChild)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ insertedChild, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::ReplaceChild(winrt::Windows::Data::Xml::Dom::IXmlNode const& newChild, winrt::Windows::Data::Xml::Dom::IXmlNode const& referenceChild) const { void* previousChild{}; 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_casted_result; check_hresult(_winrt_abi_type->ReplaceChild(*(void**)(&newChild), *(void**)(&referenceChild), &previousChild)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ReplaceChild(*(void**)(&newChild), *(void**)(&referenceChild), &previousChild)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ previousChild, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::RemoveChild(winrt::Windows::Data::Xml::Dom::IXmlNode const& childNode) const { void* removedChild{}; 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_casted_result; check_hresult(_winrt_abi_type->RemoveChild(*(void**)(&childNode), &removedChild)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RemoveChild(*(void**)(&childNode), &removedChild)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ removedChild, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::AppendChild(winrt::Windows::Data::Xml::Dom::IXmlNode const& newChild) const { void* appendedChild{}; 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_casted_result; check_hresult(_winrt_abi_type->AppendChild(*(void**)(&newChild), &appendedChild)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->AppendChild(*(void**)(&newChild), &appendedChild)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ appendedChild, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::CloneNode(bool deep) const { void* newNode{}; 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_casted_result; check_hresult(_winrt_abi_type->CloneNode(deep, &newNode)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CloneNode(deep, &newNode)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ newNode, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::NamespaceUri() 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_casted_result; check_hresult(_winrt_abi_type->get_NamespaceUri(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NamespaceUri(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::LocalName() 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_casted_result; check_hresult(_winrt_abi_type->get_LocalName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LocalName(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::Prefix() 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_casted_result; check_hresult(_winrt_abi_type->get_Prefix(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Prefix(&value)); } return winrt::Windows::Foundation::IInspectable{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNode::Normalize() 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_casted_result; check_hresult(_winrt_abi_type->Normalize()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Normalize()); } } template auto consume_Windows_Data_Xml_Dom_IXmlNode::Prefix(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_casted_result; check_hresult(_winrt_abi_type->put_Prefix(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Prefix(*(void**)(&value))); } } template auto consume_Windows_Data_Xml_Dom_IXmlNodeList::Length() const { uint32_t 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_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_Windows_Data_Xml_Dom_IXmlNodeList::Item(uint32_t index) const { void* node{}; 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_casted_result; check_hresult(_winrt_abi_type->Item(index, &node)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Item(index, &node)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ node, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNodeSelector::SelectSingleNode(param::hstring const& xpath) const { void* node{}; 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_casted_result; check_hresult(_winrt_abi_type->SelectSingleNode(*(void**)(&xpath), &node)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SelectSingleNode(*(void**)(&xpath), &node)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ node, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNodeSelector::SelectNodes(param::hstring const& xpath) const { void* nodelist{}; 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_casted_result; check_hresult(_winrt_abi_type->SelectNodes(*(void**)(&xpath), &nodelist)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SelectNodes(*(void**)(&xpath), &nodelist)); } return winrt::Windows::Data::Xml::Dom::XmlNodeList{ nodelist, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNodeSelector::SelectSingleNodeNS(param::hstring const& xpath, winrt::Windows::Foundation::IInspectable const& namespaces) const { void* node{}; 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_casted_result; check_hresult(_winrt_abi_type->SelectSingleNodeNS(*(void**)(&xpath), *(void**)(&namespaces), &node)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SelectSingleNodeNS(*(void**)(&xpath), *(void**)(&namespaces), &node)); } return winrt::Windows::Data::Xml::Dom::IXmlNode{ node, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNodeSelector::SelectNodesNS(param::hstring const& xpath, winrt::Windows::Foundation::IInspectable const& namespaces) const { void* nodelist{}; 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_casted_result; check_hresult(_winrt_abi_type->SelectNodesNS(*(void**)(&xpath), *(void**)(&namespaces), &nodelist)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SelectNodesNS(*(void**)(&xpath), *(void**)(&namespaces), &nodelist)); } return winrt::Windows::Data::Xml::Dom::XmlNodeList{ nodelist, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNodeSerializer::GetXml() const { void* outerXml{}; 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_casted_result; check_hresult(_winrt_abi_type->GetXml(&outerXml)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetXml(&outerXml)); } return hstring{ outerXml, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNodeSerializer::InnerText() 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_casted_result; check_hresult(_winrt_abi_type->get_InnerText(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InnerText(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlNodeSerializer::InnerText(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_casted_result; check_hresult(_winrt_abi_type->put_InnerText(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_InnerText(*(void**)(&value))); } } template auto consume_Windows_Data_Xml_Dom_IXmlProcessingInstruction::Target() 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_casted_result; check_hresult(_winrt_abi_type->get_Target(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Target(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlProcessingInstruction::Data() 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_casted_result; check_hresult(_winrt_abi_type->get_Data(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Data(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Data_Xml_Dom_IXmlProcessingInstruction::Data(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_casted_result; check_hresult(_winrt_abi_type->put_Data(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Data(*(void**)(&value))); } } template auto consume_Windows_Data_Xml_Dom_IXmlText::SplitText(uint32_t offset) const { void* secondPart{}; 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_casted_result; check_hresult(_winrt_abi_type->SplitText(offset, &secondPart)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SplitText(offset, &secondPart)); } return winrt::Windows::Data::Xml::Dom::IXmlText{ secondPart, take_ownership_from_abi }; } #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_PublicId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PublicId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_SystemId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().SystemId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NotationName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NotationName()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_PublicId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PublicId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_SystemId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().SystemId()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { 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 get_Specified(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Specified()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Value(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Value()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Value(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Value(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { }; #endif template struct produce : produce_base { int32_t __stdcall get_Data(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Data()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Data(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Data(*reinterpret_cast(&value)); 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 SubstringData(uint32_t offset, uint32_t count, void** data) noexcept final try { clear_abi(data); typename D::abi_guard guard(this->shim()); *data = detach_from(this->shim().SubstringData(offset, count)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall AppendData(void* data) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AppendData(*reinterpret_cast(&data)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall InsertData(uint32_t offset, void* data) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().InsertData(offset, *reinterpret_cast(&data)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall DeleteData(uint32_t offset, uint32_t count) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().DeleteData(offset, count); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ReplaceData(uint32_t offset, uint32_t count, void* data) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ReplaceData(offset, count, *reinterpret_cast(&data)); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Doctype(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Doctype()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Implementation(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Implementation()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DocumentElement(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DocumentElement()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateElement(void* tagName, void** newElement) noexcept final try { clear_abi(newElement); typename D::abi_guard guard(this->shim()); *newElement = detach_from(this->shim().CreateElement(*reinterpret_cast(&tagName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateDocumentFragment(void** newDocumentFragment) noexcept final try { clear_abi(newDocumentFragment); typename D::abi_guard guard(this->shim()); *newDocumentFragment = detach_from(this->shim().CreateDocumentFragment()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateTextNode(void* data, void** newTextNode) noexcept final try { clear_abi(newTextNode); typename D::abi_guard guard(this->shim()); *newTextNode = detach_from(this->shim().CreateTextNode(*reinterpret_cast(&data))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateComment(void* data, void** newComment) noexcept final try { clear_abi(newComment); typename D::abi_guard guard(this->shim()); *newComment = detach_from(this->shim().CreateComment(*reinterpret_cast(&data))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateProcessingInstruction(void* target, void* data, void** newProcessingInstruction) noexcept final try { clear_abi(newProcessingInstruction); typename D::abi_guard guard(this->shim()); *newProcessingInstruction = detach_from(this->shim().CreateProcessingInstruction(*reinterpret_cast(&target), *reinterpret_cast(&data))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateAttribute(void* name, void** newAttribute) noexcept final try { clear_abi(newAttribute); typename D::abi_guard guard(this->shim()); *newAttribute = detach_from(this->shim().CreateAttribute(*reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateEntityReference(void* name, void** newEntityReference) noexcept final try { clear_abi(newEntityReference); typename D::abi_guard guard(this->shim()); *newEntityReference = detach_from(this->shim().CreateEntityReference(*reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetElementsByTagName(void* tagName, void** elements) noexcept final try { clear_abi(elements); typename D::abi_guard guard(this->shim()); *elements = detach_from(this->shim().GetElementsByTagName(*reinterpret_cast(&tagName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateCDataSection(void* data, void** newCDataSection) noexcept final try { clear_abi(newCDataSection); typename D::abi_guard guard(this->shim()); *newCDataSection = detach_from(this->shim().CreateCDataSection(*reinterpret_cast(&data))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DocumentUri(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DocumentUri()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateAttributeNS(void* namespaceUri, void* qualifiedName, void** newAttribute) noexcept final try { clear_abi(newAttribute); typename D::abi_guard guard(this->shim()); *newAttribute = detach_from(this->shim().CreateAttributeNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&qualifiedName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateElementNS(void* namespaceUri, void* qualifiedName, void** newElement) noexcept final try { clear_abi(newElement); typename D::abi_guard guard(this->shim()); *newElement = detach_from(this->shim().CreateElementNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&qualifiedName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetElementById(void* elementId, void** element) noexcept final try { clear_abi(element); typename D::abi_guard guard(this->shim()); *element = detach_from(this->shim().GetElementById(*reinterpret_cast(&elementId))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ImportNode(void* node, bool deep, void** newNode) noexcept final try { clear_abi(newNode); typename D::abi_guard guard(this->shim()); *newNode = detach_from(this->shim().ImportNode(*reinterpret_cast(&node), deep)); 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 LoadXml(void* xml) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().LoadXml(*reinterpret_cast(&xml)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall LoadXmlWithSettings(void* xml, void* loadSettings) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().LoadXml(*reinterpret_cast(&xml), *reinterpret_cast(&loadSettings)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SaveToFileAsync(void* file, void** asyncInfo) noexcept final try { clear_abi(asyncInfo); typename D::abi_guard guard(this->shim()); *asyncInfo = detach_from(this->shim().SaveToFileAsync(*reinterpret_cast(&file))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall LoadXmlFromBuffer(void* buffer) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().LoadXmlFromBuffer(*reinterpret_cast(&buffer)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall LoadXmlFromBufferWithSettings(void* buffer, void* loadSettings) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().LoadXmlFromBuffer(*reinterpret_cast(&buffer), *reinterpret_cast(&loadSettings)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall LoadFromUriAsync(void* uri, void** asyncInfo) noexcept final try { clear_abi(asyncInfo); typename D::abi_guard guard(this->shim()); *asyncInfo = detach_from>(this->shim().LoadFromUriAsync(*reinterpret_cast(&uri))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall LoadFromUriWithSettingsAsync(void* uri, void* loadSettings, void** asyncInfo) noexcept final try { clear_abi(asyncInfo); typename D::abi_guard guard(this->shim()); *asyncInfo = detach_from>(this->shim().LoadFromUriAsync(*reinterpret_cast(&uri), *reinterpret_cast(&loadSettings))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall LoadFromFileAsync(void* file, void** asyncInfo) noexcept final try { clear_abi(asyncInfo); typename D::abi_guard guard(this->shim()); *asyncInfo = detach_from>(this->shim().LoadFromFileAsync(*reinterpret_cast(&file))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall LoadFromFileWithSettingsAsync(void* file, void* loadSettings, void** asyncInfo) noexcept final try { clear_abi(asyncInfo); typename D::abi_guard guard(this->shim()); *asyncInfo = detach_from>(this->shim().LoadFromFileAsync(*reinterpret_cast(&file), *reinterpret_cast(&loadSettings))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { 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 get_Entities(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Entities()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Notations(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Notations()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall HasFeature(void* feature, void* version, bool* featureSupported) noexcept final try { typename D::abi_guard guard(this->shim()); *featureSupported = detach_from(this->shim().HasFeature(*reinterpret_cast(&feature), *reinterpret_cast(&version))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_TagName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TagName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetAttribute(void* attributeName, void** attributeValue) noexcept final try { clear_abi(attributeValue); typename D::abi_guard guard(this->shim()); *attributeValue = detach_from(this->shim().GetAttribute(*reinterpret_cast(&attributeName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetAttribute(void* attributeName, void* attributeValue) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetAttribute(*reinterpret_cast(&attributeName), *reinterpret_cast(&attributeValue)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RemoveAttribute(void* attributeName) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RemoveAttribute(*reinterpret_cast(&attributeName)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetAttributeNode(void* attributeName, void** attributeNode) noexcept final try { clear_abi(attributeNode); typename D::abi_guard guard(this->shim()); *attributeNode = detach_from(this->shim().GetAttributeNode(*reinterpret_cast(&attributeName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetAttributeNode(void* newAttribute, void** previousAttribute) noexcept final try { clear_abi(previousAttribute); typename D::abi_guard guard(this->shim()); *previousAttribute = detach_from(this->shim().SetAttributeNode(*reinterpret_cast(&newAttribute))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RemoveAttributeNode(void* attributeNode, void** removedAttribute) noexcept final try { clear_abi(removedAttribute); typename D::abi_guard guard(this->shim()); *removedAttribute = detach_from(this->shim().RemoveAttributeNode(*reinterpret_cast(&attributeNode))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetElementsByTagName(void* tagName, void** elements) noexcept final try { clear_abi(elements); typename D::abi_guard guard(this->shim()); *elements = detach_from(this->shim().GetElementsByTagName(*reinterpret_cast(&tagName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetAttributeNS(void* namespaceUri, void* qualifiedName, void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetAttributeNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&qualifiedName), *reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetAttributeNS(void* namespaceUri, void* localName, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().GetAttributeNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&localName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RemoveAttributeNS(void* namespaceUri, void* localName) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RemoveAttributeNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&localName)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetAttributeNodeNS(void* newAttribute, void** previousAttribute) noexcept final try { clear_abi(previousAttribute); typename D::abi_guard guard(this->shim()); *previousAttribute = detach_from(this->shim().SetAttributeNodeNS(*reinterpret_cast(&newAttribute))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetAttributeNodeNS(void* namespaceUri, void* localName, void** previousAttribute) noexcept final try { clear_abi(previousAttribute); typename D::abi_guard guard(this->shim()); *previousAttribute = detach_from(this->shim().GetAttributeNodeNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&localName))); 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 get_MaxElementDepth(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MaxElementDepth()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_MaxElementDepth(uint32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().MaxElementDepth(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ProhibitDtd(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ProhibitDtd()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ProhibitDtd(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ProhibitDtd(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ResolveExternals(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ResolveExternals()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ResolveExternals(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ResolveExternals(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ValidateOnParse(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ValidateOnParse()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ValidateOnParse(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ValidateOnParse(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ElementContentWhiteSpace(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ElementContentWhiteSpace()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ElementContentWhiteSpace(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ElementContentWhiteSpace(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { 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 Item(uint32_t index, void** node) noexcept final try { clear_abi(node); typename D::abi_guard guard(this->shim()); *node = detach_from(this->shim().Item(index)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetNamedItem(void* name, void** node) noexcept final try { clear_abi(node); typename D::abi_guard guard(this->shim()); *node = detach_from(this->shim().GetNamedItem(*reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetNamedItem(void* node, void** previousNode) noexcept final try { clear_abi(previousNode); typename D::abi_guard guard(this->shim()); *previousNode = detach_from(this->shim().SetNamedItem(*reinterpret_cast(&node))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RemoveNamedItem(void* name, void** previousNode) noexcept final try { clear_abi(previousNode); typename D::abi_guard guard(this->shim()); *previousNode = detach_from(this->shim().RemoveNamedItem(*reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetNamedItemNS(void* namespaceUri, void* name, void** node) noexcept final try { clear_abi(node); typename D::abi_guard guard(this->shim()); *node = detach_from(this->shim().GetNamedItemNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RemoveNamedItemNS(void* namespaceUri, void* name, void** previousNode) noexcept final try { clear_abi(previousNode); typename D::abi_guard guard(this->shim()); *previousNode = detach_from(this->shim().RemoveNamedItemNS(*reinterpret_cast(&namespaceUri), *reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetNamedItemNS(void* node, void** previousNode) noexcept final try { clear_abi(previousNode); typename D::abi_guard guard(this->shim()); *previousNode = detach_from(this->shim().SetNamedItemNS(*reinterpret_cast(&node))); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall get_NodeValue(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NodeValue()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_NodeValue(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().NodeValue(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NodeType(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NodeType()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NodeName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NodeName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ParentNode(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ParentNode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ChildNodes(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ChildNodes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_FirstChild(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FirstChild()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_LastChild(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().LastChild()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PreviousSibling(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PreviousSibling()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NextSibling(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NextSibling()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Attributes(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Attributes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall HasChildNodes(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().HasChildNodes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_OwnerDocument(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().OwnerDocument()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall InsertBefore(void* newChild, void* referenceChild, void** insertedChild) noexcept final try { clear_abi(insertedChild); typename D::abi_guard guard(this->shim()); *insertedChild = detach_from(this->shim().InsertBefore(*reinterpret_cast(&newChild), *reinterpret_cast(&referenceChild))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ReplaceChild(void* newChild, void* referenceChild, void** previousChild) noexcept final try { clear_abi(previousChild); typename D::abi_guard guard(this->shim()); *previousChild = detach_from(this->shim().ReplaceChild(*reinterpret_cast(&newChild), *reinterpret_cast(&referenceChild))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RemoveChild(void* childNode, void** removedChild) noexcept final try { clear_abi(removedChild); typename D::abi_guard guard(this->shim()); *removedChild = detach_from(this->shim().RemoveChild(*reinterpret_cast(&childNode))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall AppendChild(void* newChild, void** appendedChild) noexcept final try { clear_abi(appendedChild); typename D::abi_guard guard(this->shim()); *appendedChild = detach_from(this->shim().AppendChild(*reinterpret_cast(&newChild))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CloneNode(bool deep, void** newNode) noexcept final try { clear_abi(newNode); typename D::abi_guard guard(this->shim()); *newNode = detach_from(this->shim().CloneNode(deep)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NamespaceUri(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NamespaceUri()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_LocalName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().LocalName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Prefix(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Prefix()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Normalize() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Normalize(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Prefix(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Prefix(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { 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 Item(uint32_t index, void** node) noexcept final try { clear_abi(node); typename D::abi_guard guard(this->shim()); *node = detach_from(this->shim().Item(index)); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall SelectSingleNode(void* xpath, void** node) noexcept final try { clear_abi(node); typename D::abi_guard guard(this->shim()); *node = detach_from(this->shim().SelectSingleNode(*reinterpret_cast(&xpath))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SelectNodes(void* xpath, void** nodelist) noexcept final try { clear_abi(nodelist); typename D::abi_guard guard(this->shim()); *nodelist = detach_from(this->shim().SelectNodes(*reinterpret_cast(&xpath))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SelectSingleNodeNS(void* xpath, void* namespaces, void** node) noexcept final try { clear_abi(node); typename D::abi_guard guard(this->shim()); *node = detach_from(this->shim().SelectSingleNodeNS(*reinterpret_cast(&xpath), *reinterpret_cast(&namespaces))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SelectNodesNS(void* xpath, void* namespaces, void** nodelist) noexcept final try { clear_abi(nodelist); typename D::abi_guard guard(this->shim()); *nodelist = detach_from(this->shim().SelectNodesNS(*reinterpret_cast(&xpath), *reinterpret_cast(&namespaces))); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall GetXml(void** outerXml) noexcept final try { clear_abi(outerXml); typename D::abi_guard guard(this->shim()); *outerXml = detach_from(this->shim().GetXml()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InnerText(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InnerText()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_InnerText(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().InnerText(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Target(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Target()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Data(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Data()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Data(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Data(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall SplitText(uint32_t offset, void** secondPart) noexcept final try { clear_abi(secondPart); typename D::abi_guard guard(this->shim()); *secondPart = detach_from(this->shim().SplitText(offset)); return 0; } catch (...) { return to_hresult(); } }; } WINRT_EXPORT namespace winrt::Windows::Data::Xml::Dom { inline XmlDocument::XmlDocument() : XmlDocument(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline auto XmlDocument::LoadFromUriAsync(winrt::Windows::Foundation::Uri const& uri) { return impl::call_factory([&](IXmlDocumentStatics const& f) { return f.LoadFromUriAsync(uri); }); } inline auto XmlDocument::LoadFromUriAsync(winrt::Windows::Foundation::Uri const& uri, winrt::Windows::Data::Xml::Dom::XmlLoadSettings const& loadSettings) { return impl::call_factory([&](IXmlDocumentStatics const& f) { return f.LoadFromUriAsync(uri, loadSettings); }); } inline auto XmlDocument::LoadFromFileAsync(winrt::Windows::Storage::IStorageFile const& file) { return impl::call_factory([&](IXmlDocumentStatics const& f) { return f.LoadFromFileAsync(file); }); } inline auto XmlDocument::LoadFromFileAsync(winrt::Windows::Storage::IStorageFile const& file, winrt::Windows::Data::Xml::Dom::XmlLoadSettings const& loadSettings) { return impl::call_factory([&](IXmlDocumentStatics const& f) { return f.LoadFromFileAsync(file, loadSettings); }); } inline XmlLoadSettings::XmlLoadSettings() : XmlLoadSettings(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } } 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::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 } #endif