]> git.proxmox.com Git - rustc.git/blame - vendor/windows/src/Windows/Data/Xml/Dom/mod.rs
Merge 1.70 into proxmox/bookworm
[rustc.git] / vendor / windows / src / Windows / Data / Xml / Dom / mod.rs
CommitLineData
353b0b11
FG
1#[doc(hidden)]
2#[repr(transparent)]
3pub struct IDtdEntity(::windows::core::IUnknown);
4unsafe impl ::windows::core::Interface for IDtdEntity {
5 type Vtable = IDtdEntity_Vtbl;
6}
7impl ::core::clone::Clone for IDtdEntity {
8 fn clone(&self) -> Self {
9 Self(self.0.clone())
10 }
11}
12unsafe impl ::windows::core::ComInterface for IDtdEntity {
13 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6a0b5ffc_63b4_480f_9e6a_8a92816aade4);
14}
15#[repr(C)]
16#[doc(hidden)]
17pub struct IDtdEntity_Vtbl {
18 pub base__: ::windows::core::IInspectable_Vtbl,
19 pub PublicId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
20 pub SystemId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
21 pub NotationName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
22}
23#[doc(hidden)]
24#[repr(transparent)]
25pub struct IDtdNotation(::windows::core::IUnknown);
26unsafe impl ::windows::core::Interface for IDtdNotation {
27 type Vtable = IDtdNotation_Vtbl;
28}
29impl ::core::clone::Clone for IDtdNotation {
30 fn clone(&self) -> Self {
31 Self(self.0.clone())
32 }
33}
34unsafe impl ::windows::core::ComInterface for IDtdNotation {
35 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8cb4e04d_6d46_4edb_ab73_df83c51ad397);
36}
37#[repr(C)]
38#[doc(hidden)]
39pub struct IDtdNotation_Vtbl {
40 pub base__: ::windows::core::IInspectable_Vtbl,
41 pub PublicId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
42 pub SystemId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
43}
44#[doc(hidden)]
45#[repr(transparent)]
46pub struct IXmlAttribute(::windows::core::IUnknown);
47unsafe impl ::windows::core::Interface for IXmlAttribute {
48 type Vtable = IXmlAttribute_Vtbl;
49}
50impl ::core::clone::Clone for IXmlAttribute {
51 fn clone(&self) -> Self {
52 Self(self.0.clone())
53 }
54}
55unsafe impl ::windows::core::ComInterface for IXmlAttribute {
56 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xac144aa4_b4f1_4db6_b206_8a22c308db0a);
57}
58#[repr(C)]
59#[doc(hidden)]
60pub struct IXmlAttribute_Vtbl {
61 pub base__: ::windows::core::IInspectable_Vtbl,
62 pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
63 pub Specified: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
64 pub Value: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
65 pub SetValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
66}
67#[doc(hidden)]
68#[repr(transparent)]
69pub struct IXmlCDataSection(::windows::core::IUnknown);
70unsafe impl ::windows::core::Interface for IXmlCDataSection {
71 type Vtable = IXmlCDataSection_Vtbl;
72}
73impl ::core::clone::Clone for IXmlCDataSection {
74 fn clone(&self) -> Self {
75 Self(self.0.clone())
76 }
77}
78unsafe impl ::windows::core::ComInterface for IXmlCDataSection {
79 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4d04b46f_c8bd_45b4_8899_0400d7c2c60f);
80}
81#[repr(C)]
82#[doc(hidden)]
83pub struct IXmlCDataSection_Vtbl {
84 pub base__: ::windows::core::IInspectable_Vtbl,
85}
86#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
87#[repr(transparent)]
88pub struct IXmlCharacterData(::windows::core::IUnknown);
89impl IXmlCharacterData {
90 pub fn Data(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
91 let this = self;
92 unsafe {
93 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
94 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
95 }
96 }
97 pub fn SetData(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
98 let this = self;
99 unsafe { (::windows::core::Interface::vtable(this).SetData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
100 }
101 pub fn Length(&self) -> ::windows::core::Result<u32> {
102 let this = self;
103 unsafe {
104 let mut result__ = ::windows::core::zeroed::<u32>();
105 (::windows::core::Interface::vtable(this).Length)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
106 }
107 }
108 pub fn SubstringData(&self, offset: u32, count: u32) -> ::windows::core::Result<::windows::core::HSTRING> {
109 let this = self;
110 unsafe {
111 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
112 (::windows::core::Interface::vtable(this).SubstringData)(::windows::core::Interface::as_raw(this), offset, count, &mut result__).from_abi(result__)
113 }
114 }
115 pub fn AppendData(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
116 let this = self;
117 unsafe { (::windows::core::Interface::vtable(this).AppendData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data)).ok() }
118 }
119 pub fn InsertData(&self, offset: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
120 let this = self;
121 unsafe { (::windows::core::Interface::vtable(this).InsertData)(::windows::core::Interface::as_raw(this), offset, ::core::mem::transmute_copy(data)).ok() }
122 }
123 pub fn DeleteData(&self, offset: u32, count: u32) -> ::windows::core::Result<()> {
124 let this = self;
125 unsafe { (::windows::core::Interface::vtable(this).DeleteData)(::windows::core::Interface::as_raw(this), offset, count).ok() }
126 }
127 pub fn ReplaceData(&self, offset: u32, count: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
128 let this = self;
129 unsafe { (::windows::core::Interface::vtable(this).ReplaceData)(::windows::core::Interface::as_raw(this), offset, count, ::core::mem::transmute_copy(data)).ok() }
130 }
131 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
132 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
133 unsafe {
134 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
135 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
136 }
137 }
138 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
139 where
140 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
141 {
142 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
143 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
144 }
145 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
146 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
147 unsafe {
148 let mut result__ = ::windows::core::zeroed::<NodeType>();
149 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
150 }
151 }
152 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
153 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
154 unsafe {
155 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
156 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
157 }
158 }
159 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
160 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
161 unsafe {
162 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
163 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
164 }
165 }
166 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
167 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
168 unsafe {
169 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
170 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
171 }
172 }
173 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
174 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
175 unsafe {
176 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
177 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
178 }
179 }
180 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
181 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
182 unsafe {
183 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
184 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
185 }
186 }
187 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
188 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
189 unsafe {
190 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
191 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
192 }
193 }
194 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
195 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
196 unsafe {
197 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
198 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
199 }
200 }
201 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
202 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
203 unsafe {
204 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
205 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
206 }
207 }
208 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
209 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
210 unsafe {
211 let mut result__ = ::windows::core::zeroed::<bool>();
212 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
213 }
214 }
215 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
216 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
217 unsafe {
218 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
219 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
220 }
221 }
222 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
223 where
224 P0: ::windows::core::TryIntoParam<IXmlNode>,
225 P1: ::windows::core::TryIntoParam<IXmlNode>,
226 {
227 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
228 unsafe {
229 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
230 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
231 }
232 }
233 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
234 where
235 P0: ::windows::core::TryIntoParam<IXmlNode>,
236 P1: ::windows::core::TryIntoParam<IXmlNode>,
237 {
238 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
239 unsafe {
240 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
241 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
242 }
243 }
244 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
245 where
246 P0: ::windows::core::TryIntoParam<IXmlNode>,
247 {
248 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
249 unsafe {
250 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
251 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
252 }
253 }
254 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
255 where
256 P0: ::windows::core::TryIntoParam<IXmlNode>,
257 {
258 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
259 unsafe {
260 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
261 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
262 }
263 }
264 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
265 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
266 unsafe {
267 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
268 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
269 }
270 }
271 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
272 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
273 unsafe {
274 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
275 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
276 }
277 }
278 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
279 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
280 unsafe {
281 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
282 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
283 }
284 }
285 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
286 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
287 unsafe {
288 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
289 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
290 }
291 }
292 pub fn Normalize(&self) -> ::windows::core::Result<()> {
293 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
294 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
295 }
296 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
297 where
298 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
299 {
300 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
301 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
302 }
303 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
304 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
305 unsafe {
306 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
307 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
308 }
309 }
310 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
311 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
312 unsafe {
313 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
314 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
315 }
316 }
317 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
318 where
319 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
320 {
321 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
322 unsafe {
323 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
324 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
325 }
326 }
327 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
328 where
329 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
330 {
331 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
332 unsafe {
333 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
334 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
335 }
336 }
337 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
338 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
339 unsafe {
340 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
341 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
342 }
343 }
344 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
345 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
346 unsafe {
347 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
348 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
349 }
350 }
351 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
352 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
353 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
354 }
355}
356::windows::imp::interface_hierarchy!(IXmlCharacterData, ::windows::core::IUnknown, ::windows::core::IInspectable);
357impl windows::core::CanTryInto<IXmlNode> for IXmlCharacterData {}
358impl windows::core::CanTryInto<IXmlNodeSelector> for IXmlCharacterData {}
359impl windows::core::CanTryInto<IXmlNodeSerializer> for IXmlCharacterData {}
360impl ::core::cmp::PartialEq for IXmlCharacterData {
361 fn eq(&self, other: &Self) -> bool {
362 self.0 == other.0
363 }
364}
365impl ::core::cmp::Eq for IXmlCharacterData {}
366impl ::core::fmt::Debug for IXmlCharacterData {
367 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
368 f.debug_tuple("IXmlCharacterData").field(&self.0).finish()
369 }
370}
371impl ::windows::core::RuntimeType for IXmlCharacterData {
372 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"{132e42ab-4e36-4df6-b1c8-0ce62fd88b26}");
373}
374unsafe impl ::windows::core::Interface for IXmlCharacterData {
375 type Vtable = IXmlCharacterData_Vtbl;
376}
377impl ::core::clone::Clone for IXmlCharacterData {
378 fn clone(&self) -> Self {
379 Self(self.0.clone())
380 }
381}
382unsafe impl ::windows::core::ComInterface for IXmlCharacterData {
383 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x132e42ab_4e36_4df6_b1c8_0ce62fd88b26);
384}
385#[repr(C)]
386#[doc(hidden)]
387pub struct IXmlCharacterData_Vtbl {
388 pub base__: ::windows::core::IInspectable_Vtbl,
389 pub Data: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
390 pub SetData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
391 pub Length: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
392 pub SubstringData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, offset: u32, count: u32, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
393 pub AppendData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, data: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
394 pub InsertData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, offset: u32, data: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
395 pub DeleteData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, offset: u32, count: u32) -> ::windows::core::HRESULT,
396 pub ReplaceData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, offset: u32, count: u32, data: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
397}
398#[doc(hidden)]
399#[repr(transparent)]
400pub struct IXmlComment(::windows::core::IUnknown);
401unsafe impl ::windows::core::Interface for IXmlComment {
402 type Vtable = IXmlComment_Vtbl;
403}
404impl ::core::clone::Clone for IXmlComment {
405 fn clone(&self) -> Self {
406 Self(self.0.clone())
407 }
408}
409unsafe impl ::windows::core::ComInterface for IXmlComment {
410 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbca474d5_b61f_4611_9cac_2e92e3476d47);
411}
412#[repr(C)]
413#[doc(hidden)]
414pub struct IXmlComment_Vtbl {
415 pub base__: ::windows::core::IInspectable_Vtbl,
416}
417#[doc(hidden)]
418#[repr(transparent)]
419pub struct IXmlDocument(::windows::core::IUnknown);
420unsafe impl ::windows::core::Interface for IXmlDocument {
421 type Vtable = IXmlDocument_Vtbl;
422}
423impl ::core::clone::Clone for IXmlDocument {
424 fn clone(&self) -> Self {
425 Self(self.0.clone())
426 }
427}
428unsafe impl ::windows::core::ComInterface for IXmlDocument {
429 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf7f3a506_1e87_42d6_bcfb_b8c809fa5494);
430}
431#[repr(C)]
432#[doc(hidden)]
433pub struct IXmlDocument_Vtbl {
434 pub base__: ::windows::core::IInspectable_Vtbl,
435 pub Doctype: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
436 pub Implementation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
437 pub DocumentElement: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
438 pub CreateElement: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, tagname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
439 pub CreateDocumentFragment: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
440 pub CreateTextNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, data: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
441 pub CreateComment: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, data: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
442 pub CreateProcessingInstruction: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, target: ::std::mem::MaybeUninit<::windows::core::HSTRING>, data: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
443 pub CreateAttribute: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, name: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
444 pub CreateEntityReference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, name: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
445 pub GetElementsByTagName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, tagname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
446 pub CreateCDataSection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, data: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
447 pub DocumentUri: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
448 pub CreateAttributeNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, qualifiedname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
449 pub CreateElementNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, qualifiedname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
450 pub GetElementById: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, elementid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
451 pub ImportNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, node: *mut ::core::ffi::c_void, deep: bool, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
452}
453#[doc(hidden)]
454#[repr(transparent)]
455pub struct IXmlDocumentFragment(::windows::core::IUnknown);
456unsafe impl ::windows::core::Interface for IXmlDocumentFragment {
457 type Vtable = IXmlDocumentFragment_Vtbl;
458}
459impl ::core::clone::Clone for IXmlDocumentFragment {
460 fn clone(&self) -> Self {
461 Self(self.0.clone())
462 }
463}
464unsafe impl ::windows::core::ComInterface for IXmlDocumentFragment {
465 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe2ea6a96_0c21_44a5_8bc9_9e4a262708ec);
466}
467#[repr(C)]
468#[doc(hidden)]
469pub struct IXmlDocumentFragment_Vtbl {
470 pub base__: ::windows::core::IInspectable_Vtbl,
471}
472#[doc(hidden)]
473#[repr(transparent)]
474pub struct IXmlDocumentIO(::windows::core::IUnknown);
475unsafe impl ::windows::core::Interface for IXmlDocumentIO {
476 type Vtable = IXmlDocumentIO_Vtbl;
477}
478impl ::core::clone::Clone for IXmlDocumentIO {
479 fn clone(&self) -> Self {
480 Self(self.0.clone())
481 }
482}
483unsafe impl ::windows::core::ComInterface for IXmlDocumentIO {
484 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6cd0e74e_ee65_4489_9ebf_ca43e87ba637);
485}
486#[repr(C)]
487#[doc(hidden)]
488pub struct IXmlDocumentIO_Vtbl {
489 pub base__: ::windows::core::IInspectable_Vtbl,
490 pub LoadXml: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xml: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
491 pub LoadXmlWithSettings: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xml: ::std::mem::MaybeUninit<::windows::core::HSTRING>, loadsettings: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
492 #[cfg(all(feature = "Foundation", feature = "Storage"))]
493 pub SaveToFileAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, file: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
494 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
495 SaveToFileAsync: usize,
496}
497#[doc(hidden)]
498#[repr(transparent)]
499pub struct IXmlDocumentIO2(::windows::core::IUnknown);
500unsafe impl ::windows::core::Interface for IXmlDocumentIO2 {
501 type Vtable = IXmlDocumentIO2_Vtbl;
502}
503impl ::core::clone::Clone for IXmlDocumentIO2 {
504 fn clone(&self) -> Self {
505 Self(self.0.clone())
506 }
507}
508unsafe impl ::windows::core::ComInterface for IXmlDocumentIO2 {
509 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5d034661_7bd8_4ad5_9ebf_81e6347263b1);
510}
511#[repr(C)]
512#[doc(hidden)]
513pub struct IXmlDocumentIO2_Vtbl {
514 pub base__: ::windows::core::IInspectable_Vtbl,
515 #[cfg(feature = "Storage_Streams")]
516 pub LoadXmlFromBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, buffer: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
517 #[cfg(not(feature = "Storage_Streams"))]
518 LoadXmlFromBuffer: usize,
519 #[cfg(feature = "Storage_Streams")]
520 pub LoadXmlFromBufferWithSettings: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, buffer: *mut ::core::ffi::c_void, loadsettings: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
521 #[cfg(not(feature = "Storage_Streams"))]
522 LoadXmlFromBufferWithSettings: usize,
523}
524#[doc(hidden)]
525#[repr(transparent)]
526pub struct IXmlDocumentStatics(::windows::core::IUnknown);
527unsafe impl ::windows::core::Interface for IXmlDocumentStatics {
528 type Vtable = IXmlDocumentStatics_Vtbl;
529}
530impl ::core::clone::Clone for IXmlDocumentStatics {
531 fn clone(&self) -> Self {
532 Self(self.0.clone())
533 }
534}
535unsafe impl ::windows::core::ComInterface for IXmlDocumentStatics {
536 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5543d254_d757_4b79_9539_232b18f50bf1);
537}
538#[repr(C)]
539#[doc(hidden)]
540pub struct IXmlDocumentStatics_Vtbl {
541 pub base__: ::windows::core::IInspectable_Vtbl,
542 #[cfg(feature = "Foundation")]
543 pub LoadFromUriAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uri: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
544 #[cfg(not(feature = "Foundation"))]
545 LoadFromUriAsync: usize,
546 #[cfg(feature = "Foundation")]
547 pub LoadFromUriWithSettingsAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uri: *mut ::core::ffi::c_void, loadsettings: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
548 #[cfg(not(feature = "Foundation"))]
549 LoadFromUriWithSettingsAsync: usize,
550 #[cfg(all(feature = "Foundation", feature = "Storage"))]
551 pub LoadFromFileAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, file: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
552 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
553 LoadFromFileAsync: usize,
554 #[cfg(all(feature = "Foundation", feature = "Storage"))]
555 pub LoadFromFileWithSettingsAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, file: *mut ::core::ffi::c_void, loadsettings: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
556 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
557 LoadFromFileWithSettingsAsync: usize,
558}
559#[doc(hidden)]
560#[repr(transparent)]
561pub struct IXmlDocumentType(::windows::core::IUnknown);
562unsafe impl ::windows::core::Interface for IXmlDocumentType {
563 type Vtable = IXmlDocumentType_Vtbl;
564}
565impl ::core::clone::Clone for IXmlDocumentType {
566 fn clone(&self) -> Self {
567 Self(self.0.clone())
568 }
569}
570unsafe impl ::windows::core::ComInterface for IXmlDocumentType {
571 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf7342425_9781_4964_8e94_9b1c6dfc9bc7);
572}
573#[repr(C)]
574#[doc(hidden)]
575pub struct IXmlDocumentType_Vtbl {
576 pub base__: ::windows::core::IInspectable_Vtbl,
577 pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
578 pub Entities: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
579 pub Notations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
580}
581#[doc(hidden)]
582#[repr(transparent)]
583pub struct IXmlDomImplementation(::windows::core::IUnknown);
584unsafe impl ::windows::core::Interface for IXmlDomImplementation {
585 type Vtable = IXmlDomImplementation_Vtbl;
586}
587impl ::core::clone::Clone for IXmlDomImplementation {
588 fn clone(&self) -> Self {
589 Self(self.0.clone())
590 }
591}
592unsafe impl ::windows::core::ComInterface for IXmlDomImplementation {
593 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6de58132_f11d_4fbb_8cc6_583cba93112f);
594}
595#[repr(C)]
596#[doc(hidden)]
597pub struct IXmlDomImplementation_Vtbl {
598 pub base__: ::windows::core::IInspectable_Vtbl,
599 pub HasFeature: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, feature: ::std::mem::MaybeUninit<::windows::core::HSTRING>, version: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
600}
601#[doc(hidden)]
602#[repr(transparent)]
603pub struct IXmlElement(::windows::core::IUnknown);
604unsafe impl ::windows::core::Interface for IXmlElement {
605 type Vtable = IXmlElement_Vtbl;
606}
607impl ::core::clone::Clone for IXmlElement {
608 fn clone(&self) -> Self {
609 Self(self.0.clone())
610 }
611}
612unsafe impl ::windows::core::ComInterface for IXmlElement {
613 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2dfb8a1f_6b10_4ef8_9f83_efcce8faec37);
614}
615#[repr(C)]
616#[doc(hidden)]
617pub struct IXmlElement_Vtbl {
618 pub base__: ::windows::core::IInspectable_Vtbl,
619 pub TagName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
620 pub GetAttribute: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, attributename: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
621 pub SetAttribute: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, attributename: ::std::mem::MaybeUninit<::windows::core::HSTRING>, attributevalue: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
622 pub RemoveAttribute: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, attributename: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
623 pub GetAttributeNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, attributename: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
624 pub SetAttributeNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newattribute: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
625 pub RemoveAttributeNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, attributenode: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
626 pub GetElementsByTagName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, tagname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
627 pub SetAttributeNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, qualifiedname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
628 pub GetAttributeNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, localname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
629 pub RemoveAttributeNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, localname: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
630 pub SetAttributeNodeNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newattribute: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
631 pub GetAttributeNodeNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, localname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
632}
633#[doc(hidden)]
634#[repr(transparent)]
635pub struct IXmlEntityReference(::windows::core::IUnknown);
636unsafe impl ::windows::core::Interface for IXmlEntityReference {
637 type Vtable = IXmlEntityReference_Vtbl;
638}
639impl ::core::clone::Clone for IXmlEntityReference {
640 fn clone(&self) -> Self {
641 Self(self.0.clone())
642 }
643}
644unsafe impl ::windows::core::ComInterface for IXmlEntityReference {
645 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2e2f47bc_c3d0_4ccf_bb86_0ab8c36a61cf);
646}
647#[repr(C)]
648#[doc(hidden)]
649pub struct IXmlEntityReference_Vtbl {
650 pub base__: ::windows::core::IInspectable_Vtbl,
651}
652#[doc(hidden)]
653#[repr(transparent)]
654pub struct IXmlLoadSettings(::windows::core::IUnknown);
655unsafe impl ::windows::core::Interface for IXmlLoadSettings {
656 type Vtable = IXmlLoadSettings_Vtbl;
657}
658impl ::core::clone::Clone for IXmlLoadSettings {
659 fn clone(&self) -> Self {
660 Self(self.0.clone())
661 }
662}
663unsafe impl ::windows::core::ComInterface for IXmlLoadSettings {
664 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x58aa07a8_fed6_46f7_b4c5_fb1ba72108d6);
665}
666#[repr(C)]
667#[doc(hidden)]
668pub struct IXmlLoadSettings_Vtbl {
669 pub base__: ::windows::core::IInspectable_Vtbl,
670 pub MaxElementDepth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
671 pub SetMaxElementDepth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: u32) -> ::windows::core::HRESULT,
672 pub ProhibitDtd: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
673 pub SetProhibitDtd: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: bool) -> ::windows::core::HRESULT,
674 pub ResolveExternals: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
675 pub SetResolveExternals: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: bool) -> ::windows::core::HRESULT,
676 pub ValidateOnParse: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
677 pub SetValidateOnParse: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: bool) -> ::windows::core::HRESULT,
678 pub ElementContentWhiteSpace: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
679 pub SetElementContentWhiteSpace: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: bool) -> ::windows::core::HRESULT,
680}
681#[doc(hidden)]
682#[repr(transparent)]
683pub struct IXmlNamedNodeMap(::windows::core::IUnknown);
684unsafe impl ::windows::core::Interface for IXmlNamedNodeMap {
685 type Vtable = IXmlNamedNodeMap_Vtbl;
686}
687impl ::core::clone::Clone for IXmlNamedNodeMap {
688 fn clone(&self) -> Self {
689 Self(self.0.clone())
690 }
691}
692unsafe impl ::windows::core::ComInterface for IXmlNamedNodeMap {
693 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb3a69eb0_aab0_4b82_a6fa_b1453f7c021b);
694}
695#[repr(C)]
696#[doc(hidden)]
697pub struct IXmlNamedNodeMap_Vtbl {
698 pub base__: ::windows::core::IInspectable_Vtbl,
699 pub Length: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
700 pub Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: u32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
701 pub GetNamedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, name: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
702 pub SetNamedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, node: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
703 pub RemoveNamedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, name: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
704 pub GetNamedItemNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, name: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
705 pub RemoveNamedItemNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, namespaceuri: *mut ::core::ffi::c_void, name: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
706 pub SetNamedItemNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, node: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
707}
708#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
709#[repr(transparent)]
710pub struct IXmlNode(::windows::core::IUnknown);
711impl IXmlNode {
712 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
713 let this = self;
714 unsafe {
715 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
716 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
717 }
718 }
719 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
720 where
721 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
722 {
723 let this = self;
724 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
725 }
726 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
727 let this = self;
728 unsafe {
729 let mut result__ = ::windows::core::zeroed::<NodeType>();
730 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
731 }
732 }
733 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
734 let this = self;
735 unsafe {
736 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
737 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
738 }
739 }
740 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
741 let this = self;
742 unsafe {
743 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
744 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
745 }
746 }
747 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
748 let this = self;
749 unsafe {
750 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
751 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
752 }
753 }
754 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
755 let this = self;
756 unsafe {
757 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
758 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
759 }
760 }
761 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
762 let this = self;
763 unsafe {
764 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
765 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
766 }
767 }
768 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
769 let this = self;
770 unsafe {
771 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
772 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
773 }
774 }
775 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
776 let this = self;
777 unsafe {
778 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
779 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
780 }
781 }
782 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
783 let this = self;
784 unsafe {
785 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
786 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
787 }
788 }
789 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
790 let this = self;
791 unsafe {
792 let mut result__ = ::windows::core::zeroed::<bool>();
793 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
794 }
795 }
796 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
797 let this = self;
798 unsafe {
799 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
800 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
801 }
802 }
803 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
804 where
805 P0: ::windows::core::TryIntoParam<IXmlNode>,
806 P1: ::windows::core::TryIntoParam<IXmlNode>,
807 {
808 let this = self;
809 unsafe {
810 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
811 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
812 }
813 }
814 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
815 where
816 P0: ::windows::core::TryIntoParam<IXmlNode>,
817 P1: ::windows::core::TryIntoParam<IXmlNode>,
818 {
819 let this = self;
820 unsafe {
821 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
822 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
823 }
824 }
825 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
826 where
827 P0: ::windows::core::TryIntoParam<IXmlNode>,
828 {
829 let this = self;
830 unsafe {
831 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
832 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
833 }
834 }
835 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
836 where
837 P0: ::windows::core::TryIntoParam<IXmlNode>,
838 {
839 let this = self;
840 unsafe {
841 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
842 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
843 }
844 }
845 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
846 let this = self;
847 unsafe {
848 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
849 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
850 }
851 }
852 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
853 let this = self;
854 unsafe {
855 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
856 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
857 }
858 }
859 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
860 let this = self;
861 unsafe {
862 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
863 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
864 }
865 }
866 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
867 let this = self;
868 unsafe {
869 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
870 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
871 }
872 }
873 pub fn Normalize(&self) -> ::windows::core::Result<()> {
874 let this = self;
875 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
876 }
877 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
878 where
879 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
880 {
881 let this = self;
882 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
883 }
884 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
885 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
886 unsafe {
887 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
888 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
889 }
890 }
891 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
892 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
893 unsafe {
894 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
895 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
896 }
897 }
898 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
899 where
900 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
901 {
902 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
903 unsafe {
904 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
905 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
906 }
907 }
908 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
909 where
910 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
911 {
912 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
913 unsafe {
914 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
915 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
916 }
917 }
918 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
919 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
920 unsafe {
921 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
922 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
923 }
924 }
925 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
926 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
927 unsafe {
928 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
929 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
930 }
931 }
932 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
933 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
934 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
935 }
936}
937::windows::imp::interface_hierarchy!(IXmlNode, ::windows::core::IUnknown, ::windows::core::IInspectable);
938impl windows::core::CanTryInto<IXmlNodeSelector> for IXmlNode {}
939impl windows::core::CanTryInto<IXmlNodeSerializer> for IXmlNode {}
940impl ::core::cmp::PartialEq for IXmlNode {
941 fn eq(&self, other: &Self) -> bool {
942 self.0 == other.0
943 }
944}
945impl ::core::cmp::Eq for IXmlNode {}
946impl ::core::fmt::Debug for IXmlNode {
947 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
948 f.debug_tuple("IXmlNode").field(&self.0).finish()
949 }
950}
951impl ::windows::core::RuntimeType for IXmlNode {
952 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"{1c741d59-2122-47d5-a856-83f3d4214875}");
953}
954unsafe impl ::windows::core::Interface for IXmlNode {
955 type Vtable = IXmlNode_Vtbl;
956}
957impl ::core::clone::Clone for IXmlNode {
958 fn clone(&self) -> Self {
959 Self(self.0.clone())
960 }
961}
962unsafe impl ::windows::core::ComInterface for IXmlNode {
963 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1c741d59_2122_47d5_a856_83f3d4214875);
964}
965#[repr(C)]
966#[doc(hidden)]
967pub struct IXmlNode_Vtbl {
968 pub base__: ::windows::core::IInspectable_Vtbl,
969 pub NodeValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
970 pub SetNodeValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
971 pub NodeType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut NodeType) -> ::windows::core::HRESULT,
972 pub NodeName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
973 pub ParentNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
974 pub ChildNodes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
975 pub FirstChild: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
976 pub LastChild: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
977 pub PreviousSibling: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
978 pub NextSibling: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
979 pub Attributes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
980 pub HasChildNodes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
981 pub OwnerDocument: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
982 pub InsertBefore: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newchild: *mut ::core::ffi::c_void, referencechild: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
983 pub ReplaceChild: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newchild: *mut ::core::ffi::c_void, referencechild: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
984 pub RemoveChild: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, childnode: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
985 pub AppendChild: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newchild: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
986 pub CloneNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deep: bool, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
987 pub NamespaceUri: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
988 pub LocalName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
989 pub Prefix: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
990 pub Normalize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
991 pub SetPrefix: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
992}
993#[doc(hidden)]
994#[repr(transparent)]
995pub struct IXmlNodeList(::windows::core::IUnknown);
996unsafe impl ::windows::core::Interface for IXmlNodeList {
997 type Vtable = IXmlNodeList_Vtbl;
998}
999impl ::core::clone::Clone for IXmlNodeList {
1000 fn clone(&self) -> Self {
1001 Self(self.0.clone())
1002 }
1003}
1004unsafe impl ::windows::core::ComInterface for IXmlNodeList {
1005 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8c60ad77_83a4_4ec1_9c54_7ba429e13da6);
1006}
1007#[repr(C)]
1008#[doc(hidden)]
1009pub struct IXmlNodeList_Vtbl {
1010 pub base__: ::windows::core::IInspectable_Vtbl,
1011 pub Length: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1012 pub Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: u32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1013}
1014#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
1015#[repr(transparent)]
1016pub struct IXmlNodeSelector(::windows::core::IUnknown);
1017impl IXmlNodeSelector {
1018 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
1019 let this = self;
1020 unsafe {
1021 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1022 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1023 }
1024 }
1025 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
1026 let this = self;
1027 unsafe {
1028 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1029 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1030 }
1031 }
1032 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
1033 where
1034 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1035 {
1036 let this = self;
1037 unsafe {
1038 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1039 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1040 }
1041 }
1042 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
1043 where
1044 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1045 {
1046 let this = self;
1047 unsafe {
1048 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1049 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1050 }
1051 }
1052}
1053::windows::imp::interface_hierarchy!(IXmlNodeSelector, ::windows::core::IUnknown, ::windows::core::IInspectable);
1054impl ::core::cmp::PartialEq for IXmlNodeSelector {
1055 fn eq(&self, other: &Self) -> bool {
1056 self.0 == other.0
1057 }
1058}
1059impl ::core::cmp::Eq for IXmlNodeSelector {}
1060impl ::core::fmt::Debug for IXmlNodeSelector {
1061 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1062 f.debug_tuple("IXmlNodeSelector").field(&self.0).finish()
1063 }
1064}
1065impl ::windows::core::RuntimeType for IXmlNodeSelector {
1066 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"{63dbba8b-d0db-4fe1-b745-f9433afdc25b}");
1067}
1068unsafe impl ::windows::core::Interface for IXmlNodeSelector {
1069 type Vtable = IXmlNodeSelector_Vtbl;
1070}
1071impl ::core::clone::Clone for IXmlNodeSelector {
1072 fn clone(&self) -> Self {
1073 Self(self.0.clone())
1074 }
1075}
1076unsafe impl ::windows::core::ComInterface for IXmlNodeSelector {
1077 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x63dbba8b_d0db_4fe1_b745_f9433afdc25b);
1078}
1079#[repr(C)]
1080#[doc(hidden)]
1081pub struct IXmlNodeSelector_Vtbl {
1082 pub base__: ::windows::core::IInspectable_Vtbl,
1083 pub SelectSingleNode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xpath: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1084 pub SelectNodes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xpath: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1085 pub SelectSingleNodeNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xpath: ::std::mem::MaybeUninit<::windows::core::HSTRING>, namespaces: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1086 pub SelectNodesNS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xpath: ::std::mem::MaybeUninit<::windows::core::HSTRING>, namespaces: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1087}
1088#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
1089#[repr(transparent)]
1090pub struct IXmlNodeSerializer(::windows::core::IUnknown);
1091impl IXmlNodeSerializer {
1092 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1093 let this = self;
1094 unsafe {
1095 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1096 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1097 }
1098 }
1099 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1100 let this = self;
1101 unsafe {
1102 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1103 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1104 }
1105 }
1106 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
1107 let this = self;
1108 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1109 }
1110}
1111::windows::imp::interface_hierarchy!(IXmlNodeSerializer, ::windows::core::IUnknown, ::windows::core::IInspectable);
1112impl ::core::cmp::PartialEq for IXmlNodeSerializer {
1113 fn eq(&self, other: &Self) -> bool {
1114 self.0 == other.0
1115 }
1116}
1117impl ::core::cmp::Eq for IXmlNodeSerializer {}
1118impl ::core::fmt::Debug for IXmlNodeSerializer {
1119 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1120 f.debug_tuple("IXmlNodeSerializer").field(&self.0).finish()
1121 }
1122}
1123impl ::windows::core::RuntimeType for IXmlNodeSerializer {
1124 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"{5cc5b382-e6dd-4991-abef-06d8d2e7bd0c}");
1125}
1126unsafe impl ::windows::core::Interface for IXmlNodeSerializer {
1127 type Vtable = IXmlNodeSerializer_Vtbl;
1128}
1129impl ::core::clone::Clone for IXmlNodeSerializer {
1130 fn clone(&self) -> Self {
1131 Self(self.0.clone())
1132 }
1133}
1134unsafe impl ::windows::core::ComInterface for IXmlNodeSerializer {
1135 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5cc5b382_e6dd_4991_abef_06d8d2e7bd0c);
1136}
1137#[repr(C)]
1138#[doc(hidden)]
1139pub struct IXmlNodeSerializer_Vtbl {
1140 pub base__: ::windows::core::IInspectable_Vtbl,
1141 pub GetXml: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1142 pub InnerText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1143 pub SetInnerText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1144}
1145#[doc(hidden)]
1146#[repr(transparent)]
1147pub struct IXmlProcessingInstruction(::windows::core::IUnknown);
1148unsafe impl ::windows::core::Interface for IXmlProcessingInstruction {
1149 type Vtable = IXmlProcessingInstruction_Vtbl;
1150}
1151impl ::core::clone::Clone for IXmlProcessingInstruction {
1152 fn clone(&self) -> Self {
1153 Self(self.0.clone())
1154 }
1155}
1156unsafe impl ::windows::core::ComInterface for IXmlProcessingInstruction {
1157 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2707fd1e_1e92_4ece_b6f4_26f069078ddc);
1158}
1159#[repr(C)]
1160#[doc(hidden)]
1161pub struct IXmlProcessingInstruction_Vtbl {
1162 pub base__: ::windows::core::IInspectable_Vtbl,
1163 pub Target: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1164 pub Data: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1165 pub SetData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1166}
1167#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
1168#[repr(transparent)]
1169pub struct IXmlText(::windows::core::IUnknown);
1170impl IXmlText {
1171 pub fn SplitText(&self, offset: u32) -> ::windows::core::Result<IXmlText> {
1172 let this = self;
1173 unsafe {
1174 let mut result__ = ::windows::core::zeroed::<IXmlText>();
1175 (::windows::core::Interface::vtable(this).SplitText)(::windows::core::Interface::as_raw(this), offset, &mut result__).from_abi(result__)
1176 }
1177 }
1178 pub fn Data(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1179 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1180 unsafe {
1181 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1182 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1183 }
1184 }
1185 pub fn SetData(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
1186 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1187 unsafe { (::windows::core::Interface::vtable(this).SetData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1188 }
1189 pub fn Length(&self) -> ::windows::core::Result<u32> {
1190 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1191 unsafe {
1192 let mut result__ = ::windows::core::zeroed::<u32>();
1193 (::windows::core::Interface::vtable(this).Length)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1194 }
1195 }
1196 pub fn SubstringData(&self, offset: u32, count: u32) -> ::windows::core::Result<::windows::core::HSTRING> {
1197 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1198 unsafe {
1199 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1200 (::windows::core::Interface::vtable(this).SubstringData)(::windows::core::Interface::as_raw(this), offset, count, &mut result__).from_abi(result__)
1201 }
1202 }
1203 pub fn AppendData(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
1204 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1205 unsafe { (::windows::core::Interface::vtable(this).AppendData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data)).ok() }
1206 }
1207 pub fn InsertData(&self, offset: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
1208 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1209 unsafe { (::windows::core::Interface::vtable(this).InsertData)(::windows::core::Interface::as_raw(this), offset, ::core::mem::transmute_copy(data)).ok() }
1210 }
1211 pub fn DeleteData(&self, offset: u32, count: u32) -> ::windows::core::Result<()> {
1212 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1213 unsafe { (::windows::core::Interface::vtable(this).DeleteData)(::windows::core::Interface::as_raw(this), offset, count).ok() }
1214 }
1215 pub fn ReplaceData(&self, offset: u32, count: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
1216 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
1217 unsafe { (::windows::core::Interface::vtable(this).ReplaceData)(::windows::core::Interface::as_raw(this), offset, count, ::core::mem::transmute_copy(data)).ok() }
1218 }
1219 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1220 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1221 unsafe {
1222 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1223 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1224 }
1225 }
1226 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
1227 where
1228 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1229 {
1230 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1231 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
1232 }
1233 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
1234 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1235 unsafe {
1236 let mut result__ = ::windows::core::zeroed::<NodeType>();
1237 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1238 }
1239 }
1240 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1241 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1242 unsafe {
1243 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1244 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1245 }
1246 }
1247 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
1248 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1249 unsafe {
1250 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1251 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1252 }
1253 }
1254 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
1255 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1256 unsafe {
1257 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1258 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1259 }
1260 }
1261 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
1262 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1263 unsafe {
1264 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1265 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1266 }
1267 }
1268 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
1269 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1270 unsafe {
1271 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1272 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1273 }
1274 }
1275 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
1276 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1277 unsafe {
1278 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1279 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1280 }
1281 }
1282 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
1283 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1284 unsafe {
1285 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1286 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1287 }
1288 }
1289 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
1290 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1291 unsafe {
1292 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
1293 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1294 }
1295 }
1296 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
1297 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1298 unsafe {
1299 let mut result__ = ::windows::core::zeroed::<bool>();
1300 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1301 }
1302 }
1303 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
1304 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1305 unsafe {
1306 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
1307 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1308 }
1309 }
1310 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
1311 where
1312 P0: ::windows::core::TryIntoParam<IXmlNode>,
1313 P1: ::windows::core::TryIntoParam<IXmlNode>,
1314 {
1315 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1316 unsafe {
1317 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1318 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1319 }
1320 }
1321 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
1322 where
1323 P0: ::windows::core::TryIntoParam<IXmlNode>,
1324 P1: ::windows::core::TryIntoParam<IXmlNode>,
1325 {
1326 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1327 unsafe {
1328 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1329 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1330 }
1331 }
1332 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
1333 where
1334 P0: ::windows::core::TryIntoParam<IXmlNode>,
1335 {
1336 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1337 unsafe {
1338 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1339 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
1340 }
1341 }
1342 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
1343 where
1344 P0: ::windows::core::TryIntoParam<IXmlNode>,
1345 {
1346 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1347 unsafe {
1348 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1349 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1350 }
1351 }
1352 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
1353 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1354 unsafe {
1355 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1356 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
1357 }
1358 }
1359 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1360 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1361 unsafe {
1362 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1363 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1364 }
1365 }
1366 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1367 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1368 unsafe {
1369 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1370 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1371 }
1372 }
1373 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1374 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1375 unsafe {
1376 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1377 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1378 }
1379 }
1380 pub fn Normalize(&self) -> ::windows::core::Result<()> {
1381 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1382 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
1383 }
1384 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
1385 where
1386 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1387 {
1388 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1389 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
1390 }
1391 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
1392 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1393 unsafe {
1394 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1395 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1396 }
1397 }
1398 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
1399 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1400 unsafe {
1401 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1402 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1403 }
1404 }
1405 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
1406 where
1407 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1408 {
1409 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1410 unsafe {
1411 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1412 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1413 }
1414 }
1415 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
1416 where
1417 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1418 {
1419 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1420 unsafe {
1421 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1422 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1423 }
1424 }
1425 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1426 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1427 unsafe {
1428 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1429 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1430 }
1431 }
1432 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1433 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1434 unsafe {
1435 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1436 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1437 }
1438 }
1439 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
1440 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1441 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1442 }
1443}
1444::windows::imp::interface_hierarchy!(IXmlText, ::windows::core::IUnknown, ::windows::core::IInspectable);
1445impl windows::core::CanTryInto<IXmlCharacterData> for IXmlText {}
1446impl windows::core::CanTryInto<IXmlNode> for IXmlText {}
1447impl windows::core::CanTryInto<IXmlNodeSelector> for IXmlText {}
1448impl windows::core::CanTryInto<IXmlNodeSerializer> for IXmlText {}
1449impl ::core::cmp::PartialEq for IXmlText {
1450 fn eq(&self, other: &Self) -> bool {
1451 self.0 == other.0
1452 }
1453}
1454impl ::core::cmp::Eq for IXmlText {}
1455impl ::core::fmt::Debug for IXmlText {
1456 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1457 f.debug_tuple("IXmlText").field(&self.0).finish()
1458 }
1459}
1460impl ::windows::core::RuntimeType for IXmlText {
1461 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"{f931a4cb-308d-4760-a1d5-43b67450ac7e}");
1462}
1463unsafe impl ::windows::core::Interface for IXmlText {
1464 type Vtable = IXmlText_Vtbl;
1465}
1466impl ::core::clone::Clone for IXmlText {
1467 fn clone(&self) -> Self {
1468 Self(self.0.clone())
1469 }
1470}
1471unsafe impl ::windows::core::ComInterface for IXmlText {
1472 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf931a4cb_308d_4760_a1d5_43b67450ac7e);
1473}
1474#[repr(C)]
1475#[doc(hidden)]
1476pub struct IXmlText_Vtbl {
1477 pub base__: ::windows::core::IInspectable_Vtbl,
1478 pub SplitText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, offset: u32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1479}
1480#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
1481#[repr(transparent)]
1482pub struct DtdEntity(::windows::core::IUnknown);
1483impl DtdEntity {
1484 pub fn PublicId(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1485 let this = self;
1486 unsafe {
1487 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1488 (::windows::core::Interface::vtable(this).PublicId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1489 }
1490 }
1491 pub fn SystemId(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1492 let this = self;
1493 unsafe {
1494 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1495 (::windows::core::Interface::vtable(this).SystemId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1496 }
1497 }
1498 pub fn NotationName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1499 let this = self;
1500 unsafe {
1501 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1502 (::windows::core::Interface::vtable(this).NotationName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1503 }
1504 }
1505 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1506 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1507 unsafe {
1508 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1509 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1510 }
1511 }
1512 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
1513 where
1514 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1515 {
1516 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1517 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
1518 }
1519 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
1520 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1521 unsafe {
1522 let mut result__ = ::windows::core::zeroed::<NodeType>();
1523 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1524 }
1525 }
1526 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1527 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1528 unsafe {
1529 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1530 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1531 }
1532 }
1533 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
1534 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1535 unsafe {
1536 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1537 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1538 }
1539 }
1540 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
1541 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1542 unsafe {
1543 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1544 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1545 }
1546 }
1547 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
1548 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1549 unsafe {
1550 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1551 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1552 }
1553 }
1554 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
1555 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1556 unsafe {
1557 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1558 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1559 }
1560 }
1561 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
1562 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1563 unsafe {
1564 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1565 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1566 }
1567 }
1568 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
1569 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1570 unsafe {
1571 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1572 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1573 }
1574 }
1575 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
1576 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1577 unsafe {
1578 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
1579 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1580 }
1581 }
1582 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
1583 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1584 unsafe {
1585 let mut result__ = ::windows::core::zeroed::<bool>();
1586 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1587 }
1588 }
1589 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
1590 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1591 unsafe {
1592 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
1593 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1594 }
1595 }
1596 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
1597 where
1598 P0: ::windows::core::TryIntoParam<IXmlNode>,
1599 P1: ::windows::core::TryIntoParam<IXmlNode>,
1600 {
1601 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1602 unsafe {
1603 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1604 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1605 }
1606 }
1607 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
1608 where
1609 P0: ::windows::core::TryIntoParam<IXmlNode>,
1610 P1: ::windows::core::TryIntoParam<IXmlNode>,
1611 {
1612 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1613 unsafe {
1614 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1615 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1616 }
1617 }
1618 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
1619 where
1620 P0: ::windows::core::TryIntoParam<IXmlNode>,
1621 {
1622 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1623 unsafe {
1624 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1625 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
1626 }
1627 }
1628 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
1629 where
1630 P0: ::windows::core::TryIntoParam<IXmlNode>,
1631 {
1632 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1633 unsafe {
1634 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1635 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1636 }
1637 }
1638 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
1639 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1640 unsafe {
1641 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1642 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
1643 }
1644 }
1645 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1646 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1647 unsafe {
1648 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1649 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1650 }
1651 }
1652 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1653 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1654 unsafe {
1655 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1656 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1657 }
1658 }
1659 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1660 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1661 unsafe {
1662 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1663 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1664 }
1665 }
1666 pub fn Normalize(&self) -> ::windows::core::Result<()> {
1667 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1668 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
1669 }
1670 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
1671 where
1672 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1673 {
1674 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1675 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
1676 }
1677 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
1678 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1679 unsafe {
1680 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1681 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1682 }
1683 }
1684 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
1685 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1686 unsafe {
1687 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1688 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1689 }
1690 }
1691 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
1692 where
1693 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1694 {
1695 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1696 unsafe {
1697 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1698 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1699 }
1700 }
1701 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
1702 where
1703 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1704 {
1705 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1706 unsafe {
1707 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1708 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1709 }
1710 }
1711 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1712 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1713 unsafe {
1714 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1715 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1716 }
1717 }
1718 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1719 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1720 unsafe {
1721 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1722 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1723 }
1724 }
1725 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
1726 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1727 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1728 }
1729}
1730impl ::core::cmp::PartialEq for DtdEntity {
1731 fn eq(&self, other: &Self) -> bool {
1732 self.0 == other.0
1733 }
1734}
1735impl ::core::cmp::Eq for DtdEntity {}
1736impl ::core::fmt::Debug for DtdEntity {
1737 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1738 f.debug_tuple("DtdEntity").field(&self.0).finish()
1739 }
1740}
1741impl ::windows::core::RuntimeType for DtdEntity {
1742 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.DtdEntity;{6a0b5ffc-63b4-480f-9e6a-8a92816aade4})");
1743}
1744impl ::core::clone::Clone for DtdEntity {
1745 fn clone(&self) -> Self {
1746 Self(self.0.clone())
1747 }
1748}
1749unsafe impl ::windows::core::Interface for DtdEntity {
1750 type Vtable = IDtdEntity_Vtbl;
1751}
1752unsafe impl ::windows::core::ComInterface for DtdEntity {
1753 const IID: ::windows::core::GUID = <IDtdEntity as ::windows::core::ComInterface>::IID;
1754}
1755impl ::windows::core::RuntimeName for DtdEntity {
1756 const NAME: &'static str = "Windows.Data.Xml.Dom.DtdEntity";
1757}
1758::windows::imp::interface_hierarchy!(DtdEntity, ::windows::core::IUnknown, ::windows::core::IInspectable);
1759impl ::windows::core::CanTryInto<IXmlNode> for DtdEntity {}
1760impl ::windows::core::CanTryInto<IXmlNodeSelector> for DtdEntity {}
1761impl ::windows::core::CanTryInto<IXmlNodeSerializer> for DtdEntity {}
1762unsafe impl ::core::marker::Send for DtdEntity {}
1763unsafe impl ::core::marker::Sync for DtdEntity {}
1764#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
1765#[repr(transparent)]
1766pub struct DtdNotation(::windows::core::IUnknown);
1767impl DtdNotation {
1768 pub fn PublicId(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1769 let this = self;
1770 unsafe {
1771 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1772 (::windows::core::Interface::vtable(this).PublicId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1773 }
1774 }
1775 pub fn SystemId(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1776 let this = self;
1777 unsafe {
1778 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1779 (::windows::core::Interface::vtable(this).SystemId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1780 }
1781 }
1782 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1783 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1784 unsafe {
1785 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1786 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1787 }
1788 }
1789 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
1790 where
1791 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1792 {
1793 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1794 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
1795 }
1796 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
1797 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1798 unsafe {
1799 let mut result__ = ::windows::core::zeroed::<NodeType>();
1800 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1801 }
1802 }
1803 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1804 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1805 unsafe {
1806 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1807 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1808 }
1809 }
1810 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
1811 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1812 unsafe {
1813 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1814 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1815 }
1816 }
1817 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
1818 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1819 unsafe {
1820 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1821 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1822 }
1823 }
1824 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
1825 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1826 unsafe {
1827 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1828 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1829 }
1830 }
1831 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
1832 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1833 unsafe {
1834 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1835 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1836 }
1837 }
1838 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
1839 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1840 unsafe {
1841 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1842 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1843 }
1844 }
1845 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
1846 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1847 unsafe {
1848 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1849 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1850 }
1851 }
1852 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
1853 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1854 unsafe {
1855 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
1856 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1857 }
1858 }
1859 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
1860 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1861 unsafe {
1862 let mut result__ = ::windows::core::zeroed::<bool>();
1863 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1864 }
1865 }
1866 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
1867 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1868 unsafe {
1869 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
1870 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1871 }
1872 }
1873 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
1874 where
1875 P0: ::windows::core::TryIntoParam<IXmlNode>,
1876 P1: ::windows::core::TryIntoParam<IXmlNode>,
1877 {
1878 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1879 unsafe {
1880 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1881 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1882 }
1883 }
1884 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
1885 where
1886 P0: ::windows::core::TryIntoParam<IXmlNode>,
1887 P1: ::windows::core::TryIntoParam<IXmlNode>,
1888 {
1889 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1890 unsafe {
1891 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1892 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1893 }
1894 }
1895 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
1896 where
1897 P0: ::windows::core::TryIntoParam<IXmlNode>,
1898 {
1899 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1900 unsafe {
1901 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1902 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
1903 }
1904 }
1905 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
1906 where
1907 P0: ::windows::core::TryIntoParam<IXmlNode>,
1908 {
1909 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1910 unsafe {
1911 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1912 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
1913 }
1914 }
1915 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
1916 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1917 unsafe {
1918 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1919 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
1920 }
1921 }
1922 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1923 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1924 unsafe {
1925 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1926 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1927 }
1928 }
1929 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1930 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1931 unsafe {
1932 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1933 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1934 }
1935 }
1936 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
1937 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1938 unsafe {
1939 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
1940 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1941 }
1942 }
1943 pub fn Normalize(&self) -> ::windows::core::Result<()> {
1944 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1945 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
1946 }
1947 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
1948 where
1949 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1950 {
1951 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
1952 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
1953 }
1954 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
1955 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1956 unsafe {
1957 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1958 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1959 }
1960 }
1961 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
1962 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1963 unsafe {
1964 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1965 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
1966 }
1967 }
1968 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
1969 where
1970 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1971 {
1972 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1973 unsafe {
1974 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
1975 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1976 }
1977 }
1978 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
1979 where
1980 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
1981 {
1982 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
1983 unsafe {
1984 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
1985 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
1986 }
1987 }
1988 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1989 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1990 unsafe {
1991 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1992 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
1993 }
1994 }
1995 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
1996 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
1997 unsafe {
1998 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
1999 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2000 }
2001 }
2002 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2003 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2004 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
2005 }
2006}
2007impl ::core::cmp::PartialEq for DtdNotation {
2008 fn eq(&self, other: &Self) -> bool {
2009 self.0 == other.0
2010 }
2011}
2012impl ::core::cmp::Eq for DtdNotation {}
2013impl ::core::fmt::Debug for DtdNotation {
2014 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2015 f.debug_tuple("DtdNotation").field(&self.0).finish()
2016 }
2017}
2018impl ::windows::core::RuntimeType for DtdNotation {
2019 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.DtdNotation;{8cb4e04d-6d46-4edb-ab73-df83c51ad397})");
2020}
2021impl ::core::clone::Clone for DtdNotation {
2022 fn clone(&self) -> Self {
2023 Self(self.0.clone())
2024 }
2025}
2026unsafe impl ::windows::core::Interface for DtdNotation {
2027 type Vtable = IDtdNotation_Vtbl;
2028}
2029unsafe impl ::windows::core::ComInterface for DtdNotation {
2030 const IID: ::windows::core::GUID = <IDtdNotation as ::windows::core::ComInterface>::IID;
2031}
2032impl ::windows::core::RuntimeName for DtdNotation {
2033 const NAME: &'static str = "Windows.Data.Xml.Dom.DtdNotation";
2034}
2035::windows::imp::interface_hierarchy!(DtdNotation, ::windows::core::IUnknown, ::windows::core::IInspectable);
2036impl ::windows::core::CanTryInto<IXmlNode> for DtdNotation {}
2037impl ::windows::core::CanTryInto<IXmlNodeSelector> for DtdNotation {}
2038impl ::windows::core::CanTryInto<IXmlNodeSerializer> for DtdNotation {}
2039unsafe impl ::core::marker::Send for DtdNotation {}
2040unsafe impl ::core::marker::Sync for DtdNotation {}
2041#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
2042#[repr(transparent)]
2043pub struct XmlAttribute(::windows::core::IUnknown);
2044impl XmlAttribute {
2045 pub fn Name(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2046 let this = self;
2047 unsafe {
2048 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2049 (::windows::core::Interface::vtable(this).Name)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2050 }
2051 }
2052 pub fn Specified(&self) -> ::windows::core::Result<bool> {
2053 let this = self;
2054 unsafe {
2055 let mut result__ = ::windows::core::zeroed::<bool>();
2056 (::windows::core::Interface::vtable(this).Specified)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2057 }
2058 }
2059 pub fn Value(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2060 let this = self;
2061 unsafe {
2062 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2063 (::windows::core::Interface::vtable(this).Value)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2064 }
2065 }
2066 pub fn SetValue(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2067 let this = self;
2068 unsafe { (::windows::core::Interface::vtable(this).SetValue)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
2069 }
2070 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2071 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2072 unsafe {
2073 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2074 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2075 }
2076 }
2077 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
2078 where
2079 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2080 {
2081 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2082 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
2083 }
2084 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
2085 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2086 unsafe {
2087 let mut result__ = ::windows::core::zeroed::<NodeType>();
2088 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2089 }
2090 }
2091 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2092 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2093 unsafe {
2094 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2095 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2096 }
2097 }
2098 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
2099 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2100 unsafe {
2101 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2102 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2103 }
2104 }
2105 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
2106 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2107 unsafe {
2108 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2109 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2110 }
2111 }
2112 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
2113 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2114 unsafe {
2115 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2116 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2117 }
2118 }
2119 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
2120 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2121 unsafe {
2122 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2123 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2124 }
2125 }
2126 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
2127 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2128 unsafe {
2129 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2130 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2131 }
2132 }
2133 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
2134 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2135 unsafe {
2136 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2137 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2138 }
2139 }
2140 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
2141 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2142 unsafe {
2143 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
2144 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2145 }
2146 }
2147 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
2148 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2149 unsafe {
2150 let mut result__ = ::windows::core::zeroed::<bool>();
2151 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2152 }
2153 }
2154 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
2155 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2156 unsafe {
2157 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
2158 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2159 }
2160 }
2161 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
2162 where
2163 P0: ::windows::core::TryIntoParam<IXmlNode>,
2164 P1: ::windows::core::TryIntoParam<IXmlNode>,
2165 {
2166 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2167 unsafe {
2168 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2169 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2170 }
2171 }
2172 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
2173 where
2174 P0: ::windows::core::TryIntoParam<IXmlNode>,
2175 P1: ::windows::core::TryIntoParam<IXmlNode>,
2176 {
2177 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2178 unsafe {
2179 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2180 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2181 }
2182 }
2183 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
2184 where
2185 P0: ::windows::core::TryIntoParam<IXmlNode>,
2186 {
2187 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2188 unsafe {
2189 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2190 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
2191 }
2192 }
2193 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
2194 where
2195 P0: ::windows::core::TryIntoParam<IXmlNode>,
2196 {
2197 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2198 unsafe {
2199 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2200 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2201 }
2202 }
2203 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
2204 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2205 unsafe {
2206 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2207 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
2208 }
2209 }
2210 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2211 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2212 unsafe {
2213 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2214 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2215 }
2216 }
2217 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2218 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2219 unsafe {
2220 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2221 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2222 }
2223 }
2224 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2225 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2226 unsafe {
2227 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2228 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2229 }
2230 }
2231 pub fn Normalize(&self) -> ::windows::core::Result<()> {
2232 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2233 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
2234 }
2235 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
2236 where
2237 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2238 {
2239 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2240 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
2241 }
2242 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
2243 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2244 unsafe {
2245 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2246 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
2247 }
2248 }
2249 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
2250 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2251 unsafe {
2252 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2253 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
2254 }
2255 }
2256 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
2257 where
2258 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2259 {
2260 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2261 unsafe {
2262 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2263 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
2264 }
2265 }
2266 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
2267 where
2268 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2269 {
2270 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2271 unsafe {
2272 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2273 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
2274 }
2275 }
2276 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2277 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2278 unsafe {
2279 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2280 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2281 }
2282 }
2283 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2284 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2285 unsafe {
2286 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2287 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2288 }
2289 }
2290 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2291 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2292 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
2293 }
2294}
2295impl ::core::cmp::PartialEq for XmlAttribute {
2296 fn eq(&self, other: &Self) -> bool {
2297 self.0 == other.0
2298 }
2299}
2300impl ::core::cmp::Eq for XmlAttribute {}
2301impl ::core::fmt::Debug for XmlAttribute {
2302 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2303 f.debug_tuple("XmlAttribute").field(&self.0).finish()
2304 }
2305}
2306impl ::windows::core::RuntimeType for XmlAttribute {
2307 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlAttribute;{ac144aa4-b4f1-4db6-b206-8a22c308db0a})");
2308}
2309impl ::core::clone::Clone for XmlAttribute {
2310 fn clone(&self) -> Self {
2311 Self(self.0.clone())
2312 }
2313}
2314unsafe impl ::windows::core::Interface for XmlAttribute {
2315 type Vtable = IXmlAttribute_Vtbl;
2316}
2317unsafe impl ::windows::core::ComInterface for XmlAttribute {
2318 const IID: ::windows::core::GUID = <IXmlAttribute as ::windows::core::ComInterface>::IID;
2319}
2320impl ::windows::core::RuntimeName for XmlAttribute {
2321 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlAttribute";
2322}
2323::windows::imp::interface_hierarchy!(XmlAttribute, ::windows::core::IUnknown, ::windows::core::IInspectable);
2324impl ::windows::core::CanTryInto<IXmlNode> for XmlAttribute {}
2325impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlAttribute {}
2326impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlAttribute {}
2327unsafe impl ::core::marker::Send for XmlAttribute {}
2328unsafe impl ::core::marker::Sync for XmlAttribute {}
2329#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
2330#[repr(transparent)]
2331pub struct XmlCDataSection(::windows::core::IUnknown);
2332impl XmlCDataSection {
2333 pub fn Data(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2334 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2335 unsafe {
2336 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2337 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2338 }
2339 }
2340 pub fn SetData(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2341 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2342 unsafe { (::windows::core::Interface::vtable(this).SetData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
2343 }
2344 pub fn Length(&self) -> ::windows::core::Result<u32> {
2345 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2346 unsafe {
2347 let mut result__ = ::windows::core::zeroed::<u32>();
2348 (::windows::core::Interface::vtable(this).Length)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2349 }
2350 }
2351 pub fn SubstringData(&self, offset: u32, count: u32) -> ::windows::core::Result<::windows::core::HSTRING> {
2352 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2353 unsafe {
2354 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2355 (::windows::core::Interface::vtable(this).SubstringData)(::windows::core::Interface::as_raw(this), offset, count, &mut result__).from_abi(result__)
2356 }
2357 }
2358 pub fn AppendData(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2359 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2360 unsafe { (::windows::core::Interface::vtable(this).AppendData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data)).ok() }
2361 }
2362 pub fn InsertData(&self, offset: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2363 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2364 unsafe { (::windows::core::Interface::vtable(this).InsertData)(::windows::core::Interface::as_raw(this), offset, ::core::mem::transmute_copy(data)).ok() }
2365 }
2366 pub fn DeleteData(&self, offset: u32, count: u32) -> ::windows::core::Result<()> {
2367 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2368 unsafe { (::windows::core::Interface::vtable(this).DeleteData)(::windows::core::Interface::as_raw(this), offset, count).ok() }
2369 }
2370 pub fn ReplaceData(&self, offset: u32, count: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2371 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2372 unsafe { (::windows::core::Interface::vtable(this).ReplaceData)(::windows::core::Interface::as_raw(this), offset, count, ::core::mem::transmute_copy(data)).ok() }
2373 }
2374 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2375 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2376 unsafe {
2377 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2378 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2379 }
2380 }
2381 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
2382 where
2383 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2384 {
2385 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2386 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
2387 }
2388 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
2389 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2390 unsafe {
2391 let mut result__ = ::windows::core::zeroed::<NodeType>();
2392 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2393 }
2394 }
2395 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2396 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2397 unsafe {
2398 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2399 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2400 }
2401 }
2402 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
2403 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2404 unsafe {
2405 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2406 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2407 }
2408 }
2409 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
2410 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2411 unsafe {
2412 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2413 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2414 }
2415 }
2416 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
2417 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2418 unsafe {
2419 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2420 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2421 }
2422 }
2423 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
2424 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2425 unsafe {
2426 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2427 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2428 }
2429 }
2430 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
2431 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2432 unsafe {
2433 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2434 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2435 }
2436 }
2437 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
2438 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2439 unsafe {
2440 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2441 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2442 }
2443 }
2444 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
2445 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2446 unsafe {
2447 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
2448 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2449 }
2450 }
2451 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
2452 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2453 unsafe {
2454 let mut result__ = ::windows::core::zeroed::<bool>();
2455 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2456 }
2457 }
2458 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
2459 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2460 unsafe {
2461 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
2462 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2463 }
2464 }
2465 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
2466 where
2467 P0: ::windows::core::TryIntoParam<IXmlNode>,
2468 P1: ::windows::core::TryIntoParam<IXmlNode>,
2469 {
2470 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2471 unsafe {
2472 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2473 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2474 }
2475 }
2476 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
2477 where
2478 P0: ::windows::core::TryIntoParam<IXmlNode>,
2479 P1: ::windows::core::TryIntoParam<IXmlNode>,
2480 {
2481 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2482 unsafe {
2483 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2484 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2485 }
2486 }
2487 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
2488 where
2489 P0: ::windows::core::TryIntoParam<IXmlNode>,
2490 {
2491 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2492 unsafe {
2493 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2494 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
2495 }
2496 }
2497 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
2498 where
2499 P0: ::windows::core::TryIntoParam<IXmlNode>,
2500 {
2501 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2502 unsafe {
2503 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2504 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2505 }
2506 }
2507 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
2508 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2509 unsafe {
2510 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2511 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
2512 }
2513 }
2514 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2515 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2516 unsafe {
2517 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2518 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2519 }
2520 }
2521 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2522 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2523 unsafe {
2524 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2525 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2526 }
2527 }
2528 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2529 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2530 unsafe {
2531 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2532 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2533 }
2534 }
2535 pub fn Normalize(&self) -> ::windows::core::Result<()> {
2536 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2537 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
2538 }
2539 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
2540 where
2541 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2542 {
2543 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2544 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
2545 }
2546 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
2547 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2548 unsafe {
2549 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2550 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
2551 }
2552 }
2553 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
2554 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2555 unsafe {
2556 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2557 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
2558 }
2559 }
2560 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
2561 where
2562 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2563 {
2564 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2565 unsafe {
2566 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2567 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
2568 }
2569 }
2570 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
2571 where
2572 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2573 {
2574 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2575 unsafe {
2576 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2577 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
2578 }
2579 }
2580 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2581 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2582 unsafe {
2583 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2584 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2585 }
2586 }
2587 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2588 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2589 unsafe {
2590 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2591 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2592 }
2593 }
2594 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2595 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2596 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
2597 }
2598 pub fn SplitText(&self, offset: u32) -> ::windows::core::Result<IXmlText> {
2599 let this = &::windows::core::ComInterface::cast::<IXmlText>(self)?;
2600 unsafe {
2601 let mut result__ = ::windows::core::zeroed::<IXmlText>();
2602 (::windows::core::Interface::vtable(this).SplitText)(::windows::core::Interface::as_raw(this), offset, &mut result__).from_abi(result__)
2603 }
2604 }
2605}
2606impl ::core::cmp::PartialEq for XmlCDataSection {
2607 fn eq(&self, other: &Self) -> bool {
2608 self.0 == other.0
2609 }
2610}
2611impl ::core::cmp::Eq for XmlCDataSection {}
2612impl ::core::fmt::Debug for XmlCDataSection {
2613 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2614 f.debug_tuple("XmlCDataSection").field(&self.0).finish()
2615 }
2616}
2617impl ::windows::core::RuntimeType for XmlCDataSection {
2618 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlCDataSection;{4d04b46f-c8bd-45b4-8899-0400d7c2c60f})");
2619}
2620impl ::core::clone::Clone for XmlCDataSection {
2621 fn clone(&self) -> Self {
2622 Self(self.0.clone())
2623 }
2624}
2625unsafe impl ::windows::core::Interface for XmlCDataSection {
2626 type Vtable = IXmlCDataSection_Vtbl;
2627}
2628unsafe impl ::windows::core::ComInterface for XmlCDataSection {
2629 const IID: ::windows::core::GUID = <IXmlCDataSection as ::windows::core::ComInterface>::IID;
2630}
2631impl ::windows::core::RuntimeName for XmlCDataSection {
2632 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlCDataSection";
2633}
2634::windows::imp::interface_hierarchy!(XmlCDataSection, ::windows::core::IUnknown, ::windows::core::IInspectable);
2635impl ::windows::core::CanTryInto<IXmlCharacterData> for XmlCDataSection {}
2636impl ::windows::core::CanTryInto<IXmlNode> for XmlCDataSection {}
2637impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlCDataSection {}
2638impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlCDataSection {}
2639impl ::windows::core::CanTryInto<IXmlText> for XmlCDataSection {}
2640unsafe impl ::core::marker::Send for XmlCDataSection {}
2641unsafe impl ::core::marker::Sync for XmlCDataSection {}
2642#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
2643#[repr(transparent)]
2644pub struct XmlComment(::windows::core::IUnknown);
2645impl XmlComment {
2646 pub fn Data(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2647 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2648 unsafe {
2649 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2650 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2651 }
2652 }
2653 pub fn SetData(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2654 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2655 unsafe { (::windows::core::Interface::vtable(this).SetData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
2656 }
2657 pub fn Length(&self) -> ::windows::core::Result<u32> {
2658 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2659 unsafe {
2660 let mut result__ = ::windows::core::zeroed::<u32>();
2661 (::windows::core::Interface::vtable(this).Length)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2662 }
2663 }
2664 pub fn SubstringData(&self, offset: u32, count: u32) -> ::windows::core::Result<::windows::core::HSTRING> {
2665 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2666 unsafe {
2667 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2668 (::windows::core::Interface::vtable(this).SubstringData)(::windows::core::Interface::as_raw(this), offset, count, &mut result__).from_abi(result__)
2669 }
2670 }
2671 pub fn AppendData(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2672 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2673 unsafe { (::windows::core::Interface::vtable(this).AppendData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data)).ok() }
2674 }
2675 pub fn InsertData(&self, offset: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2676 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2677 unsafe { (::windows::core::Interface::vtable(this).InsertData)(::windows::core::Interface::as_raw(this), offset, ::core::mem::transmute_copy(data)).ok() }
2678 }
2679 pub fn DeleteData(&self, offset: u32, count: u32) -> ::windows::core::Result<()> {
2680 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2681 unsafe { (::windows::core::Interface::vtable(this).DeleteData)(::windows::core::Interface::as_raw(this), offset, count).ok() }
2682 }
2683 pub fn ReplaceData(&self, offset: u32, count: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2684 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
2685 unsafe { (::windows::core::Interface::vtable(this).ReplaceData)(::windows::core::Interface::as_raw(this), offset, count, ::core::mem::transmute_copy(data)).ok() }
2686 }
2687 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2688 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2689 unsafe {
2690 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2691 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2692 }
2693 }
2694 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
2695 where
2696 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2697 {
2698 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2699 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
2700 }
2701 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
2702 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2703 unsafe {
2704 let mut result__ = ::windows::core::zeroed::<NodeType>();
2705 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2706 }
2707 }
2708 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2709 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2710 unsafe {
2711 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2712 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2713 }
2714 }
2715 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
2716 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2717 unsafe {
2718 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2719 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2720 }
2721 }
2722 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
2723 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2724 unsafe {
2725 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2726 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2727 }
2728 }
2729 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
2730 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2731 unsafe {
2732 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2733 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2734 }
2735 }
2736 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
2737 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2738 unsafe {
2739 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2740 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2741 }
2742 }
2743 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
2744 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2745 unsafe {
2746 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2747 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2748 }
2749 }
2750 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
2751 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2752 unsafe {
2753 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2754 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2755 }
2756 }
2757 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
2758 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2759 unsafe {
2760 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
2761 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2762 }
2763 }
2764 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
2765 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2766 unsafe {
2767 let mut result__ = ::windows::core::zeroed::<bool>();
2768 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2769 }
2770 }
2771 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
2772 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2773 unsafe {
2774 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
2775 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2776 }
2777 }
2778 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
2779 where
2780 P0: ::windows::core::TryIntoParam<IXmlNode>,
2781 P1: ::windows::core::TryIntoParam<IXmlNode>,
2782 {
2783 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2784 unsafe {
2785 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2786 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2787 }
2788 }
2789 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
2790 where
2791 P0: ::windows::core::TryIntoParam<IXmlNode>,
2792 P1: ::windows::core::TryIntoParam<IXmlNode>,
2793 {
2794 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2795 unsafe {
2796 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2797 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2798 }
2799 }
2800 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
2801 where
2802 P0: ::windows::core::TryIntoParam<IXmlNode>,
2803 {
2804 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2805 unsafe {
2806 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2807 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
2808 }
2809 }
2810 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
2811 where
2812 P0: ::windows::core::TryIntoParam<IXmlNode>,
2813 {
2814 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2815 unsafe {
2816 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2817 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
2818 }
2819 }
2820 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
2821 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2822 unsafe {
2823 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2824 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
2825 }
2826 }
2827 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2828 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2829 unsafe {
2830 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2831 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2832 }
2833 }
2834 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2835 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2836 unsafe {
2837 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2838 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2839 }
2840 }
2841 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
2842 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2843 unsafe {
2844 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
2845 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2846 }
2847 }
2848 pub fn Normalize(&self) -> ::windows::core::Result<()> {
2849 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2850 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
2851 }
2852 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
2853 where
2854 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2855 {
2856 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
2857 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
2858 }
2859 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
2860 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2861 unsafe {
2862 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2863 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
2864 }
2865 }
2866 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
2867 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2868 unsafe {
2869 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2870 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
2871 }
2872 }
2873 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
2874 where
2875 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2876 {
2877 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2878 unsafe {
2879 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
2880 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
2881 }
2882 }
2883 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
2884 where
2885 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
2886 {
2887 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
2888 unsafe {
2889 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
2890 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
2891 }
2892 }
2893 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2894 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2895 unsafe {
2896 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2897 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2898 }
2899 }
2900 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
2901 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2902 unsafe {
2903 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
2904 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2905 }
2906 }
2907 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
2908 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
2909 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
2910 }
2911}
2912impl ::core::cmp::PartialEq for XmlComment {
2913 fn eq(&self, other: &Self) -> bool {
2914 self.0 == other.0
2915 }
2916}
2917impl ::core::cmp::Eq for XmlComment {}
2918impl ::core::fmt::Debug for XmlComment {
2919 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2920 f.debug_tuple("XmlComment").field(&self.0).finish()
2921 }
2922}
2923impl ::windows::core::RuntimeType for XmlComment {
2924 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlComment;{bca474d5-b61f-4611-9cac-2e92e3476d47})");
2925}
2926impl ::core::clone::Clone for XmlComment {
2927 fn clone(&self) -> Self {
2928 Self(self.0.clone())
2929 }
2930}
2931unsafe impl ::windows::core::Interface for XmlComment {
2932 type Vtable = IXmlComment_Vtbl;
2933}
2934unsafe impl ::windows::core::ComInterface for XmlComment {
2935 const IID: ::windows::core::GUID = <IXmlComment as ::windows::core::ComInterface>::IID;
2936}
2937impl ::windows::core::RuntimeName for XmlComment {
2938 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlComment";
2939}
2940::windows::imp::interface_hierarchy!(XmlComment, ::windows::core::IUnknown, ::windows::core::IInspectable);
2941impl ::windows::core::CanTryInto<IXmlCharacterData> for XmlComment {}
2942impl ::windows::core::CanTryInto<IXmlNode> for XmlComment {}
2943impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlComment {}
2944impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlComment {}
2945unsafe impl ::core::marker::Send for XmlComment {}
2946unsafe impl ::core::marker::Sync for XmlComment {}
2947#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
2948#[repr(transparent)]
2949pub struct XmlDocument(::windows::core::IUnknown);
2950impl XmlDocument {
2951 pub fn new() -> ::windows::core::Result<Self> {
2952 Self::IActivationFactory(|f| f.ActivateInstance::<Self>())
2953 }
2954 fn IActivationFactory<R, F: FnOnce(&::windows::imp::IGenericFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
2955 static SHARED: ::windows::imp::FactoryCache<XmlDocument, ::windows::imp::IGenericFactory> = ::windows::imp::FactoryCache::new();
2956 SHARED.call(callback)
2957 }
2958 pub fn Doctype(&self) -> ::windows::core::Result<XmlDocumentType> {
2959 let this = self;
2960 unsafe {
2961 let mut result__ = ::windows::core::zeroed::<XmlDocumentType>();
2962 (::windows::core::Interface::vtable(this).Doctype)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2963 }
2964 }
2965 pub fn Implementation(&self) -> ::windows::core::Result<XmlDomImplementation> {
2966 let this = self;
2967 unsafe {
2968 let mut result__ = ::windows::core::zeroed::<XmlDomImplementation>();
2969 (::windows::core::Interface::vtable(this).Implementation)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2970 }
2971 }
2972 pub fn DocumentElement(&self) -> ::windows::core::Result<XmlElement> {
2973 let this = self;
2974 unsafe {
2975 let mut result__ = ::windows::core::zeroed::<XmlElement>();
2976 (::windows::core::Interface::vtable(this).DocumentElement)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2977 }
2978 }
2979 pub fn CreateElement(&self, tagname: &::windows::core::HSTRING) -> ::windows::core::Result<XmlElement> {
2980 let this = self;
2981 unsafe {
2982 let mut result__ = ::windows::core::zeroed::<XmlElement>();
2983 (::windows::core::Interface::vtable(this).CreateElement)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(tagname), &mut result__).from_abi(result__)
2984 }
2985 }
2986 pub fn CreateDocumentFragment(&self) -> ::windows::core::Result<XmlDocumentFragment> {
2987 let this = self;
2988 unsafe {
2989 let mut result__ = ::windows::core::zeroed::<XmlDocumentFragment>();
2990 (::windows::core::Interface::vtable(this).CreateDocumentFragment)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
2991 }
2992 }
2993 pub fn CreateTextNode(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<XmlText> {
2994 let this = self;
2995 unsafe {
2996 let mut result__ = ::windows::core::zeroed::<XmlText>();
2997 (::windows::core::Interface::vtable(this).CreateTextNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data), &mut result__).from_abi(result__)
2998 }
2999 }
3000 pub fn CreateComment(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<XmlComment> {
3001 let this = self;
3002 unsafe {
3003 let mut result__ = ::windows::core::zeroed::<XmlComment>();
3004 (::windows::core::Interface::vtable(this).CreateComment)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data), &mut result__).from_abi(result__)
3005 }
3006 }
3007 pub fn CreateProcessingInstruction(&self, target: &::windows::core::HSTRING, data: &::windows::core::HSTRING) -> ::windows::core::Result<XmlProcessingInstruction> {
3008 let this = self;
3009 unsafe {
3010 let mut result__ = ::windows::core::zeroed::<XmlProcessingInstruction>();
3011 (::windows::core::Interface::vtable(this).CreateProcessingInstruction)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(target), ::core::mem::transmute_copy(data), &mut result__).from_abi(result__)
3012 }
3013 }
3014 pub fn CreateAttribute(&self, name: &::windows::core::HSTRING) -> ::windows::core::Result<XmlAttribute> {
3015 let this = self;
3016 unsafe {
3017 let mut result__ = ::windows::core::zeroed::<XmlAttribute>();
3018 (::windows::core::Interface::vtable(this).CreateAttribute)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(name), &mut result__).from_abi(result__)
3019 }
3020 }
3021 pub fn CreateEntityReference(&self, name: &::windows::core::HSTRING) -> ::windows::core::Result<XmlEntityReference> {
3022 let this = self;
3023 unsafe {
3024 let mut result__ = ::windows::core::zeroed::<XmlEntityReference>();
3025 (::windows::core::Interface::vtable(this).CreateEntityReference)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(name), &mut result__).from_abi(result__)
3026 }
3027 }
3028 pub fn GetElementsByTagName(&self, tagname: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
3029 let this = self;
3030 unsafe {
3031 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3032 (::windows::core::Interface::vtable(this).GetElementsByTagName)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(tagname), &mut result__).from_abi(result__)
3033 }
3034 }
3035 pub fn CreateCDataSection(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<XmlCDataSection> {
3036 let this = self;
3037 unsafe {
3038 let mut result__ = ::windows::core::zeroed::<XmlCDataSection>();
3039 (::windows::core::Interface::vtable(this).CreateCDataSection)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data), &mut result__).from_abi(result__)
3040 }
3041 }
3042 pub fn DocumentUri(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3043 let this = self;
3044 unsafe {
3045 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3046 (::windows::core::Interface::vtable(this).DocumentUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3047 }
3048 }
3049 pub fn CreateAttributeNS<P0>(&self, namespaceuri: P0, qualifiedname: &::windows::core::HSTRING) -> ::windows::core::Result<XmlAttribute>
3050 where
3051 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3052 {
3053 let this = self;
3054 unsafe {
3055 let mut result__ = ::windows::core::zeroed::<XmlAttribute>();
3056 (::windows::core::Interface::vtable(this).CreateAttributeNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(qualifiedname), &mut result__).from_abi(result__)
3057 }
3058 }
3059 pub fn CreateElementNS<P0>(&self, namespaceuri: P0, qualifiedname: &::windows::core::HSTRING) -> ::windows::core::Result<XmlElement>
3060 where
3061 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3062 {
3063 let this = self;
3064 unsafe {
3065 let mut result__ = ::windows::core::zeroed::<XmlElement>();
3066 (::windows::core::Interface::vtable(this).CreateElementNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(qualifiedname), &mut result__).from_abi(result__)
3067 }
3068 }
3069 pub fn GetElementById(&self, elementid: &::windows::core::HSTRING) -> ::windows::core::Result<XmlElement> {
3070 let this = self;
3071 unsafe {
3072 let mut result__ = ::windows::core::zeroed::<XmlElement>();
3073 (::windows::core::Interface::vtable(this).GetElementById)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(elementid), &mut result__).from_abi(result__)
3074 }
3075 }
3076 pub fn ImportNode<P0>(&self, node: P0, deep: bool) -> ::windows::core::Result<IXmlNode>
3077 where
3078 P0: ::windows::core::TryIntoParam<IXmlNode>,
3079 {
3080 let this = self;
3081 unsafe {
3082 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3083 (::windows::core::Interface::vtable(this).ImportNode)(::windows::core::Interface::as_raw(this), node.try_into_param()?.abi(), deep, &mut result__).from_abi(result__)
3084 }
3085 }
3086 pub fn LoadXml(&self, xml: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
3087 let this = &::windows::core::ComInterface::cast::<IXmlDocumentIO>(self)?;
3088 unsafe { (::windows::core::Interface::vtable(this).LoadXml)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xml)).ok() }
3089 }
3090 pub fn LoadXmlWithSettings(&self, xml: &::windows::core::HSTRING, loadsettings: &XmlLoadSettings) -> ::windows::core::Result<()> {
3091 let this = &::windows::core::ComInterface::cast::<IXmlDocumentIO>(self)?;
3092 unsafe { (::windows::core::Interface::vtable(this).LoadXmlWithSettings)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xml), ::core::mem::transmute_copy(loadsettings)).ok() }
3093 }
3094 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
3095 #[cfg(all(feature = "Foundation", feature = "Storage"))]
3096 pub fn SaveToFileAsync<P0>(&self, file: P0) -> ::windows::core::Result<super::super::super::Foundation::IAsyncAction>
3097 where
3098 P0: ::windows::core::TryIntoParam<super::super::super::Storage::IStorageFile>,
3099 {
3100 let this = &::windows::core::ComInterface::cast::<IXmlDocumentIO>(self)?;
3101 unsafe {
3102 let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::IAsyncAction>();
3103 (::windows::core::Interface::vtable(this).SaveToFileAsync)(::windows::core::Interface::as_raw(this), file.try_into_param()?.abi(), &mut result__).from_abi(result__)
3104 }
3105 }
3106 #[doc = "*Required features: `\"Storage_Streams\"`*"]
3107 #[cfg(feature = "Storage_Streams")]
3108 pub fn LoadXmlFromBuffer<P0>(&self, buffer: P0) -> ::windows::core::Result<()>
3109 where
3110 P0: ::windows::core::TryIntoParam<super::super::super::Storage::Streams::IBuffer>,
3111 {
3112 let this = &::windows::core::ComInterface::cast::<IXmlDocumentIO2>(self)?;
3113 unsafe { (::windows::core::Interface::vtable(this).LoadXmlFromBuffer)(::windows::core::Interface::as_raw(this), buffer.try_into_param()?.abi()).ok() }
3114 }
3115 #[doc = "*Required features: `\"Storage_Streams\"`*"]
3116 #[cfg(feature = "Storage_Streams")]
3117 pub fn LoadXmlFromBufferWithSettings<P0>(&self, buffer: P0, loadsettings: &XmlLoadSettings) -> ::windows::core::Result<()>
3118 where
3119 P0: ::windows::core::TryIntoParam<super::super::super::Storage::Streams::IBuffer>,
3120 {
3121 let this = &::windows::core::ComInterface::cast::<IXmlDocumentIO2>(self)?;
3122 unsafe { (::windows::core::Interface::vtable(this).LoadXmlFromBufferWithSettings)(::windows::core::Interface::as_raw(this), buffer.try_into_param()?.abi(), ::core::mem::transmute_copy(loadsettings)).ok() }
3123 }
3124 #[doc = "*Required features: `\"Foundation\"`*"]
3125 #[cfg(feature = "Foundation")]
3126 pub fn LoadFromUriAsync(uri: &super::super::super::Foundation::Uri) -> ::windows::core::Result<super::super::super::Foundation::IAsyncOperation<XmlDocument>> {
3127 Self::IXmlDocumentStatics(|this| unsafe {
3128 let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::IAsyncOperation<XmlDocument>>();
3129 (::windows::core::Interface::vtable(this).LoadFromUriAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(uri), &mut result__).from_abi(result__)
3130 })
3131 }
3132 #[doc = "*Required features: `\"Foundation\"`*"]
3133 #[cfg(feature = "Foundation")]
3134 pub fn LoadFromUriWithSettingsAsync(uri: &super::super::super::Foundation::Uri, loadsettings: &XmlLoadSettings) -> ::windows::core::Result<super::super::super::Foundation::IAsyncOperation<XmlDocument>> {
3135 Self::IXmlDocumentStatics(|this| unsafe {
3136 let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::IAsyncOperation<XmlDocument>>();
3137 (::windows::core::Interface::vtable(this).LoadFromUriWithSettingsAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(uri), ::core::mem::transmute_copy(loadsettings), &mut result__).from_abi(result__)
3138 })
3139 }
3140 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
3141 #[cfg(all(feature = "Foundation", feature = "Storage"))]
3142 pub fn LoadFromFileAsync<P0>(file: P0) -> ::windows::core::Result<super::super::super::Foundation::IAsyncOperation<XmlDocument>>
3143 where
3144 P0: ::windows::core::TryIntoParam<super::super::super::Storage::IStorageFile>,
3145 {
3146 Self::IXmlDocumentStatics(|this| unsafe {
3147 let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::IAsyncOperation<XmlDocument>>();
3148 (::windows::core::Interface::vtable(this).LoadFromFileAsync)(::windows::core::Interface::as_raw(this), file.try_into_param()?.abi(), &mut result__).from_abi(result__)
3149 })
3150 }
3151 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
3152 #[cfg(all(feature = "Foundation", feature = "Storage"))]
3153 pub fn LoadFromFileWithSettingsAsync<P0>(file: P0, loadsettings: &XmlLoadSettings) -> ::windows::core::Result<super::super::super::Foundation::IAsyncOperation<XmlDocument>>
3154 where
3155 P0: ::windows::core::TryIntoParam<super::super::super::Storage::IStorageFile>,
3156 {
3157 Self::IXmlDocumentStatics(|this| unsafe {
3158 let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::IAsyncOperation<XmlDocument>>();
3159 (::windows::core::Interface::vtable(this).LoadFromFileWithSettingsAsync)(::windows::core::Interface::as_raw(this), file.try_into_param()?.abi(), ::core::mem::transmute_copy(loadsettings), &mut result__).from_abi(result__)
3160 })
3161 }
3162 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3163 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3164 unsafe {
3165 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3166 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3167 }
3168 }
3169 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
3170 where
3171 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3172 {
3173 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3174 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
3175 }
3176 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
3177 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3178 unsafe {
3179 let mut result__ = ::windows::core::zeroed::<NodeType>();
3180 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3181 }
3182 }
3183 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3184 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3185 unsafe {
3186 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3187 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3188 }
3189 }
3190 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
3191 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3192 unsafe {
3193 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3194 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3195 }
3196 }
3197 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
3198 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3199 unsafe {
3200 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3201 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3202 }
3203 }
3204 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
3205 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3206 unsafe {
3207 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3208 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3209 }
3210 }
3211 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
3212 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3213 unsafe {
3214 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3215 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3216 }
3217 }
3218 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
3219 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3220 unsafe {
3221 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3222 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3223 }
3224 }
3225 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
3226 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3227 unsafe {
3228 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3229 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3230 }
3231 }
3232 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
3233 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3234 unsafe {
3235 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
3236 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3237 }
3238 }
3239 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
3240 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3241 unsafe {
3242 let mut result__ = ::windows::core::zeroed::<bool>();
3243 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3244 }
3245 }
3246 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
3247 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3248 unsafe {
3249 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
3250 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3251 }
3252 }
3253 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
3254 where
3255 P0: ::windows::core::TryIntoParam<IXmlNode>,
3256 P1: ::windows::core::TryIntoParam<IXmlNode>,
3257 {
3258 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3259 unsafe {
3260 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3261 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3262 }
3263 }
3264 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
3265 where
3266 P0: ::windows::core::TryIntoParam<IXmlNode>,
3267 P1: ::windows::core::TryIntoParam<IXmlNode>,
3268 {
3269 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3270 unsafe {
3271 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3272 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3273 }
3274 }
3275 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
3276 where
3277 P0: ::windows::core::TryIntoParam<IXmlNode>,
3278 {
3279 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3280 unsafe {
3281 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3282 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
3283 }
3284 }
3285 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
3286 where
3287 P0: ::windows::core::TryIntoParam<IXmlNode>,
3288 {
3289 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3290 unsafe {
3291 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3292 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3293 }
3294 }
3295 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
3296 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3297 unsafe {
3298 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3299 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
3300 }
3301 }
3302 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3303 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3304 unsafe {
3305 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3306 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3307 }
3308 }
3309 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3310 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3311 unsafe {
3312 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3313 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3314 }
3315 }
3316 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3317 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3318 unsafe {
3319 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3320 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3321 }
3322 }
3323 pub fn Normalize(&self) -> ::windows::core::Result<()> {
3324 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3325 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
3326 }
3327 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
3328 where
3329 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3330 {
3331 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3332 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
3333 }
3334 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
3335 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3336 unsafe {
3337 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3338 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
3339 }
3340 }
3341 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
3342 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3343 unsafe {
3344 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3345 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
3346 }
3347 }
3348 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
3349 where
3350 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3351 {
3352 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3353 unsafe {
3354 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3355 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
3356 }
3357 }
3358 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
3359 where
3360 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3361 {
3362 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3363 unsafe {
3364 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3365 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
3366 }
3367 }
3368 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3369 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3370 unsafe {
3371 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3372 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3373 }
3374 }
3375 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3376 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3377 unsafe {
3378 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3379 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3380 }
3381 }
3382 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
3383 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3384 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
3385 }
3386 #[doc(hidden)]
3387 pub fn IXmlDocumentStatics<R, F: FnOnce(&IXmlDocumentStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
3388 static SHARED: ::windows::imp::FactoryCache<XmlDocument, IXmlDocumentStatics> = ::windows::imp::FactoryCache::new();
3389 SHARED.call(callback)
3390 }
3391}
3392impl ::core::cmp::PartialEq for XmlDocument {
3393 fn eq(&self, other: &Self) -> bool {
3394 self.0 == other.0
3395 }
3396}
3397impl ::core::cmp::Eq for XmlDocument {}
3398impl ::core::fmt::Debug for XmlDocument {
3399 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3400 f.debug_tuple("XmlDocument").field(&self.0).finish()
3401 }
3402}
3403impl ::windows::core::RuntimeType for XmlDocument {
3404 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlDocument;{f7f3a506-1e87-42d6-bcfb-b8c809fa5494})");
3405}
3406impl ::core::clone::Clone for XmlDocument {
3407 fn clone(&self) -> Self {
3408 Self(self.0.clone())
3409 }
3410}
3411unsafe impl ::windows::core::Interface for XmlDocument {
3412 type Vtable = IXmlDocument_Vtbl;
3413}
3414unsafe impl ::windows::core::ComInterface for XmlDocument {
3415 const IID: ::windows::core::GUID = <IXmlDocument as ::windows::core::ComInterface>::IID;
3416}
3417impl ::windows::core::RuntimeName for XmlDocument {
3418 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlDocument";
3419}
3420::windows::imp::interface_hierarchy!(XmlDocument, ::windows::core::IUnknown, ::windows::core::IInspectable);
3421impl ::windows::core::CanTryInto<IXmlNode> for XmlDocument {}
3422impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlDocument {}
3423impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlDocument {}
3424unsafe impl ::core::marker::Send for XmlDocument {}
3425unsafe impl ::core::marker::Sync for XmlDocument {}
3426#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
3427#[repr(transparent)]
3428pub struct XmlDocumentFragment(::windows::core::IUnknown);
3429impl XmlDocumentFragment {
3430 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3431 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3432 unsafe {
3433 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3434 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3435 }
3436 }
3437 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
3438 where
3439 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3440 {
3441 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3442 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
3443 }
3444 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
3445 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3446 unsafe {
3447 let mut result__ = ::windows::core::zeroed::<NodeType>();
3448 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3449 }
3450 }
3451 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3452 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3453 unsafe {
3454 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3455 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3456 }
3457 }
3458 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
3459 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3460 unsafe {
3461 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3462 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3463 }
3464 }
3465 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
3466 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3467 unsafe {
3468 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3469 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3470 }
3471 }
3472 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
3473 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3474 unsafe {
3475 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3476 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3477 }
3478 }
3479 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
3480 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3481 unsafe {
3482 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3483 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3484 }
3485 }
3486 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
3487 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3488 unsafe {
3489 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3490 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3491 }
3492 }
3493 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
3494 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3495 unsafe {
3496 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3497 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3498 }
3499 }
3500 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
3501 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3502 unsafe {
3503 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
3504 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3505 }
3506 }
3507 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
3508 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3509 unsafe {
3510 let mut result__ = ::windows::core::zeroed::<bool>();
3511 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3512 }
3513 }
3514 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
3515 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3516 unsafe {
3517 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
3518 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3519 }
3520 }
3521 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
3522 where
3523 P0: ::windows::core::TryIntoParam<IXmlNode>,
3524 P1: ::windows::core::TryIntoParam<IXmlNode>,
3525 {
3526 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3527 unsafe {
3528 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3529 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3530 }
3531 }
3532 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
3533 where
3534 P0: ::windows::core::TryIntoParam<IXmlNode>,
3535 P1: ::windows::core::TryIntoParam<IXmlNode>,
3536 {
3537 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3538 unsafe {
3539 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3540 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3541 }
3542 }
3543 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
3544 where
3545 P0: ::windows::core::TryIntoParam<IXmlNode>,
3546 {
3547 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3548 unsafe {
3549 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3550 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
3551 }
3552 }
3553 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
3554 where
3555 P0: ::windows::core::TryIntoParam<IXmlNode>,
3556 {
3557 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3558 unsafe {
3559 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3560 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3561 }
3562 }
3563 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
3564 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3565 unsafe {
3566 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3567 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
3568 }
3569 }
3570 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3571 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3572 unsafe {
3573 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3574 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3575 }
3576 }
3577 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3578 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3579 unsafe {
3580 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3581 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3582 }
3583 }
3584 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3585 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3586 unsafe {
3587 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3588 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3589 }
3590 }
3591 pub fn Normalize(&self) -> ::windows::core::Result<()> {
3592 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3593 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
3594 }
3595 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
3596 where
3597 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3598 {
3599 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3600 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
3601 }
3602 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
3603 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3604 unsafe {
3605 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3606 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
3607 }
3608 }
3609 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
3610 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3611 unsafe {
3612 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3613 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
3614 }
3615 }
3616 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
3617 where
3618 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3619 {
3620 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3621 unsafe {
3622 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3623 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
3624 }
3625 }
3626 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
3627 where
3628 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3629 {
3630 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3631 unsafe {
3632 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3633 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
3634 }
3635 }
3636 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3637 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3638 unsafe {
3639 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3640 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3641 }
3642 }
3643 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3644 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3645 unsafe {
3646 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3647 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3648 }
3649 }
3650 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
3651 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3652 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
3653 }
3654}
3655impl ::core::cmp::PartialEq for XmlDocumentFragment {
3656 fn eq(&self, other: &Self) -> bool {
3657 self.0 == other.0
3658 }
3659}
3660impl ::core::cmp::Eq for XmlDocumentFragment {}
3661impl ::core::fmt::Debug for XmlDocumentFragment {
3662 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3663 f.debug_tuple("XmlDocumentFragment").field(&self.0).finish()
3664 }
3665}
3666impl ::windows::core::RuntimeType for XmlDocumentFragment {
3667 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlDocumentFragment;{e2ea6a96-0c21-44a5-8bc9-9e4a262708ec})");
3668}
3669impl ::core::clone::Clone for XmlDocumentFragment {
3670 fn clone(&self) -> Self {
3671 Self(self.0.clone())
3672 }
3673}
3674unsafe impl ::windows::core::Interface for XmlDocumentFragment {
3675 type Vtable = IXmlDocumentFragment_Vtbl;
3676}
3677unsafe impl ::windows::core::ComInterface for XmlDocumentFragment {
3678 const IID: ::windows::core::GUID = <IXmlDocumentFragment as ::windows::core::ComInterface>::IID;
3679}
3680impl ::windows::core::RuntimeName for XmlDocumentFragment {
3681 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlDocumentFragment";
3682}
3683::windows::imp::interface_hierarchy!(XmlDocumentFragment, ::windows::core::IUnknown, ::windows::core::IInspectable);
3684impl ::windows::core::CanTryInto<IXmlNode> for XmlDocumentFragment {}
3685impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlDocumentFragment {}
3686impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlDocumentFragment {}
3687unsafe impl ::core::marker::Send for XmlDocumentFragment {}
3688unsafe impl ::core::marker::Sync for XmlDocumentFragment {}
3689#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
3690#[repr(transparent)]
3691pub struct XmlDocumentType(::windows::core::IUnknown);
3692impl XmlDocumentType {
3693 pub fn Name(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3694 let this = self;
3695 unsafe {
3696 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3697 (::windows::core::Interface::vtable(this).Name)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3698 }
3699 }
3700 pub fn Entities(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
3701 let this = self;
3702 unsafe {
3703 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
3704 (::windows::core::Interface::vtable(this).Entities)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3705 }
3706 }
3707 pub fn Notations(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
3708 let this = self;
3709 unsafe {
3710 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
3711 (::windows::core::Interface::vtable(this).Notations)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3712 }
3713 }
3714 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3715 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3716 unsafe {
3717 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3718 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3719 }
3720 }
3721 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
3722 where
3723 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3724 {
3725 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3726 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
3727 }
3728 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
3729 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3730 unsafe {
3731 let mut result__ = ::windows::core::zeroed::<NodeType>();
3732 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3733 }
3734 }
3735 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3736 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3737 unsafe {
3738 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3739 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3740 }
3741 }
3742 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
3743 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3744 unsafe {
3745 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3746 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3747 }
3748 }
3749 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
3750 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3751 unsafe {
3752 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3753 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3754 }
3755 }
3756 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
3757 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3758 unsafe {
3759 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3760 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3761 }
3762 }
3763 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
3764 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3765 unsafe {
3766 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3767 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3768 }
3769 }
3770 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
3771 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3772 unsafe {
3773 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3774 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3775 }
3776 }
3777 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
3778 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3779 unsafe {
3780 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3781 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3782 }
3783 }
3784 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
3785 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3786 unsafe {
3787 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
3788 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3789 }
3790 }
3791 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
3792 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3793 unsafe {
3794 let mut result__ = ::windows::core::zeroed::<bool>();
3795 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3796 }
3797 }
3798 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
3799 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3800 unsafe {
3801 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
3802 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3803 }
3804 }
3805 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
3806 where
3807 P0: ::windows::core::TryIntoParam<IXmlNode>,
3808 P1: ::windows::core::TryIntoParam<IXmlNode>,
3809 {
3810 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3811 unsafe {
3812 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3813 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3814 }
3815 }
3816 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
3817 where
3818 P0: ::windows::core::TryIntoParam<IXmlNode>,
3819 P1: ::windows::core::TryIntoParam<IXmlNode>,
3820 {
3821 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3822 unsafe {
3823 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3824 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3825 }
3826 }
3827 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
3828 where
3829 P0: ::windows::core::TryIntoParam<IXmlNode>,
3830 {
3831 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3832 unsafe {
3833 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3834 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
3835 }
3836 }
3837 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
3838 where
3839 P0: ::windows::core::TryIntoParam<IXmlNode>,
3840 {
3841 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3842 unsafe {
3843 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3844 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
3845 }
3846 }
3847 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
3848 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3849 unsafe {
3850 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3851 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
3852 }
3853 }
3854 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3855 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3856 unsafe {
3857 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3858 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3859 }
3860 }
3861 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3862 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3863 unsafe {
3864 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3865 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3866 }
3867 }
3868 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
3869 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3870 unsafe {
3871 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
3872 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3873 }
3874 }
3875 pub fn Normalize(&self) -> ::windows::core::Result<()> {
3876 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3877 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
3878 }
3879 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
3880 where
3881 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3882 {
3883 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
3884 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
3885 }
3886 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
3887 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3888 unsafe {
3889 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3890 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
3891 }
3892 }
3893 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
3894 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3895 unsafe {
3896 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3897 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
3898 }
3899 }
3900 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
3901 where
3902 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3903 {
3904 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3905 unsafe {
3906 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
3907 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
3908 }
3909 }
3910 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
3911 where
3912 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3913 {
3914 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
3915 unsafe {
3916 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
3917 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
3918 }
3919 }
3920 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3921 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3922 unsafe {
3923 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3924 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3925 }
3926 }
3927 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3928 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3929 unsafe {
3930 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3931 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3932 }
3933 }
3934 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
3935 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
3936 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
3937 }
3938}
3939impl ::core::cmp::PartialEq for XmlDocumentType {
3940 fn eq(&self, other: &Self) -> bool {
3941 self.0 == other.0
3942 }
3943}
3944impl ::core::cmp::Eq for XmlDocumentType {}
3945impl ::core::fmt::Debug for XmlDocumentType {
3946 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3947 f.debug_tuple("XmlDocumentType").field(&self.0).finish()
3948 }
3949}
3950impl ::windows::core::RuntimeType for XmlDocumentType {
3951 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlDocumentType;{f7342425-9781-4964-8e94-9b1c6dfc9bc7})");
3952}
3953impl ::core::clone::Clone for XmlDocumentType {
3954 fn clone(&self) -> Self {
3955 Self(self.0.clone())
3956 }
3957}
3958unsafe impl ::windows::core::Interface for XmlDocumentType {
3959 type Vtable = IXmlDocumentType_Vtbl;
3960}
3961unsafe impl ::windows::core::ComInterface for XmlDocumentType {
3962 const IID: ::windows::core::GUID = <IXmlDocumentType as ::windows::core::ComInterface>::IID;
3963}
3964impl ::windows::core::RuntimeName for XmlDocumentType {
3965 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlDocumentType";
3966}
3967::windows::imp::interface_hierarchy!(XmlDocumentType, ::windows::core::IUnknown, ::windows::core::IInspectable);
3968impl ::windows::core::CanTryInto<IXmlNode> for XmlDocumentType {}
3969impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlDocumentType {}
3970impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlDocumentType {}
3971unsafe impl ::core::marker::Send for XmlDocumentType {}
3972unsafe impl ::core::marker::Sync for XmlDocumentType {}
3973#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
3974#[repr(transparent)]
3975pub struct XmlDomImplementation(::windows::core::IUnknown);
3976impl XmlDomImplementation {
3977 pub fn HasFeature<P0>(&self, feature: &::windows::core::HSTRING, version: P0) -> ::windows::core::Result<bool>
3978 where
3979 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
3980 {
3981 let this = self;
3982 unsafe {
3983 let mut result__ = ::windows::core::zeroed::<bool>();
3984 (::windows::core::Interface::vtable(this).HasFeature)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(feature), version.into_param().abi(), &mut result__).from_abi(result__)
3985 }
3986 }
3987}
3988impl ::core::cmp::PartialEq for XmlDomImplementation {
3989 fn eq(&self, other: &Self) -> bool {
3990 self.0 == other.0
3991 }
3992}
3993impl ::core::cmp::Eq for XmlDomImplementation {}
3994impl ::core::fmt::Debug for XmlDomImplementation {
3995 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3996 f.debug_tuple("XmlDomImplementation").field(&self.0).finish()
3997 }
3998}
3999impl ::windows::core::RuntimeType for XmlDomImplementation {
4000 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlDomImplementation;{6de58132-f11d-4fbb-8cc6-583cba93112f})");
4001}
4002impl ::core::clone::Clone for XmlDomImplementation {
4003 fn clone(&self) -> Self {
4004 Self(self.0.clone())
4005 }
4006}
4007unsafe impl ::windows::core::Interface for XmlDomImplementation {
4008 type Vtable = IXmlDomImplementation_Vtbl;
4009}
4010unsafe impl ::windows::core::ComInterface for XmlDomImplementation {
4011 const IID: ::windows::core::GUID = <IXmlDomImplementation as ::windows::core::ComInterface>::IID;
4012}
4013impl ::windows::core::RuntimeName for XmlDomImplementation {
4014 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlDomImplementation";
4015}
4016::windows::imp::interface_hierarchy!(XmlDomImplementation, ::windows::core::IUnknown, ::windows::core::IInspectable);
4017unsafe impl ::core::marker::Send for XmlDomImplementation {}
4018unsafe impl ::core::marker::Sync for XmlDomImplementation {}
4019#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
4020#[repr(transparent)]
4021pub struct XmlElement(::windows::core::IUnknown);
4022impl XmlElement {
4023 pub fn TagName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4024 let this = self;
4025 unsafe {
4026 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4027 (::windows::core::Interface::vtable(this).TagName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4028 }
4029 }
4030 pub fn GetAttribute(&self, attributename: &::windows::core::HSTRING) -> ::windows::core::Result<::windows::core::HSTRING> {
4031 let this = self;
4032 unsafe {
4033 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4034 (::windows::core::Interface::vtable(this).GetAttribute)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(attributename), &mut result__).from_abi(result__)
4035 }
4036 }
4037 pub fn SetAttribute(&self, attributename: &::windows::core::HSTRING, attributevalue: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
4038 let this = self;
4039 unsafe { (::windows::core::Interface::vtable(this).SetAttribute)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(attributename), ::core::mem::transmute_copy(attributevalue)).ok() }
4040 }
4041 pub fn RemoveAttribute(&self, attributename: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
4042 let this = self;
4043 unsafe { (::windows::core::Interface::vtable(this).RemoveAttribute)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(attributename)).ok() }
4044 }
4045 pub fn GetAttributeNode(&self, attributename: &::windows::core::HSTRING) -> ::windows::core::Result<XmlAttribute> {
4046 let this = self;
4047 unsafe {
4048 let mut result__ = ::windows::core::zeroed::<XmlAttribute>();
4049 (::windows::core::Interface::vtable(this).GetAttributeNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(attributename), &mut result__).from_abi(result__)
4050 }
4051 }
4052 pub fn SetAttributeNode(&self, newattribute: &XmlAttribute) -> ::windows::core::Result<XmlAttribute> {
4053 let this = self;
4054 unsafe {
4055 let mut result__ = ::windows::core::zeroed::<XmlAttribute>();
4056 (::windows::core::Interface::vtable(this).SetAttributeNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(newattribute), &mut result__).from_abi(result__)
4057 }
4058 }
4059 pub fn RemoveAttributeNode(&self, attributenode: &XmlAttribute) -> ::windows::core::Result<XmlAttribute> {
4060 let this = self;
4061 unsafe {
4062 let mut result__ = ::windows::core::zeroed::<XmlAttribute>();
4063 (::windows::core::Interface::vtable(this).RemoveAttributeNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(attributenode), &mut result__).from_abi(result__)
4064 }
4065 }
4066 pub fn GetElementsByTagName(&self, tagname: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
4067 let this = self;
4068 unsafe {
4069 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
4070 (::windows::core::Interface::vtable(this).GetElementsByTagName)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(tagname), &mut result__).from_abi(result__)
4071 }
4072 }
4073 pub fn SetAttributeNS<P0>(&self, namespaceuri: P0, qualifiedname: &::windows::core::HSTRING, value: &::windows::core::HSTRING) -> ::windows::core::Result<()>
4074 where
4075 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4076 {
4077 let this = self;
4078 unsafe { (::windows::core::Interface::vtable(this).SetAttributeNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(qualifiedname), ::core::mem::transmute_copy(value)).ok() }
4079 }
4080 pub fn GetAttributeNS<P0>(&self, namespaceuri: P0, localname: &::windows::core::HSTRING) -> ::windows::core::Result<::windows::core::HSTRING>
4081 where
4082 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4083 {
4084 let this = self;
4085 unsafe {
4086 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4087 (::windows::core::Interface::vtable(this).GetAttributeNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(localname), &mut result__).from_abi(result__)
4088 }
4089 }
4090 pub fn RemoveAttributeNS<P0>(&self, namespaceuri: P0, localname: &::windows::core::HSTRING) -> ::windows::core::Result<()>
4091 where
4092 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4093 {
4094 let this = self;
4095 unsafe { (::windows::core::Interface::vtable(this).RemoveAttributeNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(localname)).ok() }
4096 }
4097 pub fn SetAttributeNodeNS(&self, newattribute: &XmlAttribute) -> ::windows::core::Result<XmlAttribute> {
4098 let this = self;
4099 unsafe {
4100 let mut result__ = ::windows::core::zeroed::<XmlAttribute>();
4101 (::windows::core::Interface::vtable(this).SetAttributeNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(newattribute), &mut result__).from_abi(result__)
4102 }
4103 }
4104 pub fn GetAttributeNodeNS<P0>(&self, namespaceuri: P0, localname: &::windows::core::HSTRING) -> ::windows::core::Result<XmlAttribute>
4105 where
4106 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4107 {
4108 let this = self;
4109 unsafe {
4110 let mut result__ = ::windows::core::zeroed::<XmlAttribute>();
4111 (::windows::core::Interface::vtable(this).GetAttributeNodeNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(localname), &mut result__).from_abi(result__)
4112 }
4113 }
4114 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4115 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4116 unsafe {
4117 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4118 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4119 }
4120 }
4121 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
4122 where
4123 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4124 {
4125 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4126 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
4127 }
4128 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
4129 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4130 unsafe {
4131 let mut result__ = ::windows::core::zeroed::<NodeType>();
4132 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4133 }
4134 }
4135 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4136 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4137 unsafe {
4138 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4139 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4140 }
4141 }
4142 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
4143 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4144 unsafe {
4145 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4146 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4147 }
4148 }
4149 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
4150 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4151 unsafe {
4152 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
4153 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4154 }
4155 }
4156 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
4157 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4158 unsafe {
4159 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4160 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4161 }
4162 }
4163 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
4164 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4165 unsafe {
4166 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4167 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4168 }
4169 }
4170 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
4171 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4172 unsafe {
4173 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4174 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4175 }
4176 }
4177 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
4178 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4179 unsafe {
4180 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4181 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4182 }
4183 }
4184 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
4185 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4186 unsafe {
4187 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
4188 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4189 }
4190 }
4191 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
4192 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4193 unsafe {
4194 let mut result__ = ::windows::core::zeroed::<bool>();
4195 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4196 }
4197 }
4198 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
4199 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4200 unsafe {
4201 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
4202 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4203 }
4204 }
4205 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
4206 where
4207 P0: ::windows::core::TryIntoParam<IXmlNode>,
4208 P1: ::windows::core::TryIntoParam<IXmlNode>,
4209 {
4210 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4211 unsafe {
4212 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4213 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
4214 }
4215 }
4216 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
4217 where
4218 P0: ::windows::core::TryIntoParam<IXmlNode>,
4219 P1: ::windows::core::TryIntoParam<IXmlNode>,
4220 {
4221 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4222 unsafe {
4223 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4224 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
4225 }
4226 }
4227 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
4228 where
4229 P0: ::windows::core::TryIntoParam<IXmlNode>,
4230 {
4231 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4232 unsafe {
4233 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4234 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
4235 }
4236 }
4237 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
4238 where
4239 P0: ::windows::core::TryIntoParam<IXmlNode>,
4240 {
4241 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4242 unsafe {
4243 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4244 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
4245 }
4246 }
4247 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
4248 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4249 unsafe {
4250 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4251 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
4252 }
4253 }
4254 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4255 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4256 unsafe {
4257 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4258 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4259 }
4260 }
4261 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4262 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4263 unsafe {
4264 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4265 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4266 }
4267 }
4268 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4269 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4270 unsafe {
4271 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4272 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4273 }
4274 }
4275 pub fn Normalize(&self) -> ::windows::core::Result<()> {
4276 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4277 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
4278 }
4279 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
4280 where
4281 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4282 {
4283 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4284 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
4285 }
4286 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
4287 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4288 unsafe {
4289 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4290 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
4291 }
4292 }
4293 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
4294 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4295 unsafe {
4296 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
4297 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
4298 }
4299 }
4300 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
4301 where
4302 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4303 {
4304 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4305 unsafe {
4306 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4307 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
4308 }
4309 }
4310 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
4311 where
4312 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4313 {
4314 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4315 unsafe {
4316 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
4317 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
4318 }
4319 }
4320 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4321 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
4322 unsafe {
4323 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4324 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4325 }
4326 }
4327 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4328 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
4329 unsafe {
4330 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4331 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4332 }
4333 }
4334 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
4335 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
4336 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
4337 }
4338}
4339impl ::core::cmp::PartialEq for XmlElement {
4340 fn eq(&self, other: &Self) -> bool {
4341 self.0 == other.0
4342 }
4343}
4344impl ::core::cmp::Eq for XmlElement {}
4345impl ::core::fmt::Debug for XmlElement {
4346 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4347 f.debug_tuple("XmlElement").field(&self.0).finish()
4348 }
4349}
4350impl ::windows::core::RuntimeType for XmlElement {
4351 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlElement;{2dfb8a1f-6b10-4ef8-9f83-efcce8faec37})");
4352}
4353impl ::core::clone::Clone for XmlElement {
4354 fn clone(&self) -> Self {
4355 Self(self.0.clone())
4356 }
4357}
4358unsafe impl ::windows::core::Interface for XmlElement {
4359 type Vtable = IXmlElement_Vtbl;
4360}
4361unsafe impl ::windows::core::ComInterface for XmlElement {
4362 const IID: ::windows::core::GUID = <IXmlElement as ::windows::core::ComInterface>::IID;
4363}
4364impl ::windows::core::RuntimeName for XmlElement {
4365 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlElement";
4366}
4367::windows::imp::interface_hierarchy!(XmlElement, ::windows::core::IUnknown, ::windows::core::IInspectable);
4368impl ::windows::core::CanTryInto<IXmlNode> for XmlElement {}
4369impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlElement {}
4370impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlElement {}
4371unsafe impl ::core::marker::Send for XmlElement {}
4372unsafe impl ::core::marker::Sync for XmlElement {}
4373#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
4374#[repr(transparent)]
4375pub struct XmlEntityReference(::windows::core::IUnknown);
4376impl XmlEntityReference {
4377 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4378 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4379 unsafe {
4380 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4381 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4382 }
4383 }
4384 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
4385 where
4386 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4387 {
4388 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4389 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
4390 }
4391 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
4392 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4393 unsafe {
4394 let mut result__ = ::windows::core::zeroed::<NodeType>();
4395 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4396 }
4397 }
4398 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4399 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4400 unsafe {
4401 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4402 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4403 }
4404 }
4405 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
4406 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4407 unsafe {
4408 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4409 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4410 }
4411 }
4412 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
4413 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4414 unsafe {
4415 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
4416 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4417 }
4418 }
4419 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
4420 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4421 unsafe {
4422 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4423 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4424 }
4425 }
4426 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
4427 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4428 unsafe {
4429 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4430 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4431 }
4432 }
4433 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
4434 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4435 unsafe {
4436 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4437 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4438 }
4439 }
4440 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
4441 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4442 unsafe {
4443 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4444 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4445 }
4446 }
4447 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
4448 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4449 unsafe {
4450 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
4451 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4452 }
4453 }
4454 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
4455 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4456 unsafe {
4457 let mut result__ = ::windows::core::zeroed::<bool>();
4458 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4459 }
4460 }
4461 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
4462 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4463 unsafe {
4464 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
4465 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4466 }
4467 }
4468 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
4469 where
4470 P0: ::windows::core::TryIntoParam<IXmlNode>,
4471 P1: ::windows::core::TryIntoParam<IXmlNode>,
4472 {
4473 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4474 unsafe {
4475 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4476 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
4477 }
4478 }
4479 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
4480 where
4481 P0: ::windows::core::TryIntoParam<IXmlNode>,
4482 P1: ::windows::core::TryIntoParam<IXmlNode>,
4483 {
4484 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4485 unsafe {
4486 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4487 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
4488 }
4489 }
4490 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
4491 where
4492 P0: ::windows::core::TryIntoParam<IXmlNode>,
4493 {
4494 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4495 unsafe {
4496 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4497 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
4498 }
4499 }
4500 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
4501 where
4502 P0: ::windows::core::TryIntoParam<IXmlNode>,
4503 {
4504 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4505 unsafe {
4506 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4507 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
4508 }
4509 }
4510 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
4511 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4512 unsafe {
4513 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4514 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
4515 }
4516 }
4517 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4518 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4519 unsafe {
4520 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4521 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4522 }
4523 }
4524 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4525 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4526 unsafe {
4527 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4528 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4529 }
4530 }
4531 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
4532 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4533 unsafe {
4534 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
4535 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4536 }
4537 }
4538 pub fn Normalize(&self) -> ::windows::core::Result<()> {
4539 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4540 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
4541 }
4542 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
4543 where
4544 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4545 {
4546 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
4547 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
4548 }
4549 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
4550 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4551 unsafe {
4552 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4553 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
4554 }
4555 }
4556 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
4557 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4558 unsafe {
4559 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
4560 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
4561 }
4562 }
4563 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
4564 where
4565 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4566 {
4567 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4568 unsafe {
4569 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4570 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
4571 }
4572 }
4573 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
4574 where
4575 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4576 {
4577 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
4578 unsafe {
4579 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
4580 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
4581 }
4582 }
4583 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4584 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
4585 unsafe {
4586 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4587 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4588 }
4589 }
4590 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4591 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
4592 unsafe {
4593 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4594 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4595 }
4596 }
4597 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
4598 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
4599 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
4600 }
4601}
4602impl ::core::cmp::PartialEq for XmlEntityReference {
4603 fn eq(&self, other: &Self) -> bool {
4604 self.0 == other.0
4605 }
4606}
4607impl ::core::cmp::Eq for XmlEntityReference {}
4608impl ::core::fmt::Debug for XmlEntityReference {
4609 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4610 f.debug_tuple("XmlEntityReference").field(&self.0).finish()
4611 }
4612}
4613impl ::windows::core::RuntimeType for XmlEntityReference {
4614 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlEntityReference;{2e2f47bc-c3d0-4ccf-bb86-0ab8c36a61cf})");
4615}
4616impl ::core::clone::Clone for XmlEntityReference {
4617 fn clone(&self) -> Self {
4618 Self(self.0.clone())
4619 }
4620}
4621unsafe impl ::windows::core::Interface for XmlEntityReference {
4622 type Vtable = IXmlEntityReference_Vtbl;
4623}
4624unsafe impl ::windows::core::ComInterface for XmlEntityReference {
4625 const IID: ::windows::core::GUID = <IXmlEntityReference as ::windows::core::ComInterface>::IID;
4626}
4627impl ::windows::core::RuntimeName for XmlEntityReference {
4628 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlEntityReference";
4629}
4630::windows::imp::interface_hierarchy!(XmlEntityReference, ::windows::core::IUnknown, ::windows::core::IInspectable);
4631impl ::windows::core::CanTryInto<IXmlNode> for XmlEntityReference {}
4632impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlEntityReference {}
4633impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlEntityReference {}
4634unsafe impl ::core::marker::Send for XmlEntityReference {}
4635unsafe impl ::core::marker::Sync for XmlEntityReference {}
4636#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
4637#[repr(transparent)]
4638pub struct XmlLoadSettings(::windows::core::IUnknown);
4639impl XmlLoadSettings {
4640 pub fn new() -> ::windows::core::Result<Self> {
4641 Self::IActivationFactory(|f| f.ActivateInstance::<Self>())
4642 }
4643 fn IActivationFactory<R, F: FnOnce(&::windows::imp::IGenericFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4644 static SHARED: ::windows::imp::FactoryCache<XmlLoadSettings, ::windows::imp::IGenericFactory> = ::windows::imp::FactoryCache::new();
4645 SHARED.call(callback)
4646 }
4647 pub fn MaxElementDepth(&self) -> ::windows::core::Result<u32> {
4648 let this = self;
4649 unsafe {
4650 let mut result__ = ::windows::core::zeroed::<u32>();
4651 (::windows::core::Interface::vtable(this).MaxElementDepth)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4652 }
4653 }
4654 pub fn SetMaxElementDepth(&self, value: u32) -> ::windows::core::Result<()> {
4655 let this = self;
4656 unsafe { (::windows::core::Interface::vtable(this).SetMaxElementDepth)(::windows::core::Interface::as_raw(this), value).ok() }
4657 }
4658 pub fn ProhibitDtd(&self) -> ::windows::core::Result<bool> {
4659 let this = self;
4660 unsafe {
4661 let mut result__ = ::windows::core::zeroed::<bool>();
4662 (::windows::core::Interface::vtable(this).ProhibitDtd)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4663 }
4664 }
4665 pub fn SetProhibitDtd(&self, value: bool) -> ::windows::core::Result<()> {
4666 let this = self;
4667 unsafe { (::windows::core::Interface::vtable(this).SetProhibitDtd)(::windows::core::Interface::as_raw(this), value).ok() }
4668 }
4669 pub fn ResolveExternals(&self) -> ::windows::core::Result<bool> {
4670 let this = self;
4671 unsafe {
4672 let mut result__ = ::windows::core::zeroed::<bool>();
4673 (::windows::core::Interface::vtable(this).ResolveExternals)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4674 }
4675 }
4676 pub fn SetResolveExternals(&self, value: bool) -> ::windows::core::Result<()> {
4677 let this = self;
4678 unsafe { (::windows::core::Interface::vtable(this).SetResolveExternals)(::windows::core::Interface::as_raw(this), value).ok() }
4679 }
4680 pub fn ValidateOnParse(&self) -> ::windows::core::Result<bool> {
4681 let this = self;
4682 unsafe {
4683 let mut result__ = ::windows::core::zeroed::<bool>();
4684 (::windows::core::Interface::vtable(this).ValidateOnParse)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4685 }
4686 }
4687 pub fn SetValidateOnParse(&self, value: bool) -> ::windows::core::Result<()> {
4688 let this = self;
4689 unsafe { (::windows::core::Interface::vtable(this).SetValidateOnParse)(::windows::core::Interface::as_raw(this), value).ok() }
4690 }
4691 pub fn ElementContentWhiteSpace(&self) -> ::windows::core::Result<bool> {
4692 let this = self;
4693 unsafe {
4694 let mut result__ = ::windows::core::zeroed::<bool>();
4695 (::windows::core::Interface::vtable(this).ElementContentWhiteSpace)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4696 }
4697 }
4698 pub fn SetElementContentWhiteSpace(&self, value: bool) -> ::windows::core::Result<()> {
4699 let this = self;
4700 unsafe { (::windows::core::Interface::vtable(this).SetElementContentWhiteSpace)(::windows::core::Interface::as_raw(this), value).ok() }
4701 }
4702}
4703impl ::core::cmp::PartialEq for XmlLoadSettings {
4704 fn eq(&self, other: &Self) -> bool {
4705 self.0 == other.0
4706 }
4707}
4708impl ::core::cmp::Eq for XmlLoadSettings {}
4709impl ::core::fmt::Debug for XmlLoadSettings {
4710 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4711 f.debug_tuple("XmlLoadSettings").field(&self.0).finish()
4712 }
4713}
4714impl ::windows::core::RuntimeType for XmlLoadSettings {
4715 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlLoadSettings;{58aa07a8-fed6-46f7-b4c5-fb1ba72108d6})");
4716}
4717impl ::core::clone::Clone for XmlLoadSettings {
4718 fn clone(&self) -> Self {
4719 Self(self.0.clone())
4720 }
4721}
4722unsafe impl ::windows::core::Interface for XmlLoadSettings {
4723 type Vtable = IXmlLoadSettings_Vtbl;
4724}
4725unsafe impl ::windows::core::ComInterface for XmlLoadSettings {
4726 const IID: ::windows::core::GUID = <IXmlLoadSettings as ::windows::core::ComInterface>::IID;
4727}
4728impl ::windows::core::RuntimeName for XmlLoadSettings {
4729 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlLoadSettings";
4730}
4731::windows::imp::interface_hierarchy!(XmlLoadSettings, ::windows::core::IUnknown, ::windows::core::IInspectable);
4732unsafe impl ::core::marker::Send for XmlLoadSettings {}
4733unsafe impl ::core::marker::Sync for XmlLoadSettings {}
4734#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
4735#[repr(transparent)]
4736pub struct XmlNamedNodeMap(::windows::core::IUnknown);
4737impl XmlNamedNodeMap {
4738 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4739 #[cfg(feature = "Foundation_Collections")]
4740 pub fn First(&self) -> ::windows::core::Result<super::super::super::Foundation::Collections::IIterator<IXmlNode>> {
4741 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IIterable<IXmlNode>>(self)?;
4742 unsafe {
4743 let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::Collections::IIterator<IXmlNode>>();
4744 (::windows::core::Interface::vtable(this).First)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4745 }
4746 }
4747 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4748 #[cfg(feature = "Foundation_Collections")]
4749 pub fn GetAt(&self, index: u32) -> ::windows::core::Result<IXmlNode> {
4750 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4751 unsafe {
4752 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4753 (::windows::core::Interface::vtable(this).GetAt)(::windows::core::Interface::as_raw(this), index, &mut result__).from_abi(result__)
4754 }
4755 }
4756 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4757 #[cfg(feature = "Foundation_Collections")]
4758 pub fn Size(&self) -> ::windows::core::Result<u32> {
4759 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4760 unsafe {
4761 let mut result__ = ::windows::core::zeroed::<u32>();
4762 (::windows::core::Interface::vtable(this).Size)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4763 }
4764 }
4765 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4766 #[cfg(feature = "Foundation_Collections")]
4767 pub fn IndexOf<P0>(&self, value: P0, index: &mut u32) -> ::windows::core::Result<bool>
4768 where
4769 P0: ::windows::core::TryIntoParam<IXmlNode>,
4770 {
4771 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4772 unsafe {
4773 let mut result__ = ::windows::core::zeroed::<bool>();
4774 (::windows::core::Interface::vtable(this).IndexOf)(::windows::core::Interface::as_raw(this), value.try_into_param()?.abi(), index, &mut result__).from_abi(result__)
4775 }
4776 }
4777 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4778 #[cfg(feature = "Foundation_Collections")]
4779 pub fn GetMany(&self, startindex: u32, items: &mut [::core::option::Option<IXmlNode>]) -> ::windows::core::Result<u32> {
4780 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4781 unsafe {
4782 let mut result__ = ::windows::core::zeroed::<u32>();
4783 (::windows::core::Interface::vtable(this).GetMany)(::windows::core::Interface::as_raw(this), startindex, items.len() as u32, ::core::mem::transmute_copy(&items), &mut result__).from_abi(result__)
4784 }
4785 }
4786 pub fn Length(&self) -> ::windows::core::Result<u32> {
4787 let this = self;
4788 unsafe {
4789 let mut result__ = ::windows::core::zeroed::<u32>();
4790 (::windows::core::Interface::vtable(this).Length)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4791 }
4792 }
4793 pub fn Item(&self, index: u32) -> ::windows::core::Result<IXmlNode> {
4794 let this = self;
4795 unsafe {
4796 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4797 (::windows::core::Interface::vtable(this).Item)(::windows::core::Interface::as_raw(this), index, &mut result__).from_abi(result__)
4798 }
4799 }
4800 pub fn GetNamedItem(&self, name: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
4801 let this = self;
4802 unsafe {
4803 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4804 (::windows::core::Interface::vtable(this).GetNamedItem)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(name), &mut result__).from_abi(result__)
4805 }
4806 }
4807 pub fn SetNamedItem<P0>(&self, node: P0) -> ::windows::core::Result<IXmlNode>
4808 where
4809 P0: ::windows::core::TryIntoParam<IXmlNode>,
4810 {
4811 let this = self;
4812 unsafe {
4813 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4814 (::windows::core::Interface::vtable(this).SetNamedItem)(::windows::core::Interface::as_raw(this), node.try_into_param()?.abi(), &mut result__).from_abi(result__)
4815 }
4816 }
4817 pub fn RemoveNamedItem(&self, name: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
4818 let this = self;
4819 unsafe {
4820 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4821 (::windows::core::Interface::vtable(this).RemoveNamedItem)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(name), &mut result__).from_abi(result__)
4822 }
4823 }
4824 pub fn GetNamedItemNS<P0>(&self, namespaceuri: P0, name: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode>
4825 where
4826 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4827 {
4828 let this = self;
4829 unsafe {
4830 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4831 (::windows::core::Interface::vtable(this).GetNamedItemNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(name), &mut result__).from_abi(result__)
4832 }
4833 }
4834 pub fn RemoveNamedItemNS<P0>(&self, namespaceuri: P0, name: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode>
4835 where
4836 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
4837 {
4838 let this = self;
4839 unsafe {
4840 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4841 (::windows::core::Interface::vtable(this).RemoveNamedItemNS)(::windows::core::Interface::as_raw(this), namespaceuri.into_param().abi(), ::core::mem::transmute_copy(name), &mut result__).from_abi(result__)
4842 }
4843 }
4844 pub fn SetNamedItemNS<P0>(&self, node: P0) -> ::windows::core::Result<IXmlNode>
4845 where
4846 P0: ::windows::core::TryIntoParam<IXmlNode>,
4847 {
4848 let this = self;
4849 unsafe {
4850 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4851 (::windows::core::Interface::vtable(this).SetNamedItemNS)(::windows::core::Interface::as_raw(this), node.try_into_param()?.abi(), &mut result__).from_abi(result__)
4852 }
4853 }
4854}
4855impl ::core::cmp::PartialEq for XmlNamedNodeMap {
4856 fn eq(&self, other: &Self) -> bool {
4857 self.0 == other.0
4858 }
4859}
4860impl ::core::cmp::Eq for XmlNamedNodeMap {}
4861impl ::core::fmt::Debug for XmlNamedNodeMap {
4862 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4863 f.debug_tuple("XmlNamedNodeMap").field(&self.0).finish()
4864 }
4865}
4866impl ::windows::core::RuntimeType for XmlNamedNodeMap {
4867 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlNamedNodeMap;{b3a69eb0-aab0-4b82-a6fa-b1453f7c021b})");
4868}
4869impl ::core::clone::Clone for XmlNamedNodeMap {
4870 fn clone(&self) -> Self {
4871 Self(self.0.clone())
4872 }
4873}
4874unsafe impl ::windows::core::Interface for XmlNamedNodeMap {
4875 type Vtable = IXmlNamedNodeMap_Vtbl;
4876}
4877unsafe impl ::windows::core::ComInterface for XmlNamedNodeMap {
4878 const IID: ::windows::core::GUID = <IXmlNamedNodeMap as ::windows::core::ComInterface>::IID;
4879}
4880impl ::windows::core::RuntimeName for XmlNamedNodeMap {
4881 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlNamedNodeMap";
4882}
4883#[cfg(feature = "Foundation_Collections")]
4884impl ::core::iter::IntoIterator for XmlNamedNodeMap {
4885 type Item = IXmlNode;
4886 type IntoIter = super::super::super::Foundation::Collections::VectorViewIterator<Self::Item>;
4887 fn into_iter(self) -> Self::IntoIter {
4888 ::core::iter::IntoIterator::into_iter(&self)
4889 }
4890}
4891#[cfg(feature = "Foundation_Collections")]
4892impl ::core::iter::IntoIterator for &XmlNamedNodeMap {
4893 type Item = IXmlNode;
4894 type IntoIter = super::super::super::Foundation::Collections::VectorViewIterator<Self::Item>;
4895 fn into_iter(self) -> Self::IntoIter {
4896 super::super::super::Foundation::Collections::VectorViewIterator::new(::windows::core::ComInterface::cast(self).ok())
4897 }
4898}
4899::windows::imp::interface_hierarchy!(XmlNamedNodeMap, ::windows::core::IUnknown, ::windows::core::IInspectable);
4900#[cfg(feature = "Foundation_Collections")]
4901impl ::windows::core::CanTryInto<super::super::super::Foundation::Collections::IIterable<IXmlNode>> for XmlNamedNodeMap {}
4902#[cfg(feature = "Foundation_Collections")]
4903impl ::windows::core::CanTryInto<super::super::super::Foundation::Collections::IVectorView<IXmlNode>> for XmlNamedNodeMap {}
4904unsafe impl ::core::marker::Send for XmlNamedNodeMap {}
4905unsafe impl ::core::marker::Sync for XmlNamedNodeMap {}
4906#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
4907#[repr(transparent)]
4908pub struct XmlNodeList(::windows::core::IUnknown);
4909impl XmlNodeList {
4910 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4911 #[cfg(feature = "Foundation_Collections")]
4912 pub fn First(&self) -> ::windows::core::Result<super::super::super::Foundation::Collections::IIterator<IXmlNode>> {
4913 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IIterable<IXmlNode>>(self)?;
4914 unsafe {
4915 let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::Collections::IIterator<IXmlNode>>();
4916 (::windows::core::Interface::vtable(this).First)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4917 }
4918 }
4919 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4920 #[cfg(feature = "Foundation_Collections")]
4921 pub fn GetAt(&self, index: u32) -> ::windows::core::Result<IXmlNode> {
4922 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4923 unsafe {
4924 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4925 (::windows::core::Interface::vtable(this).GetAt)(::windows::core::Interface::as_raw(this), index, &mut result__).from_abi(result__)
4926 }
4927 }
4928 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4929 #[cfg(feature = "Foundation_Collections")]
4930 pub fn Size(&self) -> ::windows::core::Result<u32> {
4931 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4932 unsafe {
4933 let mut result__ = ::windows::core::zeroed::<u32>();
4934 (::windows::core::Interface::vtable(this).Size)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4935 }
4936 }
4937 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4938 #[cfg(feature = "Foundation_Collections")]
4939 pub fn IndexOf<P0>(&self, value: P0, index: &mut u32) -> ::windows::core::Result<bool>
4940 where
4941 P0: ::windows::core::TryIntoParam<IXmlNode>,
4942 {
4943 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4944 unsafe {
4945 let mut result__ = ::windows::core::zeroed::<bool>();
4946 (::windows::core::Interface::vtable(this).IndexOf)(::windows::core::Interface::as_raw(this), value.try_into_param()?.abi(), index, &mut result__).from_abi(result__)
4947 }
4948 }
4949 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4950 #[cfg(feature = "Foundation_Collections")]
4951 pub fn GetMany(&self, startindex: u32, items: &mut [::core::option::Option<IXmlNode>]) -> ::windows::core::Result<u32> {
4952 let this = &::windows::core::ComInterface::cast::<super::super::super::Foundation::Collections::IVectorView<IXmlNode>>(self)?;
4953 unsafe {
4954 let mut result__ = ::windows::core::zeroed::<u32>();
4955 (::windows::core::Interface::vtable(this).GetMany)(::windows::core::Interface::as_raw(this), startindex, items.len() as u32, ::core::mem::transmute_copy(&items), &mut result__).from_abi(result__)
4956 }
4957 }
4958 pub fn Length(&self) -> ::windows::core::Result<u32> {
4959 let this = self;
4960 unsafe {
4961 let mut result__ = ::windows::core::zeroed::<u32>();
4962 (::windows::core::Interface::vtable(this).Length)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4963 }
4964 }
4965 pub fn Item(&self, index: u32) -> ::windows::core::Result<IXmlNode> {
4966 let this = self;
4967 unsafe {
4968 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
4969 (::windows::core::Interface::vtable(this).Item)(::windows::core::Interface::as_raw(this), index, &mut result__).from_abi(result__)
4970 }
4971 }
4972}
4973impl ::core::cmp::PartialEq for XmlNodeList {
4974 fn eq(&self, other: &Self) -> bool {
4975 self.0 == other.0
4976 }
4977}
4978impl ::core::cmp::Eq for XmlNodeList {}
4979impl ::core::fmt::Debug for XmlNodeList {
4980 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4981 f.debug_tuple("XmlNodeList").field(&self.0).finish()
4982 }
4983}
4984impl ::windows::core::RuntimeType for XmlNodeList {
4985 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlNodeList;{8c60ad77-83a4-4ec1-9c54-7ba429e13da6})");
4986}
4987impl ::core::clone::Clone for XmlNodeList {
4988 fn clone(&self) -> Self {
4989 Self(self.0.clone())
4990 }
4991}
4992unsafe impl ::windows::core::Interface for XmlNodeList {
4993 type Vtable = IXmlNodeList_Vtbl;
4994}
4995unsafe impl ::windows::core::ComInterface for XmlNodeList {
4996 const IID: ::windows::core::GUID = <IXmlNodeList as ::windows::core::ComInterface>::IID;
4997}
4998impl ::windows::core::RuntimeName for XmlNodeList {
4999 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlNodeList";
5000}
5001#[cfg(feature = "Foundation_Collections")]
5002impl ::core::iter::IntoIterator for XmlNodeList {
5003 type Item = IXmlNode;
5004 type IntoIter = super::super::super::Foundation::Collections::VectorViewIterator<Self::Item>;
5005 fn into_iter(self) -> Self::IntoIter {
5006 ::core::iter::IntoIterator::into_iter(&self)
5007 }
5008}
5009#[cfg(feature = "Foundation_Collections")]
5010impl ::core::iter::IntoIterator for &XmlNodeList {
5011 type Item = IXmlNode;
5012 type IntoIter = super::super::super::Foundation::Collections::VectorViewIterator<Self::Item>;
5013 fn into_iter(self) -> Self::IntoIter {
5014 super::super::super::Foundation::Collections::VectorViewIterator::new(::windows::core::ComInterface::cast(self).ok())
5015 }
5016}
5017::windows::imp::interface_hierarchy!(XmlNodeList, ::windows::core::IUnknown, ::windows::core::IInspectable);
5018#[cfg(feature = "Foundation_Collections")]
5019impl ::windows::core::CanTryInto<super::super::super::Foundation::Collections::IIterable<IXmlNode>> for XmlNodeList {}
5020#[cfg(feature = "Foundation_Collections")]
5021impl ::windows::core::CanTryInto<super::super::super::Foundation::Collections::IVectorView<IXmlNode>> for XmlNodeList {}
5022unsafe impl ::core::marker::Send for XmlNodeList {}
5023unsafe impl ::core::marker::Sync for XmlNodeList {}
5024#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
5025#[repr(transparent)]
5026pub struct XmlProcessingInstruction(::windows::core::IUnknown);
5027impl XmlProcessingInstruction {
5028 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5029 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5030 unsafe {
5031 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5032 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5033 }
5034 }
5035 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
5036 where
5037 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5038 {
5039 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5040 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
5041 }
5042 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
5043 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5044 unsafe {
5045 let mut result__ = ::windows::core::zeroed::<NodeType>();
5046 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5047 }
5048 }
5049 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5050 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5051 unsafe {
5052 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5053 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5054 }
5055 }
5056 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
5057 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5058 unsafe {
5059 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5060 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5061 }
5062 }
5063 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
5064 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5065 unsafe {
5066 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
5067 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5068 }
5069 }
5070 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
5071 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5072 unsafe {
5073 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5074 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5075 }
5076 }
5077 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
5078 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5079 unsafe {
5080 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5081 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5082 }
5083 }
5084 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
5085 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5086 unsafe {
5087 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5088 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5089 }
5090 }
5091 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
5092 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5093 unsafe {
5094 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5095 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5096 }
5097 }
5098 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
5099 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5100 unsafe {
5101 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
5102 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5103 }
5104 }
5105 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
5106 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5107 unsafe {
5108 let mut result__ = ::windows::core::zeroed::<bool>();
5109 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5110 }
5111 }
5112 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
5113 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5114 unsafe {
5115 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
5116 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5117 }
5118 }
5119 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
5120 where
5121 P0: ::windows::core::TryIntoParam<IXmlNode>,
5122 P1: ::windows::core::TryIntoParam<IXmlNode>,
5123 {
5124 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5125 unsafe {
5126 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5127 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
5128 }
5129 }
5130 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
5131 where
5132 P0: ::windows::core::TryIntoParam<IXmlNode>,
5133 P1: ::windows::core::TryIntoParam<IXmlNode>,
5134 {
5135 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5136 unsafe {
5137 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5138 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
5139 }
5140 }
5141 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
5142 where
5143 P0: ::windows::core::TryIntoParam<IXmlNode>,
5144 {
5145 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5146 unsafe {
5147 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5148 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
5149 }
5150 }
5151 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
5152 where
5153 P0: ::windows::core::TryIntoParam<IXmlNode>,
5154 {
5155 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5156 unsafe {
5157 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5158 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
5159 }
5160 }
5161 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
5162 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5163 unsafe {
5164 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5165 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
5166 }
5167 }
5168 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5169 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5170 unsafe {
5171 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5172 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5173 }
5174 }
5175 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5176 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5177 unsafe {
5178 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5179 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5180 }
5181 }
5182 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5183 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5184 unsafe {
5185 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5186 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5187 }
5188 }
5189 pub fn Normalize(&self) -> ::windows::core::Result<()> {
5190 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5191 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
5192 }
5193 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
5194 where
5195 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5196 {
5197 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5198 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
5199 }
5200 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
5201 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5202 unsafe {
5203 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5204 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
5205 }
5206 }
5207 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
5208 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5209 unsafe {
5210 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
5211 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
5212 }
5213 }
5214 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
5215 where
5216 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5217 {
5218 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5219 unsafe {
5220 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5221 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
5222 }
5223 }
5224 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
5225 where
5226 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5227 {
5228 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5229 unsafe {
5230 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
5231 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
5232 }
5233 }
5234 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5235 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
5236 unsafe {
5237 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5238 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5239 }
5240 }
5241 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5242 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
5243 unsafe {
5244 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5245 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5246 }
5247 }
5248 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
5249 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
5250 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
5251 }
5252 pub fn Target(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5253 let this = self;
5254 unsafe {
5255 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5256 (::windows::core::Interface::vtable(this).Target)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5257 }
5258 }
5259 pub fn Data(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5260 let this = self;
5261 unsafe {
5262 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5263 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5264 }
5265 }
5266 pub fn SetData(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
5267 let this = self;
5268 unsafe { (::windows::core::Interface::vtable(this).SetData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
5269 }
5270}
5271impl ::core::cmp::PartialEq for XmlProcessingInstruction {
5272 fn eq(&self, other: &Self) -> bool {
5273 self.0 == other.0
5274 }
5275}
5276impl ::core::cmp::Eq for XmlProcessingInstruction {}
5277impl ::core::fmt::Debug for XmlProcessingInstruction {
5278 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5279 f.debug_tuple("XmlProcessingInstruction").field(&self.0).finish()
5280 }
5281}
5282impl ::windows::core::RuntimeType for XmlProcessingInstruction {
5283 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlProcessingInstruction;{2707fd1e-1e92-4ece-b6f4-26f069078ddc})");
5284}
5285impl ::core::clone::Clone for XmlProcessingInstruction {
5286 fn clone(&self) -> Self {
5287 Self(self.0.clone())
5288 }
5289}
5290unsafe impl ::windows::core::Interface for XmlProcessingInstruction {
5291 type Vtable = IXmlProcessingInstruction_Vtbl;
5292}
5293unsafe impl ::windows::core::ComInterface for XmlProcessingInstruction {
5294 const IID: ::windows::core::GUID = <IXmlProcessingInstruction as ::windows::core::ComInterface>::IID;
5295}
5296impl ::windows::core::RuntimeName for XmlProcessingInstruction {
5297 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlProcessingInstruction";
5298}
5299::windows::imp::interface_hierarchy!(XmlProcessingInstruction, ::windows::core::IUnknown, ::windows::core::IInspectable);
5300impl ::windows::core::CanTryInto<IXmlNode> for XmlProcessingInstruction {}
5301impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlProcessingInstruction {}
5302impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlProcessingInstruction {}
5303unsafe impl ::core::marker::Send for XmlProcessingInstruction {}
5304unsafe impl ::core::marker::Sync for XmlProcessingInstruction {}
5305#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
5306#[repr(transparent)]
5307pub struct XmlText(::windows::core::IUnknown);
5308impl XmlText {
5309 pub fn Data(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5310 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5311 unsafe {
5312 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5313 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5314 }
5315 }
5316 pub fn SetData(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
5317 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5318 unsafe { (::windows::core::Interface::vtable(this).SetData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
5319 }
5320 pub fn Length(&self) -> ::windows::core::Result<u32> {
5321 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5322 unsafe {
5323 let mut result__ = ::windows::core::zeroed::<u32>();
5324 (::windows::core::Interface::vtable(this).Length)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5325 }
5326 }
5327 pub fn SubstringData(&self, offset: u32, count: u32) -> ::windows::core::Result<::windows::core::HSTRING> {
5328 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5329 unsafe {
5330 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5331 (::windows::core::Interface::vtable(this).SubstringData)(::windows::core::Interface::as_raw(this), offset, count, &mut result__).from_abi(result__)
5332 }
5333 }
5334 pub fn AppendData(&self, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
5335 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5336 unsafe { (::windows::core::Interface::vtable(this).AppendData)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(data)).ok() }
5337 }
5338 pub fn InsertData(&self, offset: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
5339 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5340 unsafe { (::windows::core::Interface::vtable(this).InsertData)(::windows::core::Interface::as_raw(this), offset, ::core::mem::transmute_copy(data)).ok() }
5341 }
5342 pub fn DeleteData(&self, offset: u32, count: u32) -> ::windows::core::Result<()> {
5343 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5344 unsafe { (::windows::core::Interface::vtable(this).DeleteData)(::windows::core::Interface::as_raw(this), offset, count).ok() }
5345 }
5346 pub fn ReplaceData(&self, offset: u32, count: u32, data: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
5347 let this = &::windows::core::ComInterface::cast::<IXmlCharacterData>(self)?;
5348 unsafe { (::windows::core::Interface::vtable(this).ReplaceData)(::windows::core::Interface::as_raw(this), offset, count, ::core::mem::transmute_copy(data)).ok() }
5349 }
5350 pub fn NodeValue(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5351 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5352 unsafe {
5353 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5354 (::windows::core::Interface::vtable(this).NodeValue)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5355 }
5356 }
5357 pub fn SetNodeValue<P0>(&self, value: P0) -> ::windows::core::Result<()>
5358 where
5359 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5360 {
5361 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5362 unsafe { (::windows::core::Interface::vtable(this).SetNodeValue)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
5363 }
5364 pub fn NodeType(&self) -> ::windows::core::Result<NodeType> {
5365 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5366 unsafe {
5367 let mut result__ = ::windows::core::zeroed::<NodeType>();
5368 (::windows::core::Interface::vtable(this).NodeType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5369 }
5370 }
5371 pub fn NodeName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5372 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5373 unsafe {
5374 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5375 (::windows::core::Interface::vtable(this).NodeName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5376 }
5377 }
5378 pub fn ParentNode(&self) -> ::windows::core::Result<IXmlNode> {
5379 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5380 unsafe {
5381 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5382 (::windows::core::Interface::vtable(this).ParentNode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5383 }
5384 }
5385 pub fn ChildNodes(&self) -> ::windows::core::Result<XmlNodeList> {
5386 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5387 unsafe {
5388 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
5389 (::windows::core::Interface::vtable(this).ChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5390 }
5391 }
5392 pub fn FirstChild(&self) -> ::windows::core::Result<IXmlNode> {
5393 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5394 unsafe {
5395 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5396 (::windows::core::Interface::vtable(this).FirstChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5397 }
5398 }
5399 pub fn LastChild(&self) -> ::windows::core::Result<IXmlNode> {
5400 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5401 unsafe {
5402 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5403 (::windows::core::Interface::vtable(this).LastChild)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5404 }
5405 }
5406 pub fn PreviousSibling(&self) -> ::windows::core::Result<IXmlNode> {
5407 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5408 unsafe {
5409 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5410 (::windows::core::Interface::vtable(this).PreviousSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5411 }
5412 }
5413 pub fn NextSibling(&self) -> ::windows::core::Result<IXmlNode> {
5414 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5415 unsafe {
5416 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5417 (::windows::core::Interface::vtable(this).NextSibling)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5418 }
5419 }
5420 pub fn Attributes(&self) -> ::windows::core::Result<XmlNamedNodeMap> {
5421 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5422 unsafe {
5423 let mut result__ = ::windows::core::zeroed::<XmlNamedNodeMap>();
5424 (::windows::core::Interface::vtable(this).Attributes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5425 }
5426 }
5427 pub fn HasChildNodes(&self) -> ::windows::core::Result<bool> {
5428 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5429 unsafe {
5430 let mut result__ = ::windows::core::zeroed::<bool>();
5431 (::windows::core::Interface::vtable(this).HasChildNodes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5432 }
5433 }
5434 pub fn OwnerDocument(&self) -> ::windows::core::Result<XmlDocument> {
5435 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5436 unsafe {
5437 let mut result__ = ::windows::core::zeroed::<XmlDocument>();
5438 (::windows::core::Interface::vtable(this).OwnerDocument)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5439 }
5440 }
5441 pub fn InsertBefore<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
5442 where
5443 P0: ::windows::core::TryIntoParam<IXmlNode>,
5444 P1: ::windows::core::TryIntoParam<IXmlNode>,
5445 {
5446 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5447 unsafe {
5448 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5449 (::windows::core::Interface::vtable(this).InsertBefore)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
5450 }
5451 }
5452 pub fn ReplaceChild<P0, P1>(&self, newchild: P0, referencechild: P1) -> ::windows::core::Result<IXmlNode>
5453 where
5454 P0: ::windows::core::TryIntoParam<IXmlNode>,
5455 P1: ::windows::core::TryIntoParam<IXmlNode>,
5456 {
5457 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5458 unsafe {
5459 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5460 (::windows::core::Interface::vtable(this).ReplaceChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), referencechild.try_into_param()?.abi(), &mut result__).from_abi(result__)
5461 }
5462 }
5463 pub fn RemoveChild<P0>(&self, childnode: P0) -> ::windows::core::Result<IXmlNode>
5464 where
5465 P0: ::windows::core::TryIntoParam<IXmlNode>,
5466 {
5467 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5468 unsafe {
5469 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5470 (::windows::core::Interface::vtable(this).RemoveChild)(::windows::core::Interface::as_raw(this), childnode.try_into_param()?.abi(), &mut result__).from_abi(result__)
5471 }
5472 }
5473 pub fn AppendChild<P0>(&self, newchild: P0) -> ::windows::core::Result<IXmlNode>
5474 where
5475 P0: ::windows::core::TryIntoParam<IXmlNode>,
5476 {
5477 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5478 unsafe {
5479 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5480 (::windows::core::Interface::vtable(this).AppendChild)(::windows::core::Interface::as_raw(this), newchild.try_into_param()?.abi(), &mut result__).from_abi(result__)
5481 }
5482 }
5483 pub fn CloneNode(&self, deep: bool) -> ::windows::core::Result<IXmlNode> {
5484 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5485 unsafe {
5486 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5487 (::windows::core::Interface::vtable(this).CloneNode)(::windows::core::Interface::as_raw(this), deep, &mut result__).from_abi(result__)
5488 }
5489 }
5490 pub fn NamespaceUri(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5491 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5492 unsafe {
5493 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5494 (::windows::core::Interface::vtable(this).NamespaceUri)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5495 }
5496 }
5497 pub fn LocalName(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5498 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5499 unsafe {
5500 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5501 (::windows::core::Interface::vtable(this).LocalName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5502 }
5503 }
5504 pub fn Prefix(&self) -> ::windows::core::Result<::windows::core::IInspectable> {
5505 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5506 unsafe {
5507 let mut result__ = ::windows::core::zeroed::<::windows::core::IInspectable>();
5508 (::windows::core::Interface::vtable(this).Prefix)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5509 }
5510 }
5511 pub fn Normalize(&self) -> ::windows::core::Result<()> {
5512 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5513 unsafe { (::windows::core::Interface::vtable(this).Normalize)(::windows::core::Interface::as_raw(this)).ok() }
5514 }
5515 pub fn SetPrefix<P0>(&self, value: P0) -> ::windows::core::Result<()>
5516 where
5517 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5518 {
5519 let this = &::windows::core::ComInterface::cast::<IXmlNode>(self)?;
5520 unsafe { (::windows::core::Interface::vtable(this).SetPrefix)(::windows::core::Interface::as_raw(this), value.into_param().abi()).ok() }
5521 }
5522 pub fn SelectSingleNode(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<IXmlNode> {
5523 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5524 unsafe {
5525 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5526 (::windows::core::Interface::vtable(this).SelectSingleNode)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
5527 }
5528 }
5529 pub fn SelectNodes(&self, xpath: &::windows::core::HSTRING) -> ::windows::core::Result<XmlNodeList> {
5530 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5531 unsafe {
5532 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
5533 (::windows::core::Interface::vtable(this).SelectNodes)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), &mut result__).from_abi(result__)
5534 }
5535 }
5536 pub fn SelectSingleNodeNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<IXmlNode>
5537 where
5538 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5539 {
5540 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5541 unsafe {
5542 let mut result__ = ::windows::core::zeroed::<IXmlNode>();
5543 (::windows::core::Interface::vtable(this).SelectSingleNodeNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
5544 }
5545 }
5546 pub fn SelectNodesNS<P0>(&self, xpath: &::windows::core::HSTRING, namespaces: P0) -> ::windows::core::Result<XmlNodeList>
5547 where
5548 P0: ::windows::core::IntoParam<::windows::core::IInspectable>,
5549 {
5550 let this = &::windows::core::ComInterface::cast::<IXmlNodeSelector>(self)?;
5551 unsafe {
5552 let mut result__ = ::windows::core::zeroed::<XmlNodeList>();
5553 (::windows::core::Interface::vtable(this).SelectNodesNS)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(xpath), namespaces.into_param().abi(), &mut result__).from_abi(result__)
5554 }
5555 }
5556 pub fn GetXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5557 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
5558 unsafe {
5559 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5560 (::windows::core::Interface::vtable(this).GetXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5561 }
5562 }
5563 pub fn InnerText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5564 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
5565 unsafe {
5566 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5567 (::windows::core::Interface::vtable(this).InnerText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5568 }
5569 }
5570 pub fn SetInnerText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
5571 let this = &::windows::core::ComInterface::cast::<IXmlNodeSerializer>(self)?;
5572 unsafe { (::windows::core::Interface::vtable(this).SetInnerText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
5573 }
5574 pub fn SplitText(&self, offset: u32) -> ::windows::core::Result<IXmlText> {
5575 let this = self;
5576 unsafe {
5577 let mut result__ = ::windows::core::zeroed::<IXmlText>();
5578 (::windows::core::Interface::vtable(this).SplitText)(::windows::core::Interface::as_raw(this), offset, &mut result__).from_abi(result__)
5579 }
5580 }
5581}
5582impl ::core::cmp::PartialEq for XmlText {
5583 fn eq(&self, other: &Self) -> bool {
5584 self.0 == other.0
5585 }
5586}
5587impl ::core::cmp::Eq for XmlText {}
5588impl ::core::fmt::Debug for XmlText {
5589 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5590 f.debug_tuple("XmlText").field(&self.0).finish()
5591 }
5592}
5593impl ::windows::core::RuntimeType for XmlText {
5594 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Data.Xml.Dom.XmlText;{f931a4cb-308d-4760-a1d5-43b67450ac7e})");
5595}
5596impl ::core::clone::Clone for XmlText {
5597 fn clone(&self) -> Self {
5598 Self(self.0.clone())
5599 }
5600}
5601unsafe impl ::windows::core::Interface for XmlText {
5602 type Vtable = IXmlText_Vtbl;
5603}
5604unsafe impl ::windows::core::ComInterface for XmlText {
5605 const IID: ::windows::core::GUID = <IXmlText as ::windows::core::ComInterface>::IID;
5606}
5607impl ::windows::core::RuntimeName for XmlText {
5608 const NAME: &'static str = "Windows.Data.Xml.Dom.XmlText";
5609}
5610::windows::imp::interface_hierarchy!(XmlText, ::windows::core::IUnknown, ::windows::core::IInspectable);
5611impl ::windows::core::CanTryInto<IXmlCharacterData> for XmlText {}
5612impl ::windows::core::CanTryInto<IXmlNode> for XmlText {}
5613impl ::windows::core::CanTryInto<IXmlNodeSelector> for XmlText {}
5614impl ::windows::core::CanTryInto<IXmlNodeSerializer> for XmlText {}
5615impl ::windows::core::CanTryInto<IXmlText> for XmlText {}
5616unsafe impl ::core::marker::Send for XmlText {}
5617unsafe impl ::core::marker::Sync for XmlText {}
5618#[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
5619#[repr(transparent)]
5620#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
5621pub struct NodeType(pub i32);
5622impl NodeType {
5623 pub const Invalid: Self = Self(0i32);
5624 pub const ElementNode: Self = Self(1i32);
5625 pub const AttributeNode: Self = Self(2i32);
5626 pub const TextNode: Self = Self(3i32);
5627 pub const DataSectionNode: Self = Self(4i32);
5628 pub const EntityReferenceNode: Self = Self(5i32);
5629 pub const EntityNode: Self = Self(6i32);
5630 pub const ProcessingInstructionNode: Self = Self(7i32);
5631 pub const CommentNode: Self = Self(8i32);
5632 pub const DocumentNode: Self = Self(9i32);
5633 pub const DocumentTypeNode: Self = Self(10i32);
5634 pub const DocumentFragmentNode: Self = Self(11i32);
5635 pub const NotationNode: Self = Self(12i32);
5636}
5637impl ::core::marker::Copy for NodeType {}
5638impl ::core::clone::Clone for NodeType {
5639 fn clone(&self) -> Self {
5640 *self
5641 }
5642}
5643impl ::core::default::Default for NodeType {
5644 fn default() -> Self {
5645 Self(0)
5646 }
5647}
5648impl ::windows::core::TypeKind for NodeType {
5649 type TypeKind = ::windows::core::CopyType;
5650}
5651impl ::core::fmt::Debug for NodeType {
5652 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5653 f.debug_tuple("NodeType").field(&self.0).finish()
5654 }
5655}
5656impl ::windows::core::RuntimeType for NodeType {
5657 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Data.Xml.Dom.NodeType;i4)");
5658}
5659#[cfg(feature = "implement")]
5660::core::include!("impl.rs");