1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3 #[repr(transparent)]
4 pub struct DeviceDiscoveryMechanism(pub i32);
5 pub const MulticastDiscovery: DeviceDiscoveryMechanism = DeviceDiscoveryMechanism(0i32);
6 pub const DirectedDiscovery: DeviceDiscoveryMechanism = DeviceDiscoveryMechanism(1i32);
7 pub const SecureDirectedDiscovery: DeviceDiscoveryMechanism = DeviceDiscoveryMechanism(2i32);
8 impl ::std::convert::From<i32> for DeviceDiscoveryMechanism {
from(value: i32) -> Self9     fn from(value: i32) -> Self {
10         Self(value)
11     }
12 }
13 unsafe impl ::windows::runtime::Abi for DeviceDiscoveryMechanism {
14     type Abi = Self;
15     type DefaultType = Self;
16 }
17 #[repr(transparent)]
18 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
19 pub struct IWSDAddress(::windows::runtime::IUnknown);
20 impl IWSDAddress {
21     #[cfg(feature = "Win32_Foundation")]
Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()>22     pub unsafe fn Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()> {
23         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pszbuffer), ::std::mem::transmute(cchlength), fsafe.into_param().abi()).ok()
24     }
25     #[cfg(feature = "Win32_Foundation")]
Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()>26     pub unsafe fn Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()> {
27         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszbuffer.into_param().abi()).ok()
28     }
29 }
30 unsafe impl ::windows::runtime::Interface for IWSDAddress {
31     type Vtable = IWSDAddress_abi;
32     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3109506156, 4774, 20340, [147, 161, 51, 24, 255, 96, 87, 89]);
33 }
34 impl ::std::convert::From<IWSDAddress> for ::windows::runtime::IUnknown {
from(value: IWSDAddress) -> Self35     fn from(value: IWSDAddress) -> Self {
36         unsafe { ::std::mem::transmute(value) }
37     }
38 }
39 impl ::std::convert::From<&IWSDAddress> for ::windows::runtime::IUnknown {
from(value: &IWSDAddress) -> Self40     fn from(value: &IWSDAddress) -> Self {
41         ::std::convert::From::from(::std::clone::Clone::clone(value))
42     }
43 }
44 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>45     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
46         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
47     }
48 }
49 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>50     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
51         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
52     }
53 }
54 #[repr(C)]
55 #[doc(hidden)]
56 pub struct IWSDAddress_abi(
57     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
58     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
59     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
60     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
61     #[cfg(not(feature = "Win32_Foundation"))] usize,
62     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
63     #[cfg(not(feature = "Win32_Foundation"))] usize,
64 );
65 #[repr(transparent)]
66 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
67 pub struct IWSDAsyncCallback(::windows::runtime::IUnknown);
68 impl IWSDAsyncCallback {
AsyncOperationComplete<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pasyncresult: Param0, pasyncstate: Param1) -> ::windows::runtime::Result<()>69     pub unsafe fn AsyncOperationComplete<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pasyncresult: Param0, pasyncstate: Param1) -> ::windows::runtime::Result<()> {
70         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pasyncresult.into_param().abi(), pasyncstate.into_param().abi()).ok()
71     }
72 }
73 unsafe impl ::windows::runtime::Interface for IWSDAsyncCallback {
74     type Vtable = IWSDAsyncCallback_abi;
75     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2789085341, 52850, 18914, [186, 152, 232, 69, 245, 238, 22, 102]);
76 }
77 impl ::std::convert::From<IWSDAsyncCallback> for ::windows::runtime::IUnknown {
from(value: IWSDAsyncCallback) -> Self78     fn from(value: IWSDAsyncCallback) -> Self {
79         unsafe { ::std::mem::transmute(value) }
80     }
81 }
82 impl ::std::convert::From<&IWSDAsyncCallback> for ::windows::runtime::IUnknown {
from(value: &IWSDAsyncCallback) -> Self83     fn from(value: &IWSDAsyncCallback) -> Self {
84         ::std::convert::From::from(::std::clone::Clone::clone(value))
85     }
86 }
87 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDAsyncCallback {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>88     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
89         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
90     }
91 }
92 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDAsyncCallback {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>93     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
94         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
95     }
96 }
97 #[repr(C)]
98 #[doc(hidden)]
99 pub struct IWSDAsyncCallback_abi(
100     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
101     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
102     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
103     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pasyncresult: ::windows::runtime::RawPtr, pasyncstate: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
104 );
105 #[repr(transparent)]
106 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
107 pub struct IWSDAsyncResult(::windows::runtime::IUnknown);
108 impl IWSDAsyncResult {
SetCallback<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pcallback: Param0, pasyncstate: Param1) -> ::windows::runtime::Result<()>109     pub unsafe fn SetCallback<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pcallback: Param0, pasyncstate: Param1) -> ::windows::runtime::Result<()> {
110         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pcallback.into_param().abi(), pasyncstate.into_param().abi()).ok()
111     }
112     #[cfg(feature = "Win32_Foundation")]
SetWaitHandle<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>>(&self, hwaithandle: Param0) -> ::windows::runtime::Result<()>113     pub unsafe fn SetWaitHandle<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>>(&self, hwaithandle: Param0) -> ::windows::runtime::Result<()> {
114         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), hwaithandle.into_param().abi()).ok()
115     }
HasCompleted(&self) -> ::windows::runtime::Result<()>116     pub unsafe fn HasCompleted(&self) -> ::windows::runtime::Result<()> {
117         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
118     }
GetAsyncState(&self) -> ::windows::runtime::Result<::windows::runtime::IUnknown>119     pub unsafe fn GetAsyncState(&self) -> ::windows::runtime::Result<::windows::runtime::IUnknown> {
120         let mut result__: <::windows::runtime::IUnknown as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
121         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<::windows::runtime::IUnknown>(result__)
122     }
Abort(&self) -> ::windows::runtime::Result<()>123     pub unsafe fn Abort(&self) -> ::windows::runtime::Result<()> {
124         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)).ok()
125     }
126     #[cfg(feature = "Win32_Foundation")]
GetEvent(&self) -> ::windows::runtime::Result<WSD_EVENT>127     pub unsafe fn GetEvent(&self) -> ::windows::runtime::Result<WSD_EVENT> {
128         let mut result__: <WSD_EVENT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
129         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<WSD_EVENT>(result__)
130     }
GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy>131     pub unsafe fn GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy> {
132         let mut result__: <IWSDEndpointProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
133         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDEndpointProxy>(result__)
134     }
135 }
136 unsafe impl ::windows::runtime::Interface for IWSDAsyncResult {
137     type Vtable = IWSDAsyncResult_abi;
138     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(296322346, 36312, 16958, [181, 55, 147, 86, 219, 79, 191, 184]);
139 }
140 impl ::std::convert::From<IWSDAsyncResult> for ::windows::runtime::IUnknown {
from(value: IWSDAsyncResult) -> Self141     fn from(value: IWSDAsyncResult) -> Self {
142         unsafe { ::std::mem::transmute(value) }
143     }
144 }
145 impl ::std::convert::From<&IWSDAsyncResult> for ::windows::runtime::IUnknown {
from(value: &IWSDAsyncResult) -> Self146     fn from(value: &IWSDAsyncResult) -> Self {
147         ::std::convert::From::from(::std::clone::Clone::clone(value))
148     }
149 }
150 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDAsyncResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>151     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
152         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
153     }
154 }
155 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDAsyncResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>156     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
157         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
158     }
159 }
160 #[repr(C)]
161 #[doc(hidden)]
162 pub struct IWSDAsyncResult_abi(
163     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
164     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
165     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
166     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcallback: ::windows::runtime::RawPtr, pasyncstate: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
167     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, hwaithandle: super::super::Foundation::HANDLE) -> ::windows::runtime::HRESULT,
168     #[cfg(not(feature = "Win32_Foundation"))] usize,
169     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
170     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppasyncstate: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
171     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
172     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pevent: *mut ::std::mem::ManuallyDrop<WSD_EVENT>) -> ::windows::runtime::HRESULT,
173     #[cfg(not(feature = "Win32_Foundation"))] usize,
174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppendpoint: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
175 );
176 #[repr(transparent)]
177 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
178 pub struct IWSDAttachment(::windows::runtime::IUnknown);
179 impl IWSDAttachment {}
180 unsafe impl ::windows::runtime::Interface for IWSDAttachment {
181     type Vtable = IWSDAttachment_abi;
182     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1565894166, 40440, 19209, [177, 86, 155, 163, 81, 164, 139, 118]);
183 }
184 impl ::std::convert::From<IWSDAttachment> for ::windows::runtime::IUnknown {
from(value: IWSDAttachment) -> Self185     fn from(value: IWSDAttachment) -> Self {
186         unsafe { ::std::mem::transmute(value) }
187     }
188 }
189 impl ::std::convert::From<&IWSDAttachment> for ::windows::runtime::IUnknown {
from(value: &IWSDAttachment) -> Self190     fn from(value: &IWSDAttachment) -> Self {
191         ::std::convert::From::from(::std::clone::Clone::clone(value))
192     }
193 }
194 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>195     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
196         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
197     }
198 }
199 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>200     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
201         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
202     }
203 }
204 #[repr(C)]
205 #[doc(hidden)]
206 pub struct IWSDAttachment_abi(
207     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
208     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
209     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
210 );
211 #[repr(transparent)]
212 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
213 pub struct IWSDDeviceHost(::windows::runtime::IUnknown);
214 impl IWSDDeviceHost {
215     #[cfg(feature = "Win32_Foundation")]
Init<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(&self, pszlocalid: Param0, pcontext: Param1, pphostaddresses: *const ::std::option::Option<IWSDAddress>, dwhostaddresscount: u32) -> ::windows::runtime::Result<()>216     pub unsafe fn Init<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(&self, pszlocalid: Param0, pcontext: Param1, pphostaddresses: *const ::std::option::Option<IWSDAddress>, dwhostaddresscount: u32) -> ::windows::runtime::Result<()> {
217         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszlocalid.into_param().abi(), pcontext.into_param().abi(), ::std::mem::transmute(pphostaddresses), ::std::mem::transmute(dwhostaddresscount)).ok()
218     }
219     #[cfg(feature = "Win32_Foundation")]
Start<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDDeviceHostNotify>>(&self, ullinstanceid: u64, pscopelist: *const WSD_URI_LIST, pnotificationsink: Param2) -> ::windows::runtime::Result<()>220     pub unsafe fn Start<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDDeviceHostNotify>>(&self, ullinstanceid: u64, pscopelist: *const WSD_URI_LIST, pnotificationsink: Param2) -> ::windows::runtime::Result<()> {
221         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(ullinstanceid), ::std::mem::transmute(pscopelist), pnotificationsink.into_param().abi()).ok()
222     }
Stop(&self) -> ::windows::runtime::Result<()>223     pub unsafe fn Stop(&self) -> ::windows::runtime::Result<()> {
224         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
225     }
Terminate(&self) -> ::windows::runtime::Result<()>226     pub unsafe fn Terminate(&self) -> ::windows::runtime::Result<()> {
227         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)).ok()
228     }
229     #[cfg(feature = "Win32_Foundation")]
RegisterPortType(&self, pporttype: *const WSD_PORT_TYPE) -> ::windows::runtime::Result<()>230     pub unsafe fn RegisterPortType(&self, pporttype: *const WSD_PORT_TYPE) -> ::windows::runtime::Result<()> {
231         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pporttype)).ok()
232     }
233     #[cfg(feature = "Win32_Foundation")]
SetMetadata(&self, pthismodelmetadata: *const WSD_THIS_MODEL_METADATA, pthisdevicemetadata: *const WSD_THIS_DEVICE_METADATA, phostmetadata: *const WSD_HOST_METADATA, pcustommetadata: *const WSD_METADATA_SECTION_LIST) -> ::windows::runtime::Result<()>234     pub unsafe fn SetMetadata(&self, pthismodelmetadata: *const WSD_THIS_MODEL_METADATA, pthisdevicemetadata: *const WSD_THIS_DEVICE_METADATA, phostmetadata: *const WSD_HOST_METADATA, pcustommetadata: *const WSD_METADATA_SECTION_LIST) -> ::windows::runtime::Result<()> {
235         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(pthismodelmetadata), ::std::mem::transmute(pthisdevicemetadata), ::std::mem::transmute(phostmetadata), ::std::mem::transmute(pcustommetadata)).ok()
236     }
237     #[cfg(feature = "Win32_Foundation")]
RegisterService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pszserviceid: Param0, pservice: Param1) -> ::windows::runtime::Result<()>238     pub unsafe fn RegisterService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pszserviceid: Param0, pservice: Param1) -> ::windows::runtime::Result<()> {
239         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi(), pservice.into_param().abi()).ok()
240     }
241     #[cfg(feature = "Win32_Foundation")]
RetireService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<()>242     pub unsafe fn RetireService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<()> {
243         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi()).ok()
244     }
245     #[cfg(feature = "Win32_Foundation")]
AddDynamicService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pszserviceid: Param0, pszendpointaddress: Param1, pporttype: *const WSD_PORT_TYPE, pportname: *const WSDXML_NAME, pany: *const WSDXML_ELEMENT, pservice: Param5) -> ::windows::runtime::Result<()>246     pub unsafe fn AddDynamicService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pszserviceid: Param0, pszendpointaddress: Param1, pporttype: *const WSD_PORT_TYPE, pportname: *const WSDXML_NAME, pany: *const WSDXML_ELEMENT, pservice: Param5) -> ::windows::runtime::Result<()> {
247         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi(), pszendpointaddress.into_param().abi(), ::std::mem::transmute(pporttype), ::std::mem::transmute(pportname), ::std::mem::transmute(pany), pservice.into_param().abi()).ok()
248     }
249     #[cfg(feature = "Win32_Foundation")]
RemoveDynamicService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<()>250     pub unsafe fn RemoveDynamicService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<()> {
251         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi()).ok()
252     }
253     #[cfg(feature = "Win32_Foundation")]
SetServiceDiscoverable<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszserviceid: Param0, fdiscoverable: Param1) -> ::windows::runtime::Result<()>254     pub unsafe fn SetServiceDiscoverable<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszserviceid: Param0, fdiscoverable: Param1) -> ::windows::runtime::Result<()> {
255         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi(), fdiscoverable.into_param().abi()).ok()
256     }
257     #[cfg(feature = "Win32_Foundation")]
SignalEvent<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()>258     pub unsafe fn SignalEvent<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()> {
259         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi(), ::std::mem::transmute(pbody), ::std::mem::transmute(poperation)).ok()
260     }
261 }
262 unsafe impl ::windows::runtime::Interface for IWSDDeviceHost {
263     type Vtable = IWSDDeviceHost_abi;
264     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2441078929, 15635, 16696, [152, 9, 147, 76, 138, 190, 177, 44]);
265 }
266 impl ::std::convert::From<IWSDDeviceHost> for ::windows::runtime::IUnknown {
from(value: IWSDDeviceHost) -> Self267     fn from(value: IWSDDeviceHost) -> Self {
268         unsafe { ::std::mem::transmute(value) }
269     }
270 }
271 impl ::std::convert::From<&IWSDDeviceHost> for ::windows::runtime::IUnknown {
from(value: &IWSDDeviceHost) -> Self272     fn from(value: &IWSDDeviceHost) -> Self {
273         ::std::convert::From::from(::std::clone::Clone::clone(value))
274     }
275 }
276 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDDeviceHost {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>277     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
278         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
279     }
280 }
281 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDDeviceHost {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>282     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
283         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
284     }
285 }
286 #[repr(C)]
287 #[doc(hidden)]
288 pub struct IWSDDeviceHost_abi(
289     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
290     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
291     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
292     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, pphostaddresses: *const ::windows::runtime::RawPtr, dwhostaddresscount: u32) -> ::windows::runtime::HRESULT,
293     #[cfg(not(feature = "Win32_Foundation"))] usize,
294     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ullinstanceid: u64, pscopelist: *const WSD_URI_LIST, pnotificationsink: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
295     #[cfg(not(feature = "Win32_Foundation"))] usize,
296     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
297     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
298     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pporttype: *const WSD_PORT_TYPE) -> ::windows::runtime::HRESULT,
299     #[cfg(not(feature = "Win32_Foundation"))] usize,
300     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pthismodelmetadata: *const WSD_THIS_MODEL_METADATA, pthisdevicemetadata: *const WSD_THIS_DEVICE_METADATA, phostmetadata: *const WSD_HOST_METADATA, pcustommetadata: *const WSD_METADATA_SECTION_LIST) -> ::windows::runtime::HRESULT,
301     #[cfg(not(feature = "Win32_Foundation"))] usize,
302     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR, pservice: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
303     #[cfg(not(feature = "Win32_Foundation"))] usize,
304     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
305     #[cfg(not(feature = "Win32_Foundation"))] usize,
306     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR, pszendpointaddress: super::super::Foundation::PWSTR, pporttype: *const WSD_PORT_TYPE, pportname: *const WSDXML_NAME, pany: *const WSDXML_ELEMENT, pservice: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
307     #[cfg(not(feature = "Win32_Foundation"))] usize,
308     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
309     #[cfg(not(feature = "Win32_Foundation"))] usize,
310     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR, fdiscoverable: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
311     #[cfg(not(feature = "Win32_Foundation"))] usize,
312     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR, pbody: *const ::std::ffi::c_void, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>) -> ::windows::runtime::HRESULT,
313     #[cfg(not(feature = "Win32_Foundation"))] usize,
314 );
315 #[repr(transparent)]
316 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
317 pub struct IWSDDeviceHostNotify(::windows::runtime::IUnknown);
318 impl IWSDDeviceHostNotify {
319     #[cfg(feature = "Win32_Foundation")]
GetService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<::windows::runtime::IUnknown>320     pub unsafe fn GetService<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<::windows::runtime::IUnknown> {
321         let mut result__: <::windows::runtime::IUnknown as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
322         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IUnknown>(result__)
323     }
324 }
325 unsafe impl ::windows::runtime::Interface for IWSDDeviceHostNotify {
326     type Vtable = IWSDDeviceHostNotify_abi;
327     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3049187833, 61146, 16894, [150, 247, 244, 94, 20, 153, 15, 176]);
328 }
329 impl ::std::convert::From<IWSDDeviceHostNotify> for ::windows::runtime::IUnknown {
from(value: IWSDDeviceHostNotify) -> Self330     fn from(value: IWSDDeviceHostNotify) -> Self {
331         unsafe { ::std::mem::transmute(value) }
332     }
333 }
334 impl ::std::convert::From<&IWSDDeviceHostNotify> for ::windows::runtime::IUnknown {
from(value: &IWSDDeviceHostNotify) -> Self335     fn from(value: &IWSDDeviceHostNotify) -> Self {
336         ::std::convert::From::from(::std::clone::Clone::clone(value))
337     }
338 }
339 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDDeviceHostNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>340     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
341         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
342     }
343 }
344 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDDeviceHostNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>345     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
346         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
347     }
348 }
349 #[repr(C)]
350 #[doc(hidden)]
351 pub struct IWSDDeviceHostNotify_abi(
352     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
353     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
354     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
355     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR, ppservice: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
356     #[cfg(not(feature = "Win32_Foundation"))] usize,
357 );
358 #[repr(transparent)]
359 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
360 pub struct IWSDDeviceProxy(::windows::runtime::IUnknown);
361 impl IWSDDeviceProxy {
362     #[cfg(feature = "Win32_Foundation")]
Init<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDAddress>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, IWSDXMLContext>, Param4: ::windows::runtime::IntoParam<'a, IWSDDeviceProxy>>(&self, pszdeviceid: Param0, pdeviceaddress: Param1, pszlocalid: Param2, pcontext: Param3, psponsor: Param4) -> ::windows::runtime::Result<()>363     pub unsafe fn Init<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDAddress>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, IWSDXMLContext>, Param4: ::windows::runtime::IntoParam<'a, IWSDDeviceProxy>>(&self, pszdeviceid: Param0, pdeviceaddress: Param1, pszlocalid: Param2, pcontext: Param3, psponsor: Param4) -> ::windows::runtime::Result<()> {
364         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszdeviceid.into_param().abi(), pdeviceaddress.into_param().abi(), pszlocalid.into_param().abi(), pcontext.into_param().abi(), psponsor.into_param().abi()).ok()
365     }
BeginGetMetadata(&self) -> ::windows::runtime::Result<IWSDAsyncResult>366     pub unsafe fn BeginGetMetadata(&self) -> ::windows::runtime::Result<IWSDAsyncResult> {
367         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
368         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAsyncResult>(result__)
369     }
EndGetMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, presult: Param0) -> ::windows::runtime::Result<()>370     pub unsafe fn EndGetMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, presult: Param0) -> ::windows::runtime::Result<()> {
371         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), presult.into_param().abi()).ok()
372     }
373     #[cfg(feature = "Win32_Foundation")]
GetHostMetadata(&self) -> ::windows::runtime::Result<*mut WSD_HOST_METADATA>374     pub unsafe fn GetHostMetadata(&self) -> ::windows::runtime::Result<*mut WSD_HOST_METADATA> {
375         let mut result__: <*mut WSD_HOST_METADATA as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
376         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_HOST_METADATA>(result__)
377     }
378     #[cfg(feature = "Win32_Foundation")]
GetThisModelMetadata(&self) -> ::windows::runtime::Result<*mut WSD_THIS_MODEL_METADATA>379     pub unsafe fn GetThisModelMetadata(&self) -> ::windows::runtime::Result<*mut WSD_THIS_MODEL_METADATA> {
380         let mut result__: <*mut WSD_THIS_MODEL_METADATA as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
381         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_THIS_MODEL_METADATA>(result__)
382     }
383     #[cfg(feature = "Win32_Foundation")]
GetThisDeviceMetadata(&self) -> ::windows::runtime::Result<*mut WSD_THIS_DEVICE_METADATA>384     pub unsafe fn GetThisDeviceMetadata(&self) -> ::windows::runtime::Result<*mut WSD_THIS_DEVICE_METADATA> {
385         let mut result__: <*mut WSD_THIS_DEVICE_METADATA as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
386         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_THIS_DEVICE_METADATA>(result__)
387     }
388     #[cfg(feature = "Win32_Foundation")]
GetAllMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST>389     pub unsafe fn GetAllMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST> {
390         let mut result__: <*mut WSD_METADATA_SECTION_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
391         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_METADATA_SECTION_LIST>(result__)
392     }
393     #[cfg(feature = "Win32_Foundation")]
GetServiceProxyById<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<IWSDServiceProxy>394     pub unsafe fn GetServiceProxyById<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszserviceid: Param0) -> ::windows::runtime::Result<IWSDServiceProxy> {
395         let mut result__: <IWSDServiceProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
396         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), pszserviceid.into_param().abi(), &mut result__).from_abi::<IWSDServiceProxy>(result__)
397     }
398     #[cfg(feature = "Win32_Foundation")]
GetServiceProxyByType(&self, ptype: *const WSDXML_NAME) -> ::windows::runtime::Result<IWSDServiceProxy>399     pub unsafe fn GetServiceProxyByType(&self, ptype: *const WSDXML_NAME) -> ::windows::runtime::Result<IWSDServiceProxy> {
400         let mut result__: <IWSDServiceProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
401         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(ptype), &mut result__).from_abi::<IWSDServiceProxy>(result__)
402     }
GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy>403     pub unsafe fn GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy> {
404         let mut result__: <IWSDEndpointProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
405         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDEndpointProxy>(result__)
406     }
407 }
408 unsafe impl ::windows::runtime::Interface for IWSDDeviceProxy {
409     type Vtable = IWSDDeviceProxy_abi;
410     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4007706673, 50552, 19470, [154, 59, 151, 60, 53, 244, 9, 219]);
411 }
412 impl ::std::convert::From<IWSDDeviceProxy> for ::windows::runtime::IUnknown {
from(value: IWSDDeviceProxy) -> Self413     fn from(value: IWSDDeviceProxy) -> Self {
414         unsafe { ::std::mem::transmute(value) }
415     }
416 }
417 impl ::std::convert::From<&IWSDDeviceProxy> for ::windows::runtime::IUnknown {
from(value: &IWSDDeviceProxy) -> Self418     fn from(value: &IWSDDeviceProxy) -> Self {
419         ::std::convert::From::from(::std::clone::Clone::clone(value))
420     }
421 }
422 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDDeviceProxy {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>423     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
424         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
425     }
426 }
427 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDDeviceProxy {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>428     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
429         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
430     }
431 }
432 #[repr(C)]
433 #[doc(hidden)]
434 pub struct IWSDDeviceProxy_abi(
435     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
436     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
437     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
438     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszdeviceid: super::super::Foundation::PWSTR, pdeviceaddress: ::windows::runtime::RawPtr, pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, psponsor: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
439     #[cfg(not(feature = "Win32_Foundation"))] usize,
440     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppresult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
441     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, presult: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
442     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pphostmetadata: *mut *mut WSD_HOST_METADATA) -> ::windows::runtime::HRESULT,
443     #[cfg(not(feature = "Win32_Foundation"))] usize,
444     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppmanufacturermetadata: *mut *mut WSD_THIS_MODEL_METADATA) -> ::windows::runtime::HRESULT,
445     #[cfg(not(feature = "Win32_Foundation"))] usize,
446     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppthisdevicemetadata: *mut *mut WSD_THIS_DEVICE_METADATA) -> ::windows::runtime::HRESULT,
447     #[cfg(not(feature = "Win32_Foundation"))] usize,
448     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppmetadata: *mut *mut WSD_METADATA_SECTION_LIST) -> ::windows::runtime::HRESULT,
449     #[cfg(not(feature = "Win32_Foundation"))] usize,
450     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszserviceid: super::super::Foundation::PWSTR, ppserviceproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
451     #[cfg(not(feature = "Win32_Foundation"))] usize,
452     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ptype: *const WSDXML_NAME, ppserviceproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
453     #[cfg(not(feature = "Win32_Foundation"))] usize,
454     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
455 );
456 #[repr(transparent)]
457 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
458 pub struct IWSDEndpointProxy(::windows::runtime::IUnknown);
459 impl IWSDEndpointProxy {
460     #[cfg(feature = "Win32_Foundation")]
SendOneWayRequest(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()>461     pub unsafe fn SendOneWayRequest(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()> {
462         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbody), ::std::mem::transmute(poperation)).ok()
463     }
464     #[cfg(feature = "Win32_Foundation")]
SendTwoWayRequest(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION, presponsecontext: *const WSD_SYNCHRONOUS_RESPONSE_CONTEXT) -> ::windows::runtime::Result<()>465     pub unsafe fn SendTwoWayRequest(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION, presponsecontext: *const WSD_SYNCHRONOUS_RESPONSE_CONTEXT) -> ::windows::runtime::Result<()> {
466         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbody), ::std::mem::transmute(poperation), ::std::mem::transmute(presponsecontext)).ok()
467     }
468     #[cfg(feature = "Win32_Foundation")]
SendTwoWayRequestAsync<'a, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param3: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION, pasyncstate: Param2, pcallback: Param3) -> ::windows::runtime::Result<IWSDAsyncResult>469     pub unsafe fn SendTwoWayRequestAsync<'a, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param3: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION, pasyncstate: Param2, pcallback: Param3) -> ::windows::runtime::Result<IWSDAsyncResult> {
470         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
471         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbody), ::std::mem::transmute(poperation), pasyncstate.into_param().abi(), pcallback.into_param().abi(), &mut result__).from_abi::<IWSDAsyncResult>(result__)
472     }
AbortAsyncOperation<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, pasyncresult: Param0) -> ::windows::runtime::Result<()>473     pub unsafe fn AbortAsyncOperation<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, pasyncresult: Param0) -> ::windows::runtime::Result<()> {
474         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), pasyncresult.into_param().abi()).ok()
475     }
476     #[cfg(feature = "Win32_Foundation")]
ProcessFault(&self, pfault: *const WSD_SOAP_FAULT) -> ::windows::runtime::Result<()>477     pub unsafe fn ProcessFault(&self, pfault: *const WSD_SOAP_FAULT) -> ::windows::runtime::Result<()> {
478         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pfault)).ok()
479     }
480     #[cfg(feature = "Win32_Foundation")]
GetErrorInfo(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>481     pub unsafe fn GetErrorInfo(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
482         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
483         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
484     }
485     #[cfg(feature = "Win32_Foundation")]
GetFaultInfo(&self) -> ::windows::runtime::Result<*mut WSD_SOAP_FAULT>486     pub unsafe fn GetFaultInfo(&self) -> ::windows::runtime::Result<*mut WSD_SOAP_FAULT> {
487         let mut result__: <*mut WSD_SOAP_FAULT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
488         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_SOAP_FAULT>(result__)
489     }
490 }
491 unsafe impl ::windows::runtime::Interface for IWSDEndpointProxy {
492     type Vtable = IWSDEndpointProxy_abi;
493     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(408998960, 45644, 18805, [159, 144, 219, 179, 155, 170, 36, 236]);
494 }
495 impl ::std::convert::From<IWSDEndpointProxy> for ::windows::runtime::IUnknown {
from(value: IWSDEndpointProxy) -> Self496     fn from(value: IWSDEndpointProxy) -> Self {
497         unsafe { ::std::mem::transmute(value) }
498     }
499 }
500 impl ::std::convert::From<&IWSDEndpointProxy> for ::windows::runtime::IUnknown {
from(value: &IWSDEndpointProxy) -> Self501     fn from(value: &IWSDEndpointProxy) -> Self {
502         ::std::convert::From::from(::std::clone::Clone::clone(value))
503     }
504 }
505 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDEndpointProxy {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>506     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
507         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
508     }
509 }
510 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDEndpointProxy {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>511     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
512         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
513     }
514 }
515 #[repr(C)]
516 #[doc(hidden)]
517 pub struct IWSDEndpointProxy_abi(
518     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
519     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
520     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
521     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbody: *const ::std::ffi::c_void, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>) -> ::windows::runtime::HRESULT,
522     #[cfg(not(feature = "Win32_Foundation"))] usize,
523     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbody: *const ::std::ffi::c_void, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, presponsecontext: *const ::std::mem::ManuallyDrop<WSD_SYNCHRONOUS_RESPONSE_CONTEXT>) -> ::windows::runtime::HRESULT,
524     #[cfg(not(feature = "Win32_Foundation"))] usize,
525     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbody: *const ::std::ffi::c_void, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, pasyncstate: ::windows::runtime::RawPtr, pcallback: ::windows::runtime::RawPtr, presult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
526     #[cfg(not(feature = "Win32_Foundation"))] usize,
527     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pasyncresult: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
528     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pfault: *const WSD_SOAP_FAULT) -> ::windows::runtime::HRESULT,
529     #[cfg(not(feature = "Win32_Foundation"))] usize,
530     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszerrorinfo: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
531     #[cfg(not(feature = "Win32_Foundation"))] usize,
532     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppfault: *mut *mut WSD_SOAP_FAULT) -> ::windows::runtime::HRESULT,
533     #[cfg(not(feature = "Win32_Foundation"))] usize,
534 );
535 #[repr(transparent)]
536 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
537 pub struct IWSDEventingStatus(::windows::runtime::IUnknown);
538 impl IWSDEventingStatus {
539     #[cfg(feature = "Win32_Foundation")]
SubscriptionRenewed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszsubscriptionaction: Param0)540     pub unsafe fn SubscriptionRenewed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszsubscriptionaction: Param0) {
541         ::std::mem::transmute((::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszsubscriptionaction.into_param().abi()))
542     }
543     #[cfg(feature = "Win32_Foundation")]
SubscriptionRenewalFailed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszsubscriptionaction: Param0, hr: ::windows::runtime::HRESULT)544     pub unsafe fn SubscriptionRenewalFailed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszsubscriptionaction: Param0, hr: ::windows::runtime::HRESULT) {
545         ::std::mem::transmute((::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszsubscriptionaction.into_param().abi(), ::std::mem::transmute(hr)))
546     }
547     #[cfg(feature = "Win32_Foundation")]
SubscriptionEnded<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszsubscriptionaction: Param0)548     pub unsafe fn SubscriptionEnded<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszsubscriptionaction: Param0) {
549         ::std::mem::transmute((::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), pszsubscriptionaction.into_param().abi()))
550     }
551 }
552 unsafe impl ::windows::runtime::Interface for IWSDEventingStatus {
553     type Vtable = IWSDEventingStatus_abi;
554     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1236369234, 25466, 16506, [174, 153, 251, 232, 42, 77, 56, 192]);
555 }
556 impl ::std::convert::From<IWSDEventingStatus> for ::windows::runtime::IUnknown {
from(value: IWSDEventingStatus) -> Self557     fn from(value: IWSDEventingStatus) -> Self {
558         unsafe { ::std::mem::transmute(value) }
559     }
560 }
561 impl ::std::convert::From<&IWSDEventingStatus> for ::windows::runtime::IUnknown {
from(value: &IWSDEventingStatus) -> Self562     fn from(value: &IWSDEventingStatus) -> Self {
563         ::std::convert::From::from(::std::clone::Clone::clone(value))
564     }
565 }
566 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDEventingStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>567     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
568         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
569     }
570 }
571 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDEventingStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>572     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
573         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
574     }
575 }
576 #[repr(C)]
577 #[doc(hidden)]
578 pub struct IWSDEventingStatus_abi(
579     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
580     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
581     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
582     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszsubscriptionaction: super::super::Foundation::PWSTR),
583     #[cfg(not(feature = "Win32_Foundation"))] usize,
584     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszsubscriptionaction: super::super::Foundation::PWSTR, hr: ::windows::runtime::HRESULT),
585     #[cfg(not(feature = "Win32_Foundation"))] usize,
586     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszsubscriptionaction: super::super::Foundation::PWSTR),
587     #[cfg(not(feature = "Win32_Foundation"))] usize,
588 );
589 #[repr(transparent)]
590 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
591 pub struct IWSDHttpAddress(::windows::runtime::IUnknown);
592 impl IWSDHttpAddress {
593     #[cfg(feature = "Win32_Foundation")]
Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()>594     pub unsafe fn Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()> {
595         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pszbuffer), ::std::mem::transmute(cchlength), fsafe.into_param().abi()).ok()
596     }
597     #[cfg(feature = "Win32_Foundation")]
Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()>598     pub unsafe fn Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()> {
599         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszbuffer.into_param().abi()).ok()
600     }
GetPort(&self) -> ::windows::runtime::Result<u16>601     pub unsafe fn GetPort(&self) -> ::windows::runtime::Result<u16> {
602         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
603         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
604     }
SetPort(&self, wport: u16) -> ::windows::runtime::Result<()>605     pub unsafe fn SetPort(&self, wport: u16) -> ::windows::runtime::Result<()> {
606         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(wport)).ok()
607     }
608     #[cfg(feature = "Win32_Foundation")]
GetTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>609     pub unsafe fn GetTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
610         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
611         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
612     }
613     #[cfg(feature = "Win32_Foundation")]
GetTransportAddressEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsafe: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>614     pub unsafe fn GetTransportAddressEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsafe: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
615         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
616         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), fsafe.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
617     }
618     #[cfg(feature = "Win32_Foundation")]
SetTransportAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0) -> ::windows::runtime::Result<()>619     pub unsafe fn SetTransportAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0) -> ::windows::runtime::Result<()> {
620         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pszaddress.into_param().abi()).ok()
621     }
GetSecure(&self) -> ::windows::runtime::Result<()>622     pub unsafe fn GetSecure(&self) -> ::windows::runtime::Result<()> {
623         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self)).ok()
624     }
625     #[cfg(feature = "Win32_Foundation")]
SetSecure<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsecure: Param0) -> ::windows::runtime::Result<()>626     pub unsafe fn SetSecure<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsecure: Param0) -> ::windows::runtime::Result<()> {
627         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), fsecure.into_param().abi()).ok()
628     }
629     #[cfg(feature = "Win32_Foundation")]
GetPath(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>630     pub unsafe fn GetPath(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
631         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
632         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
633     }
634     #[cfg(feature = "Win32_Foundation")]
SetPath<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszpath: Param0) -> ::windows::runtime::Result<()>635     pub unsafe fn SetPath<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszpath: Param0) -> ::windows::runtime::Result<()> {
636         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), pszpath.into_param().abi()).ok()
637     }
638 }
639 unsafe impl ::windows::runtime::Interface for IWSDHttpAddress {
640     type Vtable = IWSDHttpAddress_abi;
641     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3499804605, 10814, 19333, [134, 5, 39, 55, 255, 62, 78, 160]);
642 }
643 impl ::std::convert::From<IWSDHttpAddress> for ::windows::runtime::IUnknown {
from(value: IWSDHttpAddress) -> Self644     fn from(value: IWSDHttpAddress) -> Self {
645         unsafe { ::std::mem::transmute(value) }
646     }
647 }
648 impl ::std::convert::From<&IWSDHttpAddress> for ::windows::runtime::IUnknown {
from(value: &IWSDHttpAddress) -> Self649     fn from(value: &IWSDHttpAddress) -> Self {
650         ::std::convert::From::from(::std::clone::Clone::clone(value))
651     }
652 }
653 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDHttpAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>654     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
655         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
656     }
657 }
658 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDHttpAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>659     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
660         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
661     }
662 }
663 impl ::std::convert::From<IWSDHttpAddress> for IWSDTransportAddress {
from(value: IWSDHttpAddress) -> Self664     fn from(value: IWSDHttpAddress) -> Self {
665         unsafe { ::std::mem::transmute(value) }
666     }
667 }
668 impl ::std::convert::From<&IWSDHttpAddress> for IWSDTransportAddress {
from(value: &IWSDHttpAddress) -> Self669     fn from(value: &IWSDHttpAddress) -> Self {
670         ::std::convert::From::from(::std::clone::Clone::clone(value))
671     }
672 }
673 impl<'a> ::windows::runtime::IntoParam<'a, IWSDTransportAddress> for IWSDHttpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress>674     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress> {
675         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDTransportAddress>::into(self))
676     }
677 }
678 impl<'a> ::windows::runtime::IntoParam<'a, IWSDTransportAddress> for &IWSDHttpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress>679     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress> {
680         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDTransportAddress>::into(::std::clone::Clone::clone(self)))
681     }
682 }
683 impl ::std::convert::From<IWSDHttpAddress> for IWSDAddress {
from(value: IWSDHttpAddress) -> Self684     fn from(value: IWSDHttpAddress) -> Self {
685         unsafe { ::std::mem::transmute(value) }
686     }
687 }
688 impl ::std::convert::From<&IWSDHttpAddress> for IWSDAddress {
from(value: &IWSDHttpAddress) -> Self689     fn from(value: &IWSDHttpAddress) -> Self {
690         ::std::convert::From::from(::std::clone::Clone::clone(value))
691     }
692 }
693 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAddress> for IWSDHttpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress>694     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress> {
695         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAddress>::into(self))
696     }
697 }
698 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAddress> for &IWSDHttpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress>699     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress> {
700         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAddress>::into(::std::clone::Clone::clone(self)))
701     }
702 }
703 #[repr(C)]
704 #[doc(hidden)]
705 pub struct IWSDHttpAddress_abi(
706     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
707     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
708     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
709     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
710     #[cfg(not(feature = "Win32_Foundation"))] usize,
711     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
712     #[cfg(not(feature = "Win32_Foundation"))] usize,
713     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwport: *mut u16) -> ::windows::runtime::HRESULT,
714     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wport: u16) -> ::windows::runtime::HRESULT,
715     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
716     #[cfg(not(feature = "Win32_Foundation"))] usize,
717     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fsafe: super::super::Foundation::BOOL, ppszaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
718     #[cfg(not(feature = "Win32_Foundation"))] usize,
719     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszaddress: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
720     #[cfg(not(feature = "Win32_Foundation"))] usize,
721     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
722     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fsecure: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
723     #[cfg(not(feature = "Win32_Foundation"))] usize,
724     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszpath: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
725     #[cfg(not(feature = "Win32_Foundation"))] usize,
726     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszpath: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
727     #[cfg(not(feature = "Win32_Foundation"))] usize,
728 );
729 #[repr(transparent)]
730 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
731 pub struct IWSDHttpAuthParameters(::windows::runtime::IUnknown);
732 impl IWSDHttpAuthParameters {
733     #[cfg(feature = "Win32_Foundation")]
GetClientAccessToken(&self) -> ::windows::runtime::Result<super::super::Foundation::HANDLE>734     pub unsafe fn GetClientAccessToken(&self) -> ::windows::runtime::Result<super::super::Foundation::HANDLE> {
735         let mut result__: <super::super::Foundation::HANDLE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
736         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::HANDLE>(result__)
737     }
GetAuthType(&self) -> ::windows::runtime::Result<u32>738     pub unsafe fn GetAuthType(&self) -> ::windows::runtime::Result<u32> {
739         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
740         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
741     }
742 }
743 unsafe impl ::windows::runtime::Interface for IWSDHttpAuthParameters {
744     type Vtable = IWSDHttpAuthParameters_abi;
745     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(189230576, 36268, 18445, [176, 92, 153, 120, 26, 88, 132, 170]);
746 }
747 impl ::std::convert::From<IWSDHttpAuthParameters> for ::windows::runtime::IUnknown {
from(value: IWSDHttpAuthParameters) -> Self748     fn from(value: IWSDHttpAuthParameters) -> Self {
749         unsafe { ::std::mem::transmute(value) }
750     }
751 }
752 impl ::std::convert::From<&IWSDHttpAuthParameters> for ::windows::runtime::IUnknown {
from(value: &IWSDHttpAuthParameters) -> Self753     fn from(value: &IWSDHttpAuthParameters) -> Self {
754         ::std::convert::From::from(::std::clone::Clone::clone(value))
755     }
756 }
757 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDHttpAuthParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>758     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
759         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
760     }
761 }
762 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDHttpAuthParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>763     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
764         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
765     }
766 }
767 #[repr(C)]
768 #[doc(hidden)]
769 pub struct IWSDHttpAuthParameters_abi(
770     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
771     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
772     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
773     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, phtoken: *mut super::super::Foundation::HANDLE) -> ::windows::runtime::HRESULT,
774     #[cfg(not(feature = "Win32_Foundation"))] usize,
775     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pauthtype: *mut u32) -> ::windows::runtime::HRESULT,
776 );
777 #[repr(transparent)]
778 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
779 pub struct IWSDHttpMessageParameters(::windows::runtime::IUnknown);
780 impl IWSDHttpMessageParameters {
GetLocalAddress(&self) -> ::windows::runtime::Result<IWSDAddress>781     pub unsafe fn GetLocalAddress(&self) -> ::windows::runtime::Result<IWSDAddress> {
782         let mut result__: <IWSDAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
783         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAddress>(result__)
784     }
SetLocalAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()>785     pub unsafe fn SetLocalAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()> {
786         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), paddress.into_param().abi()).ok()
787     }
GetRemoteAddress(&self) -> ::windows::runtime::Result<IWSDAddress>788     pub unsafe fn GetRemoteAddress(&self) -> ::windows::runtime::Result<IWSDAddress> {
789         let mut result__: <IWSDAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
790         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAddress>(result__)
791     }
SetRemoteAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()>792     pub unsafe fn SetRemoteAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()> {
793         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), paddress.into_param().abi()).ok()
794     }
GetLowerParameters(&self) -> ::windows::runtime::Result<IWSDMessageParameters>795     pub unsafe fn GetLowerParameters(&self) -> ::windows::runtime::Result<IWSDMessageParameters> {
796         let mut result__: <IWSDMessageParameters as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
797         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDMessageParameters>(result__)
798     }
799     #[cfg(feature = "Win32_Foundation")]
SetInboundHttpHeaders<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszheaders: Param0) -> ::windows::runtime::Result<()>800     pub unsafe fn SetInboundHttpHeaders<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszheaders: Param0) -> ::windows::runtime::Result<()> {
801         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), pszheaders.into_param().abi()).ok()
802     }
803     #[cfg(feature = "Win32_Foundation")]
GetInboundHttpHeaders(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>804     pub unsafe fn GetInboundHttpHeaders(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
805         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
806         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
807     }
808     #[cfg(feature = "Win32_Foundation")]
SetOutboundHttpHeaders<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszheaders: Param0) -> ::windows::runtime::Result<()>809     pub unsafe fn SetOutboundHttpHeaders<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszheaders: Param0) -> ::windows::runtime::Result<()> {
810         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), pszheaders.into_param().abi()).ok()
811     }
812     #[cfg(feature = "Win32_Foundation")]
GetOutboundHttpHeaders(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>813     pub unsafe fn GetOutboundHttpHeaders(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
814         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
815         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
816     }
817     #[cfg(feature = "Win32_Foundation")]
SetID<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0) -> ::windows::runtime::Result<()>818     pub unsafe fn SetID<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0) -> ::windows::runtime::Result<()> {
819         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), pszid.into_param().abi()).ok()
820     }
821     #[cfg(feature = "Win32_Foundation")]
GetID(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>822     pub unsafe fn GetID(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
823         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
824         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
825     }
SetContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pcontext: Param0) -> ::windows::runtime::Result<()>826     pub unsafe fn SetContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pcontext: Param0) -> ::windows::runtime::Result<()> {
827         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), pcontext.into_param().abi()).ok()
828     }
GetContext(&self) -> ::windows::runtime::Result<::windows::runtime::IUnknown>829     pub unsafe fn GetContext(&self) -> ::windows::runtime::Result<::windows::runtime::IUnknown> {
830         let mut result__: <::windows::runtime::IUnknown as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
831         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), &mut result__).from_abi::<::windows::runtime::IUnknown>(result__)
832     }
Clear(&self) -> ::windows::runtime::Result<()>833     pub unsafe fn Clear(&self) -> ::windows::runtime::Result<()> {
834         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self)).ok()
835     }
836 }
837 unsafe impl ::windows::runtime::Interface for IWSDHttpMessageParameters {
838     type Vtable = IWSDHttpMessageParameters_abi;
839     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1410060578, 23683, 19948, [179, 150, 234, 98, 162, 105, 127, 223]);
840 }
841 impl ::std::convert::From<IWSDHttpMessageParameters> for ::windows::runtime::IUnknown {
from(value: IWSDHttpMessageParameters) -> Self842     fn from(value: IWSDHttpMessageParameters) -> Self {
843         unsafe { ::std::mem::transmute(value) }
844     }
845 }
846 impl ::std::convert::From<&IWSDHttpMessageParameters> for ::windows::runtime::IUnknown {
from(value: &IWSDHttpMessageParameters) -> Self847     fn from(value: &IWSDHttpMessageParameters) -> Self {
848         ::std::convert::From::from(::std::clone::Clone::clone(value))
849     }
850 }
851 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDHttpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>852     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
853         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
854     }
855 }
856 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDHttpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>857     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
858         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
859     }
860 }
861 impl ::std::convert::From<IWSDHttpMessageParameters> for IWSDMessageParameters {
from(value: IWSDHttpMessageParameters) -> Self862     fn from(value: IWSDHttpMessageParameters) -> Self {
863         unsafe { ::std::mem::transmute(value) }
864     }
865 }
866 impl ::std::convert::From<&IWSDHttpMessageParameters> for IWSDMessageParameters {
from(value: &IWSDHttpMessageParameters) -> Self867     fn from(value: &IWSDHttpMessageParameters) -> Self {
868         ::std::convert::From::from(::std::clone::Clone::clone(value))
869     }
870 }
871 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMessageParameters> for IWSDHttpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters>872     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters> {
873         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMessageParameters>::into(self))
874     }
875 }
876 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMessageParameters> for &IWSDHttpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters>877     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters> {
878         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMessageParameters>::into(::std::clone::Clone::clone(self)))
879     }
880 }
881 #[repr(C)]
882 #[doc(hidden)]
883 pub struct IWSDHttpMessageParameters_abi(
884     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
885     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
886     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
887     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
888     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paddress: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paddress: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pptxparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
892     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszheaders: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
893     #[cfg(not(feature = "Win32_Foundation"))] usize,
894     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszheaders: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
895     #[cfg(not(feature = "Win32_Foundation"))] usize,
896     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszheaders: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
897     #[cfg(not(feature = "Win32_Foundation"))] usize,
898     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszheaders: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
899     #[cfg(not(feature = "Win32_Foundation"))] usize,
900     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszid: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
901     #[cfg(not(feature = "Win32_Foundation"))] usize,
902     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszid: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
903     #[cfg(not(feature = "Win32_Foundation"))] usize,
904     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcontext: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
905     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppcontext: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
906     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
907 );
908 #[repr(transparent)]
909 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
910 pub struct IWSDInboundAttachment(::windows::runtime::IUnknown);
911 impl IWSDInboundAttachment {
Read(&self, pbuffer: *mut u8, dwbytestoread: u32, pdwnumberofbytesread: *mut u32) -> ::windows::runtime::Result<()>912     pub unsafe fn Read(&self, pbuffer: *mut u8, dwbytestoread: u32, pdwnumberofbytesread: *mut u32) -> ::windows::runtime::Result<()> {
913         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbuffer), ::std::mem::transmute(dwbytestoread), ::std::mem::transmute(pdwnumberofbytesread)).ok()
914     }
Close(&self) -> ::windows::runtime::Result<()>915     pub unsafe fn Close(&self) -> ::windows::runtime::Result<()> {
916         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)).ok()
917     }
918 }
919 unsafe impl ::windows::runtime::Interface for IWSDInboundAttachment {
920     type Vtable = IWSDInboundAttachment_abi;
921     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1540803173, 9020, 20408, [159, 122, 38, 65, 97, 150, 85, 201]);
922 }
923 impl ::std::convert::From<IWSDInboundAttachment> for ::windows::runtime::IUnknown {
from(value: IWSDInboundAttachment) -> Self924     fn from(value: IWSDInboundAttachment) -> Self {
925         unsafe { ::std::mem::transmute(value) }
926     }
927 }
928 impl ::std::convert::From<&IWSDInboundAttachment> for ::windows::runtime::IUnknown {
from(value: &IWSDInboundAttachment) -> Self929     fn from(value: &IWSDInboundAttachment) -> Self {
930         ::std::convert::From::from(::std::clone::Clone::clone(value))
931     }
932 }
933 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDInboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>934     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
935         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
936     }
937 }
938 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDInboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>939     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
940         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
941     }
942 }
943 impl ::std::convert::From<IWSDInboundAttachment> for IWSDAttachment {
from(value: IWSDInboundAttachment) -> Self944     fn from(value: IWSDInboundAttachment) -> Self {
945         unsafe { ::std::mem::transmute(value) }
946     }
947 }
948 impl ::std::convert::From<&IWSDInboundAttachment> for IWSDAttachment {
from(value: &IWSDInboundAttachment) -> Self949     fn from(value: &IWSDInboundAttachment) -> Self {
950         ::std::convert::From::from(::std::clone::Clone::clone(value))
951     }
952 }
953 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAttachment> for IWSDInboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment>954     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment> {
955         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAttachment>::into(self))
956     }
957 }
958 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAttachment> for &IWSDInboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment>959     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment> {
960         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAttachment>::into(::std::clone::Clone::clone(self)))
961     }
962 }
963 #[repr(C)]
964 #[doc(hidden)]
965 pub struct IWSDInboundAttachment_abi(
966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
967     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
968     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
969     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbuffer: *mut u8, dwbytestoread: u32, pdwnumberofbytesread: *mut u32) -> ::windows::runtime::HRESULT,
970     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
971 );
972 #[repr(transparent)]
973 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
974 pub struct IWSDMessageParameters(::windows::runtime::IUnknown);
975 impl IWSDMessageParameters {
GetLocalAddress(&self) -> ::windows::runtime::Result<IWSDAddress>976     pub unsafe fn GetLocalAddress(&self) -> ::windows::runtime::Result<IWSDAddress> {
977         let mut result__: <IWSDAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
978         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAddress>(result__)
979     }
SetLocalAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()>980     pub unsafe fn SetLocalAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()> {
981         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), paddress.into_param().abi()).ok()
982     }
GetRemoteAddress(&self) -> ::windows::runtime::Result<IWSDAddress>983     pub unsafe fn GetRemoteAddress(&self) -> ::windows::runtime::Result<IWSDAddress> {
984         let mut result__: <IWSDAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
985         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAddress>(result__)
986     }
SetRemoteAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()>987     pub unsafe fn SetRemoteAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()> {
988         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), paddress.into_param().abi()).ok()
989     }
GetLowerParameters(&self) -> ::windows::runtime::Result<IWSDMessageParameters>990     pub unsafe fn GetLowerParameters(&self) -> ::windows::runtime::Result<IWSDMessageParameters> {
991         let mut result__: <IWSDMessageParameters as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
992         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDMessageParameters>(result__)
993     }
994 }
995 unsafe impl ::windows::runtime::Interface for IWSDMessageParameters {
996     type Vtable = IWSDMessageParameters_abi;
997     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(531622050, 59132, 19328, [182, 207, 183, 212, 92, 65, 109, 124]);
998 }
999 impl ::std::convert::From<IWSDMessageParameters> for ::windows::runtime::IUnknown {
from(value: IWSDMessageParameters) -> Self1000     fn from(value: IWSDMessageParameters) -> Self {
1001         unsafe { ::std::mem::transmute(value) }
1002     }
1003 }
1004 impl ::std::convert::From<&IWSDMessageParameters> for ::windows::runtime::IUnknown {
from(value: &IWSDMessageParameters) -> Self1005     fn from(value: &IWSDMessageParameters) -> Self {
1006         ::std::convert::From::from(::std::clone::Clone::clone(value))
1007     }
1008 }
1009 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1010     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1011         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1012     }
1013 }
1014 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1015     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1016         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1017     }
1018 }
1019 #[repr(C)]
1020 #[doc(hidden)]
1021 pub struct IWSDMessageParameters_abi(
1022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1024     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1025     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1026     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paddress: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1027     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1028     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paddress: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1029     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pptxparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1030 );
1031 #[repr(transparent)]
1032 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1033 pub struct IWSDMetadataExchange(::windows::runtime::IUnknown);
1034 impl IWSDMetadataExchange {
1035     #[cfg(feature = "Win32_Foundation")]
GetMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST>1036     pub unsafe fn GetMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST> {
1037         let mut result__: <*mut WSD_METADATA_SECTION_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1038         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_METADATA_SECTION_LIST>(result__)
1039     }
1040 }
1041 unsafe impl ::windows::runtime::Interface for IWSDMetadataExchange {
1042     type Vtable = IWSDMetadataExchange_abi;
1043     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(110718295, 7527, 18728, [147, 7, 61, 120, 51, 253, 184, 70]);
1044 }
1045 impl ::std::convert::From<IWSDMetadataExchange> for ::windows::runtime::IUnknown {
from(value: IWSDMetadataExchange) -> Self1046     fn from(value: IWSDMetadataExchange) -> Self {
1047         unsafe { ::std::mem::transmute(value) }
1048     }
1049 }
1050 impl ::std::convert::From<&IWSDMetadataExchange> for ::windows::runtime::IUnknown {
from(value: &IWSDMetadataExchange) -> Self1051     fn from(value: &IWSDMetadataExchange) -> Self {
1052         ::std::convert::From::from(::std::clone::Clone::clone(value))
1053     }
1054 }
1055 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDMetadataExchange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1056     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1057         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1058     }
1059 }
1060 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDMetadataExchange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1061     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1062         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1063     }
1064 }
1065 #[repr(C)]
1066 #[doc(hidden)]
1067 pub struct IWSDMetadataExchange_abi(
1068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1071     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, metadataout: *mut *mut WSD_METADATA_SECTION_LIST) -> ::windows::runtime::HRESULT,
1072     #[cfg(not(feature = "Win32_Foundation"))] usize,
1073 );
1074 #[repr(transparent)]
1075 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1076 pub struct IWSDOutboundAttachment(::windows::runtime::IUnknown);
1077 impl IWSDOutboundAttachment {
Write(&self, pbuffer: *const u8, dwbytestowrite: u32) -> ::windows::runtime::Result<u32>1078     pub unsafe fn Write(&self, pbuffer: *const u8, dwbytestowrite: u32) -> ::windows::runtime::Result<u32> {
1079         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1080         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbuffer), ::std::mem::transmute(dwbytestowrite), &mut result__).from_abi::<u32>(result__)
1081     }
Close(&self) -> ::windows::runtime::Result<()>1082     pub unsafe fn Close(&self) -> ::windows::runtime::Result<()> {
1083         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)).ok()
1084     }
Abort(&self) -> ::windows::runtime::Result<()>1085     pub unsafe fn Abort(&self) -> ::windows::runtime::Result<()> {
1086         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
1087     }
1088 }
1089 unsafe impl ::windows::runtime::Interface for IWSDOutboundAttachment {
1090     type Vtable = IWSDOutboundAttachment_abi;
1091     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2855284621, 23074, 19365, [179, 146, 170, 132, 134, 244, 193, 93]);
1092 }
1093 impl ::std::convert::From<IWSDOutboundAttachment> for ::windows::runtime::IUnknown {
from(value: IWSDOutboundAttachment) -> Self1094     fn from(value: IWSDOutboundAttachment) -> Self {
1095         unsafe { ::std::mem::transmute(value) }
1096     }
1097 }
1098 impl ::std::convert::From<&IWSDOutboundAttachment> for ::windows::runtime::IUnknown {
from(value: &IWSDOutboundAttachment) -> Self1099     fn from(value: &IWSDOutboundAttachment) -> Self {
1100         ::std::convert::From::from(::std::clone::Clone::clone(value))
1101     }
1102 }
1103 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDOutboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1104     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1105         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1106     }
1107 }
1108 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDOutboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1109     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1110         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1111     }
1112 }
1113 impl ::std::convert::From<IWSDOutboundAttachment> for IWSDAttachment {
from(value: IWSDOutboundAttachment) -> Self1114     fn from(value: IWSDOutboundAttachment) -> Self {
1115         unsafe { ::std::mem::transmute(value) }
1116     }
1117 }
1118 impl ::std::convert::From<&IWSDOutboundAttachment> for IWSDAttachment {
from(value: &IWSDOutboundAttachment) -> Self1119     fn from(value: &IWSDOutboundAttachment) -> Self {
1120         ::std::convert::From::from(::std::clone::Clone::clone(value))
1121     }
1122 }
1123 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAttachment> for IWSDOutboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment>1124     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment> {
1125         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAttachment>::into(self))
1126     }
1127 }
1128 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAttachment> for &IWSDOutboundAttachment {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment>1129     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAttachment> {
1130         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAttachment>::into(::std::clone::Clone::clone(self)))
1131     }
1132 }
1133 #[repr(C)]
1134 #[doc(hidden)]
1135 pub struct IWSDOutboundAttachment_abi(
1136     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1137     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1138     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1139     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbuffer: *const u8, dwbytestowrite: u32, pdwnumberofbyteswritten: *mut u32) -> ::windows::runtime::HRESULT,
1140     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1141     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1142 );
1143 #[repr(transparent)]
1144 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1145 pub struct IWSDSSLClientCertificate(::windows::runtime::IUnknown);
1146 impl IWSDSSLClientCertificate {
1147     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
GetClientCertificate(&self) -> ::windows::runtime::Result<*mut super::super::Security::Cryptography::CERT_CONTEXT>1148     pub unsafe fn GetClientCertificate(&self) -> ::windows::runtime::Result<*mut super::super::Security::Cryptography::CERT_CONTEXT> {
1149         let mut result__: <*mut super::super::Security::Cryptography::CERT_CONTEXT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1150         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut super::super::Security::Cryptography::CERT_CONTEXT>(result__)
1151     }
1152     #[cfg(feature = "Win32_Foundation")]
GetMappedAccessToken(&self) -> ::windows::runtime::Result<super::super::Foundation::HANDLE>1153     pub unsafe fn GetMappedAccessToken(&self) -> ::windows::runtime::Result<super::super::Foundation::HANDLE> {
1154         let mut result__: <super::super::Foundation::HANDLE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1155         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::HANDLE>(result__)
1156     }
1157 }
1158 unsafe impl ::windows::runtime::Interface for IWSDSSLClientCertificate {
1159     type Vtable = IWSDSSLClientCertificate_abi;
1160     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3725614727, 41178, 16782, [152, 173, 39, 185, 238, 216, 123, 220]);
1161 }
1162 impl ::std::convert::From<IWSDSSLClientCertificate> for ::windows::runtime::IUnknown {
from(value: IWSDSSLClientCertificate) -> Self1163     fn from(value: IWSDSSLClientCertificate) -> Self {
1164         unsafe { ::std::mem::transmute(value) }
1165     }
1166 }
1167 impl ::std::convert::From<&IWSDSSLClientCertificate> for ::windows::runtime::IUnknown {
from(value: &IWSDSSLClientCertificate) -> Self1168     fn from(value: &IWSDSSLClientCertificate) -> Self {
1169         ::std::convert::From::from(::std::clone::Clone::clone(value))
1170     }
1171 }
1172 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDSSLClientCertificate {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1173     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1174         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1175     }
1176 }
1177 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDSSLClientCertificate {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1178     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1179         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1180     }
1181 }
1182 #[repr(C)]
1183 #[doc(hidden)]
1184 pub struct IWSDSSLClientCertificate_abi(
1185     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1186     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1187     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1188     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppcertcontext: *mut *mut super::super::Security::Cryptography::CERT_CONTEXT) -> ::windows::runtime::HRESULT,
1189     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography")))] usize,
1190     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, phtoken: *mut super::super::Foundation::HANDLE) -> ::windows::runtime::HRESULT,
1191     #[cfg(not(feature = "Win32_Foundation"))] usize,
1192 );
1193 #[repr(transparent)]
1194 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1195 pub struct IWSDScopeMatchingRule(::windows::runtime::IUnknown);
1196 impl IWSDScopeMatchingRule {
1197     #[cfg(feature = "Win32_Foundation")]
GetScopeRule(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1198     pub unsafe fn GetScopeRule(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1199         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1200         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1201     }
1202     #[cfg(feature = "Win32_Foundation")]
MatchScopes<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszscope1: Param0, pszscope2: Param1) -> ::windows::runtime::Result<super::super::Foundation::BOOL>1203     pub unsafe fn MatchScopes<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszscope1: Param0, pszscope2: Param1) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
1204         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1205         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszscope1.into_param().abi(), pszscope2.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
1206     }
1207 }
1208 unsafe impl ::windows::runtime::Interface for IWSDScopeMatchingRule {
1209     type Vtable = IWSDScopeMatchingRule_abi;
1210     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4239385636, 65269, 18458, [189, 159, 51, 206, 5, 116, 37, 111]);
1211 }
1212 impl ::std::convert::From<IWSDScopeMatchingRule> for ::windows::runtime::IUnknown {
from(value: IWSDScopeMatchingRule) -> Self1213     fn from(value: IWSDScopeMatchingRule) -> Self {
1214         unsafe { ::std::mem::transmute(value) }
1215     }
1216 }
1217 impl ::std::convert::From<&IWSDScopeMatchingRule> for ::windows::runtime::IUnknown {
from(value: &IWSDScopeMatchingRule) -> Self1218     fn from(value: &IWSDScopeMatchingRule) -> Self {
1219         ::std::convert::From::from(::std::clone::Clone::clone(value))
1220     }
1221 }
1222 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDScopeMatchingRule {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1223     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1224         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1225     }
1226 }
1227 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDScopeMatchingRule {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1228     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1229         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1230     }
1231 }
1232 #[repr(C)]
1233 #[doc(hidden)]
1234 pub struct IWSDScopeMatchingRule_abi(
1235     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1236     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1237     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1238     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszscopematchingrule: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1239     #[cfg(not(feature = "Win32_Foundation"))] usize,
1240     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszscope1: super::super::Foundation::PWSTR, pszscope2: super::super::Foundation::PWSTR, pfmatch: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1241     #[cfg(not(feature = "Win32_Foundation"))] usize,
1242 );
1243 #[repr(transparent)]
1244 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1245 pub struct IWSDServiceMessaging(::windows::runtime::IUnknown);
1246 impl IWSDServiceMessaging {
1247     #[cfg(feature = "Win32_Foundation")]
SendResponse<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION, pmessageparameters: Param2) -> ::windows::runtime::Result<()>1248     pub unsafe fn SendResponse<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, pbody: *const ::std::ffi::c_void, poperation: *const WSD_OPERATION, pmessageparameters: Param2) -> ::windows::runtime::Result<()> {
1249         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbody), ::std::mem::transmute(poperation), pmessageparameters.into_param().abi()).ok()
1250     }
1251     #[cfg(feature = "Win32_Foundation")]
FaultRequest<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, prequestheader: *const WSD_SOAP_HEADER, pmessageparameters: Param1, pfault: *const WSD_SOAP_FAULT) -> ::windows::runtime::Result<()>1252     pub unsafe fn FaultRequest<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, prequestheader: *const WSD_SOAP_HEADER, pmessageparameters: Param1, pfault: *const WSD_SOAP_FAULT) -> ::windows::runtime::Result<()> {
1253         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(prequestheader), pmessageparameters.into_param().abi(), ::std::mem::transmute(pfault)).ok()
1254     }
1255 }
1256 unsafe impl ::windows::runtime::Interface for IWSDServiceMessaging {
1257     type Vtable = IWSDServiceMessaging_abi;
1258     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2492943604, 3243, 17933, [163, 246, 122, 10, 214, 35, 192, 230]);
1259 }
1260 impl ::std::convert::From<IWSDServiceMessaging> for ::windows::runtime::IUnknown {
from(value: IWSDServiceMessaging) -> Self1261     fn from(value: IWSDServiceMessaging) -> Self {
1262         unsafe { ::std::mem::transmute(value) }
1263     }
1264 }
1265 impl ::std::convert::From<&IWSDServiceMessaging> for ::windows::runtime::IUnknown {
from(value: &IWSDServiceMessaging) -> Self1266     fn from(value: &IWSDServiceMessaging) -> Self {
1267         ::std::convert::From::from(::std::clone::Clone::clone(value))
1268     }
1269 }
1270 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDServiceMessaging {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1271     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1272         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1273     }
1274 }
1275 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDServiceMessaging {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1276     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1277         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1278     }
1279 }
1280 #[repr(C)]
1281 #[doc(hidden)]
1282 pub struct IWSDServiceMessaging_abi(
1283     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1284     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1285     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1286     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbody: *const ::std::ffi::c_void, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, pmessageparameters: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1287     #[cfg(not(feature = "Win32_Foundation"))] usize,
1288     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prequestheader: *const WSD_SOAP_HEADER, pmessageparameters: ::windows::runtime::RawPtr, pfault: *const WSD_SOAP_FAULT) -> ::windows::runtime::HRESULT,
1289     #[cfg(not(feature = "Win32_Foundation"))] usize,
1290 );
1291 #[repr(transparent)]
1292 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1293 pub struct IWSDServiceProxy(::windows::runtime::IUnknown);
1294 impl IWSDServiceProxy {
1295     #[cfg(feature = "Win32_Foundation")]
GetMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST>1296     pub unsafe fn GetMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST> {
1297         let mut result__: <*mut WSD_METADATA_SECTION_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1298         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_METADATA_SECTION_LIST>(result__)
1299     }
BeginGetMetadata(&self) -> ::windows::runtime::Result<IWSDAsyncResult>1300     pub unsafe fn BeginGetMetadata(&self) -> ::windows::runtime::Result<IWSDAsyncResult> {
1301         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1302         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAsyncResult>(result__)
1303     }
1304     #[cfg(feature = "Win32_Foundation")]
EndGetMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, presult: Param0) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST>1305     pub unsafe fn EndGetMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, presult: Param0) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST> {
1306         let mut result__: <*mut WSD_METADATA_SECTION_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1307         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), presult.into_param().abi(), &mut result__).from_abi::<*mut WSD_METADATA_SECTION_LIST>(result__)
1308     }
1309     #[cfg(feature = "Win32_Foundation")]
GetServiceMetadata(&self) -> ::windows::runtime::Result<*mut WSD_SERVICE_METADATA>1310     pub unsafe fn GetServiceMetadata(&self) -> ::windows::runtime::Result<*mut WSD_SERVICE_METADATA> {
1311         let mut result__: <*mut WSD_SERVICE_METADATA as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1312         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_SERVICE_METADATA>(result__)
1313     }
1314     #[cfg(feature = "Win32_Foundation")]
SubscribeToOperation<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, poperation: *const WSD_OPERATION, punknown: Param1, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<*mut WSDXML_ELEMENT>1315     pub unsafe fn SubscribeToOperation<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, poperation: *const WSD_OPERATION, punknown: Param1, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<*mut WSDXML_ELEMENT> {
1316         let mut result__: <*mut WSDXML_ELEMENT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1317         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperation), punknown.into_param().abi(), ::std::mem::transmute(pany), &mut result__).from_abi::<*mut WSDXML_ELEMENT>(result__)
1318     }
1319     #[cfg(feature = "Win32_Foundation")]
UnsubscribeToOperation(&self, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()>1320     pub unsafe fn UnsubscribeToOperation(&self, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()> {
1321         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperation)).ok()
1322     }
SetEventingStatusCallback<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDEventingStatus>>(&self, pstatus: Param0) -> ::windows::runtime::Result<()>1323     pub unsafe fn SetEventingStatusCallback<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDEventingStatus>>(&self, pstatus: Param0) -> ::windows::runtime::Result<()> {
1324         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pstatus.into_param().abi()).ok()
1325     }
GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy>1326     pub unsafe fn GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy> {
1327         let mut result__: <IWSDEndpointProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1328         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDEndpointProxy>(result__)
1329     }
1330 }
1331 unsafe impl ::windows::runtime::Interface for IWSDServiceProxy {
1332     type Vtable = IWSDServiceProxy_abi;
1333     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3569875868, 939, 16757, [157, 103, 9, 79, 175, 235, 244, 135]);
1334 }
1335 impl ::std::convert::From<IWSDServiceProxy> for ::windows::runtime::IUnknown {
from(value: IWSDServiceProxy) -> Self1336     fn from(value: IWSDServiceProxy) -> Self {
1337         unsafe { ::std::mem::transmute(value) }
1338     }
1339 }
1340 impl ::std::convert::From<&IWSDServiceProxy> for ::windows::runtime::IUnknown {
from(value: &IWSDServiceProxy) -> Self1341     fn from(value: &IWSDServiceProxy) -> Self {
1342         ::std::convert::From::from(::std::clone::Clone::clone(value))
1343     }
1344 }
1345 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDServiceProxy {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1346     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1347         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1348     }
1349 }
1350 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDServiceProxy {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1351     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1352         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1353     }
1354 }
1355 impl ::std::convert::From<IWSDServiceProxy> for IWSDMetadataExchange {
from(value: IWSDServiceProxy) -> Self1356     fn from(value: IWSDServiceProxy) -> Self {
1357         unsafe { ::std::mem::transmute(value) }
1358     }
1359 }
1360 impl ::std::convert::From<&IWSDServiceProxy> for IWSDMetadataExchange {
from(value: &IWSDServiceProxy) -> Self1361     fn from(value: &IWSDServiceProxy) -> Self {
1362         ::std::convert::From::from(::std::clone::Clone::clone(value))
1363     }
1364 }
1365 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMetadataExchange> for IWSDServiceProxy {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange>1366     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange> {
1367         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMetadataExchange>::into(self))
1368     }
1369 }
1370 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMetadataExchange> for &IWSDServiceProxy {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange>1371     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange> {
1372         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMetadataExchange>::into(::std::clone::Clone::clone(self)))
1373     }
1374 }
1375 #[repr(C)]
1376 #[doc(hidden)]
1377 pub struct IWSDServiceProxy_abi(
1378     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1379     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1380     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1381     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, metadataout: *mut *mut WSD_METADATA_SECTION_LIST) -> ::windows::runtime::HRESULT,
1382     #[cfg(not(feature = "Win32_Foundation"))] usize,
1383     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppresult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1384     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, presult: ::windows::runtime::RawPtr, ppmetadata: *mut *mut WSD_METADATA_SECTION_LIST) -> ::windows::runtime::HRESULT,
1385     #[cfg(not(feature = "Win32_Foundation"))] usize,
1386     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppservicemetadata: *mut *mut WSD_SERVICE_METADATA) -> ::windows::runtime::HRESULT,
1387     #[cfg(not(feature = "Win32_Foundation"))] usize,
1388     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, punknown: ::windows::runtime::RawPtr, pany: *const WSDXML_ELEMENT, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1389     #[cfg(not(feature = "Win32_Foundation"))] usize,
1390     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>) -> ::windows::runtime::HRESULT,
1391     #[cfg(not(feature = "Win32_Foundation"))] usize,
1392     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstatus: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1393     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1394 );
1395 #[repr(transparent)]
1396 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1397 pub struct IWSDServiceProxyEventing(::windows::runtime::IUnknown);
1398 impl IWSDServiceProxyEventing {
1399     #[cfg(feature = "Win32_Foundation")]
GetMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST>1400     pub unsafe fn GetMetadata(&self) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST> {
1401         let mut result__: <*mut WSD_METADATA_SECTION_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1402         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_METADATA_SECTION_LIST>(result__)
1403     }
BeginGetMetadata(&self) -> ::windows::runtime::Result<IWSDAsyncResult>1404     pub unsafe fn BeginGetMetadata(&self) -> ::windows::runtime::Result<IWSDAsyncResult> {
1405         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1406         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAsyncResult>(result__)
1407     }
1408     #[cfg(feature = "Win32_Foundation")]
EndGetMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, presult: Param0) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST>1409     pub unsafe fn EndGetMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, presult: Param0) -> ::windows::runtime::Result<*mut WSD_METADATA_SECTION_LIST> {
1410         let mut result__: <*mut WSD_METADATA_SECTION_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1411         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), presult.into_param().abi(), &mut result__).from_abi::<*mut WSD_METADATA_SECTION_LIST>(result__)
1412     }
1413     #[cfg(feature = "Win32_Foundation")]
GetServiceMetadata(&self) -> ::windows::runtime::Result<*mut WSD_SERVICE_METADATA>1414     pub unsafe fn GetServiceMetadata(&self) -> ::windows::runtime::Result<*mut WSD_SERVICE_METADATA> {
1415         let mut result__: <*mut WSD_SERVICE_METADATA as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1416         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_SERVICE_METADATA>(result__)
1417     }
1418     #[cfg(feature = "Win32_Foundation")]
SubscribeToOperation<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, poperation: *const WSD_OPERATION, punknown: Param1, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<*mut WSDXML_ELEMENT>1419     pub unsafe fn SubscribeToOperation<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, poperation: *const WSD_OPERATION, punknown: Param1, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<*mut WSDXML_ELEMENT> {
1420         let mut result__: <*mut WSDXML_ELEMENT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1421         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperation), punknown.into_param().abi(), ::std::mem::transmute(pany), &mut result__).from_abi::<*mut WSDXML_ELEMENT>(result__)
1422     }
1423     #[cfg(feature = "Win32_Foundation")]
UnsubscribeToOperation(&self, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()>1424     pub unsafe fn UnsubscribeToOperation(&self, poperation: *const WSD_OPERATION) -> ::windows::runtime::Result<()> {
1425         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperation)).ok()
1426     }
SetEventingStatusCallback<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDEventingStatus>>(&self, pstatus: Param0) -> ::windows::runtime::Result<()>1427     pub unsafe fn SetEventingStatusCallback<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDEventingStatus>>(&self, pstatus: Param0) -> ::windows::runtime::Result<()> {
1428         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pstatus.into_param().abi()).ok()
1429     }
GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy>1430     pub unsafe fn GetEndpointProxy(&self) -> ::windows::runtime::Result<IWSDEndpointProxy> {
1431         let mut result__: <IWSDEndpointProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1432         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDEndpointProxy>(result__)
1433     }
1434     #[cfg(feature = "Win32_Foundation")]
SubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, punknown: Param2, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>1435     pub unsafe fn SubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, punknown: Param2, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
1436         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), punknown.into_param().abi(), ::std::mem::transmute(pexpires), ::std::mem::transmute(pany), ::std::mem::transmute(ppexpires), ::std::mem::transmute(ppany)).ok()
1437     }
1438     #[cfg(feature = "Win32_Foundation")]
BeginSubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param6: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>( &self, poperations: *const WSD_OPERATION, dwoperationcount: u32, punknown: Param2, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, pasyncstate: Param5, pasynccallback: Param6, ) -> ::windows::runtime::Result<IWSDAsyncResult>1439     pub unsafe fn BeginSubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param6: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(
1440         &self,
1441         poperations: *const WSD_OPERATION,
1442         dwoperationcount: u32,
1443         punknown: Param2,
1444         pexpires: *const WSD_EVENTING_EXPIRES,
1445         pany: *const WSDXML_ELEMENT,
1446         pasyncstate: Param5,
1447         pasynccallback: Param6,
1448     ) -> ::windows::runtime::Result<IWSDAsyncResult> {
1449         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1450         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), punknown.into_param().abi(), ::std::mem::transmute(pexpires), ::std::mem::transmute(pany), pasyncstate.into_param().abi(), pasynccallback.into_param().abi(), &mut result__).from_abi::<IWSDAsyncResult>(result__)
1451     }
1452     #[cfg(feature = "Win32_Foundation")]
EndSubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>1453     pub unsafe fn EndSubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
1454         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), presult.into_param().abi(), ::std::mem::transmute(ppexpires), ::std::mem::transmute(ppany)).ok()
1455     }
1456     #[cfg(feature = "Win32_Foundation")]
UnsubscribeToMultipleOperations(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<()>1457     pub unsafe fn UnsubscribeToMultipleOperations(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
1458         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), ::std::mem::transmute(pany)).ok()
1459     }
1460     #[cfg(feature = "Win32_Foundation")]
BeginUnsubscribeToMultipleOperations<'a, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param4: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, pasyncstate: Param3, pasynccallback: Param4) -> ::windows::runtime::Result<IWSDAsyncResult>1461     pub unsafe fn BeginUnsubscribeToMultipleOperations<'a, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param4: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, pasyncstate: Param3, pasynccallback: Param4) -> ::windows::runtime::Result<IWSDAsyncResult> {
1462         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1463         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), ::std::mem::transmute(pany), pasyncstate.into_param().abi(), pasynccallback.into_param().abi(), &mut result__).from_abi::<IWSDAsyncResult>(result__)
1464     }
1465     #[cfg(feature = "Win32_Foundation")]
EndUnsubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2) -> ::windows::runtime::Result<()>1466     pub unsafe fn EndUnsubscribeToMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2) -> ::windows::runtime::Result<()> {
1467         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), presult.into_param().abi()).ok()
1468     }
1469     #[cfg(feature = "Win32_Foundation")]
RenewMultipleOperations(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>1470     pub unsafe fn RenewMultipleOperations(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
1471         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), ::std::mem::transmute(pexpires), ::std::mem::transmute(pany), ::std::mem::transmute(ppexpires), ::std::mem::transmute(ppany)).ok()
1472     }
1473     #[cfg(feature = "Win32_Foundation")]
BeginRenewMultipleOperations<'a, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param5: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, pasyncstate: Param4, pasynccallback: Param5) -> ::windows::runtime::Result<IWSDAsyncResult>1474     pub unsafe fn BeginRenewMultipleOperations<'a, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param5: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, pasyncstate: Param4, pasynccallback: Param5) -> ::windows::runtime::Result<IWSDAsyncResult> {
1475         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1476         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), ::std::mem::transmute(pexpires), ::std::mem::transmute(pany), pasyncstate.into_param().abi(), pasynccallback.into_param().abi(), &mut result__).from_abi::<IWSDAsyncResult>(result__)
1477     }
1478     #[cfg(feature = "Win32_Foundation")]
EndRenewMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>1479     pub unsafe fn EndRenewMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
1480         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), presult.into_param().abi(), ::std::mem::transmute(ppexpires), ::std::mem::transmute(ppany)).ok()
1481     }
1482     #[cfg(feature = "Win32_Foundation")]
GetStatusForMultipleOperations(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>1483     pub unsafe fn GetStatusForMultipleOperations(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
1484         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), ::std::mem::transmute(pany), ::std::mem::transmute(ppexpires), ::std::mem::transmute(ppany)).ok()
1485     }
1486     #[cfg(feature = "Win32_Foundation")]
BeginGetStatusForMultipleOperations<'a, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param4: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, pasyncstate: Param3, pasynccallback: Param4) -> ::windows::runtime::Result<IWSDAsyncResult>1487     pub unsafe fn BeginGetStatusForMultipleOperations<'a, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param4: ::windows::runtime::IntoParam<'a, IWSDAsyncCallback>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, pasyncstate: Param3, pasynccallback: Param4) -> ::windows::runtime::Result<IWSDAsyncResult> {
1488         let mut result__: <IWSDAsyncResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1489         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), ::std::mem::transmute(pany), pasyncstate.into_param().abi(), pasynccallback.into_param().abi(), &mut result__).from_abi::<IWSDAsyncResult>(result__)
1490     }
1491     #[cfg(feature = "Win32_Foundation")]
EndGetStatusForMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>1492     pub unsafe fn EndGetStatusForMultipleOperations<'a, Param2: ::windows::runtime::IntoParam<'a, IWSDAsyncResult>>(&self, poperations: *const WSD_OPERATION, dwoperationcount: u32, presult: Param2, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
1493         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(poperations), ::std::mem::transmute(dwoperationcount), presult.into_param().abi(), ::std::mem::transmute(ppexpires), ::std::mem::transmute(ppany)).ok()
1494     }
1495 }
1496 unsafe impl ::windows::runtime::Interface for IWSDServiceProxyEventing {
1497     type Vtable = IWSDServiceProxyEventing_abi;
1498     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4180122989, 4114, 19092, [184, 204, 253, 53, 210, 32, 43, 254]);
1499 }
1500 impl ::std::convert::From<IWSDServiceProxyEventing> for ::windows::runtime::IUnknown {
from(value: IWSDServiceProxyEventing) -> Self1501     fn from(value: IWSDServiceProxyEventing) -> Self {
1502         unsafe { ::std::mem::transmute(value) }
1503     }
1504 }
1505 impl ::std::convert::From<&IWSDServiceProxyEventing> for ::windows::runtime::IUnknown {
from(value: &IWSDServiceProxyEventing) -> Self1506     fn from(value: &IWSDServiceProxyEventing) -> Self {
1507         ::std::convert::From::from(::std::clone::Clone::clone(value))
1508     }
1509 }
1510 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDServiceProxyEventing {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1511     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1512         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1513     }
1514 }
1515 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDServiceProxyEventing {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1516     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1517         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1518     }
1519 }
1520 impl ::std::convert::From<IWSDServiceProxyEventing> for IWSDServiceProxy {
from(value: IWSDServiceProxyEventing) -> Self1521     fn from(value: IWSDServiceProxyEventing) -> Self {
1522         unsafe { ::std::mem::transmute(value) }
1523     }
1524 }
1525 impl ::std::convert::From<&IWSDServiceProxyEventing> for IWSDServiceProxy {
from(value: &IWSDServiceProxyEventing) -> Self1526     fn from(value: &IWSDServiceProxyEventing) -> Self {
1527         ::std::convert::From::from(::std::clone::Clone::clone(value))
1528     }
1529 }
1530 impl<'a> ::windows::runtime::IntoParam<'a, IWSDServiceProxy> for IWSDServiceProxyEventing {
into_param(self) -> ::windows::runtime::Param<'a, IWSDServiceProxy>1531     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDServiceProxy> {
1532         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDServiceProxy>::into(self))
1533     }
1534 }
1535 impl<'a> ::windows::runtime::IntoParam<'a, IWSDServiceProxy> for &IWSDServiceProxyEventing {
into_param(self) -> ::windows::runtime::Param<'a, IWSDServiceProxy>1536     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDServiceProxy> {
1537         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDServiceProxy>::into(::std::clone::Clone::clone(self)))
1538     }
1539 }
1540 impl ::std::convert::From<IWSDServiceProxyEventing> for IWSDMetadataExchange {
from(value: IWSDServiceProxyEventing) -> Self1541     fn from(value: IWSDServiceProxyEventing) -> Self {
1542         unsafe { ::std::mem::transmute(value) }
1543     }
1544 }
1545 impl ::std::convert::From<&IWSDServiceProxyEventing> for IWSDMetadataExchange {
from(value: &IWSDServiceProxyEventing) -> Self1546     fn from(value: &IWSDServiceProxyEventing) -> Self {
1547         ::std::convert::From::from(::std::clone::Clone::clone(value))
1548     }
1549 }
1550 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMetadataExchange> for IWSDServiceProxyEventing {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange>1551     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange> {
1552         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMetadataExchange>::into(self))
1553     }
1554 }
1555 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMetadataExchange> for &IWSDServiceProxyEventing {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange>1556     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMetadataExchange> {
1557         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMetadataExchange>::into(::std::clone::Clone::clone(self)))
1558     }
1559 }
1560 #[repr(C)]
1561 #[doc(hidden)]
1562 pub struct IWSDServiceProxyEventing_abi(
1563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1564     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1565     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1566     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, metadataout: *mut *mut WSD_METADATA_SECTION_LIST) -> ::windows::runtime::HRESULT,
1567     #[cfg(not(feature = "Win32_Foundation"))] usize,
1568     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppresult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1569     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, presult: ::windows::runtime::RawPtr, ppmetadata: *mut *mut WSD_METADATA_SECTION_LIST) -> ::windows::runtime::HRESULT,
1570     #[cfg(not(feature = "Win32_Foundation"))] usize,
1571     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppservicemetadata: *mut *mut WSD_SERVICE_METADATA) -> ::windows::runtime::HRESULT,
1572     #[cfg(not(feature = "Win32_Foundation"))] usize,
1573     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, punknown: ::windows::runtime::RawPtr, pany: *const WSDXML_ELEMENT, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1574     #[cfg(not(feature = "Win32_Foundation"))] usize,
1575     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperation: *const ::std::mem::ManuallyDrop<WSD_OPERATION>) -> ::windows::runtime::HRESULT,
1576     #[cfg(not(feature = "Win32_Foundation"))] usize,
1577     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstatus: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1578     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1579     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, punknown: ::windows::runtime::RawPtr, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1580     #[cfg(not(feature = "Win32_Foundation"))] usize,
1581     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, punknown: ::windows::runtime::RawPtr, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, pasyncstate: ::windows::runtime::RawPtr, pasynccallback: ::windows::runtime::RawPtr, ppresult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1582     #[cfg(not(feature = "Win32_Foundation"))] usize,
1583     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, presult: ::windows::runtime::RawPtr, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1584     #[cfg(not(feature = "Win32_Foundation"))] usize,
1585     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1586     #[cfg(not(feature = "Win32_Foundation"))] usize,
1587     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, pasyncstate: ::windows::runtime::RawPtr, pasynccallback: ::windows::runtime::RawPtr, ppresult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1588     #[cfg(not(feature = "Win32_Foundation"))] usize,
1589     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, presult: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1590     #[cfg(not(feature = "Win32_Foundation"))] usize,
1591     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1592     #[cfg(not(feature = "Win32_Foundation"))] usize,
1593     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, pexpires: *const WSD_EVENTING_EXPIRES, pany: *const WSDXML_ELEMENT, pasyncstate: ::windows::runtime::RawPtr, pasynccallback: ::windows::runtime::RawPtr, ppresult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1594     #[cfg(not(feature = "Win32_Foundation"))] usize,
1595     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, presult: ::windows::runtime::RawPtr, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1596     #[cfg(not(feature = "Win32_Foundation"))] usize,
1597     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1598     #[cfg(not(feature = "Win32_Foundation"))] usize,
1599     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, pany: *const WSDXML_ELEMENT, pasyncstate: ::windows::runtime::RawPtr, pasynccallback: ::windows::runtime::RawPtr, ppresult: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1600     #[cfg(not(feature = "Win32_Foundation"))] usize,
1601     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, poperations: *const ::std::mem::ManuallyDrop<WSD_OPERATION>, dwoperationcount: u32, presult: ::windows::runtime::RawPtr, ppexpires: *mut *mut WSD_EVENTING_EXPIRES, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
1602     #[cfg(not(feature = "Win32_Foundation"))] usize,
1603 );
1604 #[repr(transparent)]
1605 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1606 pub struct IWSDSignatureProperty(::windows::runtime::IUnknown);
1607 impl IWSDSignatureProperty {
1608     #[cfg(feature = "Win32_Foundation")]
IsMessageSigned(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL>1609     pub unsafe fn IsMessageSigned(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
1610         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1611         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
1612     }
1613     #[cfg(feature = "Win32_Foundation")]
IsMessageSignatureTrusted(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL>1614     pub unsafe fn IsMessageSignatureTrusted(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
1615         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1616         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
1617     }
GetKeyInfo(&self, pbkeyinfo: *mut u8, pdwkeyinfosize: *mut u32) -> ::windows::runtime::Result<()>1618     pub unsafe fn GetKeyInfo(&self, pbkeyinfo: *mut u8, pdwkeyinfosize: *mut u32) -> ::windows::runtime::Result<()> {
1619         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbkeyinfo), ::std::mem::transmute(pdwkeyinfosize)).ok()
1620     }
GetSignature(&self, pbsignature: *mut u8, pdwsignaturesize: *mut u32) -> ::windows::runtime::Result<()>1621     pub unsafe fn GetSignature(&self, pbsignature: *mut u8, pdwsignaturesize: *mut u32) -> ::windows::runtime::Result<()> {
1622         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbsignature), ::std::mem::transmute(pdwsignaturesize)).ok()
1623     }
GetSignedInfoHash(&self, pbsignedinfohash: *mut u8, pdwhashsize: *mut u32) -> ::windows::runtime::Result<()>1624     pub unsafe fn GetSignedInfoHash(&self, pbsignedinfohash: *mut u8, pdwhashsize: *mut u32) -> ::windows::runtime::Result<()> {
1625         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbsignedinfohash), ::std::mem::transmute(pdwhashsize)).ok()
1626     }
1627 }
1628 unsafe impl ::windows::runtime::Interface for IWSDSignatureProperty {
1629     type Vtable = IWSDSignatureProperty_abi;
1630     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(63840426, 29124, 17890, [179, 46, 55, 102, 198, 28, 121, 15]);
1631 }
1632 impl ::std::convert::From<IWSDSignatureProperty> for ::windows::runtime::IUnknown {
from(value: IWSDSignatureProperty) -> Self1633     fn from(value: IWSDSignatureProperty) -> Self {
1634         unsafe { ::std::mem::transmute(value) }
1635     }
1636 }
1637 impl ::std::convert::From<&IWSDSignatureProperty> for ::windows::runtime::IUnknown {
from(value: &IWSDSignatureProperty) -> Self1638     fn from(value: &IWSDSignatureProperty) -> Self {
1639         ::std::convert::From::from(::std::clone::Clone::clone(value))
1640     }
1641 }
1642 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDSignatureProperty {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1643     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1644         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1645     }
1646 }
1647 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDSignatureProperty {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1648     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1649         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1650     }
1651 }
1652 #[repr(C)]
1653 #[doc(hidden)]
1654 pub struct IWSDSignatureProperty_abi(
1655     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1656     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1657     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1658     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbsigned: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1659     #[cfg(not(feature = "Win32_Foundation"))] usize,
1660     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbsignaturetrusted: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1661     #[cfg(not(feature = "Win32_Foundation"))] usize,
1662     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbkeyinfo: *mut u8, pdwkeyinfosize: *mut u32) -> ::windows::runtime::HRESULT,
1663     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbsignature: *mut u8, pdwsignaturesize: *mut u32) -> ::windows::runtime::HRESULT,
1664     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbsignedinfohash: *mut u8, pdwhashsize: *mut u32) -> ::windows::runtime::HRESULT,
1665 );
1666 #[repr(transparent)]
1667 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1668 pub struct IWSDTransportAddress(::windows::runtime::IUnknown);
1669 impl IWSDTransportAddress {
1670     #[cfg(feature = "Win32_Foundation")]
Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()>1671     pub unsafe fn Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()> {
1672         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pszbuffer), ::std::mem::transmute(cchlength), fsafe.into_param().abi()).ok()
1673     }
1674     #[cfg(feature = "Win32_Foundation")]
Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()>1675     pub unsafe fn Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()> {
1676         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszbuffer.into_param().abi()).ok()
1677     }
GetPort(&self) -> ::windows::runtime::Result<u16>1678     pub unsafe fn GetPort(&self) -> ::windows::runtime::Result<u16> {
1679         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1680         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
1681     }
SetPort(&self, wport: u16) -> ::windows::runtime::Result<()>1682     pub unsafe fn SetPort(&self, wport: u16) -> ::windows::runtime::Result<()> {
1683         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(wport)).ok()
1684     }
1685     #[cfg(feature = "Win32_Foundation")]
GetTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1686     pub unsafe fn GetTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1687         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1688         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1689     }
1690     #[cfg(feature = "Win32_Foundation")]
GetTransportAddressEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsafe: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1691     pub unsafe fn GetTransportAddressEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsafe: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1692         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1693         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), fsafe.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1694     }
1695     #[cfg(feature = "Win32_Foundation")]
SetTransportAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0) -> ::windows::runtime::Result<()>1696     pub unsafe fn SetTransportAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0) -> ::windows::runtime::Result<()> {
1697         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pszaddress.into_param().abi()).ok()
1698     }
1699 }
1700 unsafe impl ::windows::runtime::Interface for IWSDTransportAddress {
1701     type Vtable = IWSDTransportAddress_abi;
1702     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1892824216, 20198, 17216, [163, 223, 216, 69, 210, 35, 84, 103]);
1703 }
1704 impl ::std::convert::From<IWSDTransportAddress> for ::windows::runtime::IUnknown {
from(value: IWSDTransportAddress) -> Self1705     fn from(value: IWSDTransportAddress) -> Self {
1706         unsafe { ::std::mem::transmute(value) }
1707     }
1708 }
1709 impl ::std::convert::From<&IWSDTransportAddress> for ::windows::runtime::IUnknown {
from(value: &IWSDTransportAddress) -> Self1710     fn from(value: &IWSDTransportAddress) -> Self {
1711         ::std::convert::From::from(::std::clone::Clone::clone(value))
1712     }
1713 }
1714 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDTransportAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1715     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1716         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1717     }
1718 }
1719 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDTransportAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1720     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1721         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1722     }
1723 }
1724 impl ::std::convert::From<IWSDTransportAddress> for IWSDAddress {
from(value: IWSDTransportAddress) -> Self1725     fn from(value: IWSDTransportAddress) -> Self {
1726         unsafe { ::std::mem::transmute(value) }
1727     }
1728 }
1729 impl ::std::convert::From<&IWSDTransportAddress> for IWSDAddress {
from(value: &IWSDTransportAddress) -> Self1730     fn from(value: &IWSDTransportAddress) -> Self {
1731         ::std::convert::From::from(::std::clone::Clone::clone(value))
1732     }
1733 }
1734 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAddress> for IWSDTransportAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress>1735     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress> {
1736         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAddress>::into(self))
1737     }
1738 }
1739 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAddress> for &IWSDTransportAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress>1740     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress> {
1741         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAddress>::into(::std::clone::Clone::clone(self)))
1742     }
1743 }
1744 #[repr(C)]
1745 #[doc(hidden)]
1746 pub struct IWSDTransportAddress_abi(
1747     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1748     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1749     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1750     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1751     #[cfg(not(feature = "Win32_Foundation"))] usize,
1752     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1753     #[cfg(not(feature = "Win32_Foundation"))] usize,
1754     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwport: *mut u16) -> ::windows::runtime::HRESULT,
1755     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wport: u16) -> ::windows::runtime::HRESULT,
1756     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1757     #[cfg(not(feature = "Win32_Foundation"))] usize,
1758     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fsafe: super::super::Foundation::BOOL, ppszaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1759     #[cfg(not(feature = "Win32_Foundation"))] usize,
1760     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszaddress: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1761     #[cfg(not(feature = "Win32_Foundation"))] usize,
1762 );
1763 #[repr(transparent)]
1764 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1765 pub struct IWSDUdpAddress(::windows::runtime::IUnknown);
1766 impl IWSDUdpAddress {
1767     #[cfg(feature = "Win32_Foundation")]
Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()>1768     pub unsafe fn Serialize<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: Param2) -> ::windows::runtime::Result<()> {
1769         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pszbuffer), ::std::mem::transmute(cchlength), fsafe.into_param().abi()).ok()
1770     }
1771     #[cfg(feature = "Win32_Foundation")]
Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()>1772     pub unsafe fn Deserialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszbuffer: Param0) -> ::windows::runtime::Result<()> {
1773         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszbuffer.into_param().abi()).ok()
1774     }
GetPort(&self) -> ::windows::runtime::Result<u16>1775     pub unsafe fn GetPort(&self) -> ::windows::runtime::Result<u16> {
1776         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1777         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
1778     }
SetPort(&self, wport: u16) -> ::windows::runtime::Result<()>1779     pub unsafe fn SetPort(&self, wport: u16) -> ::windows::runtime::Result<()> {
1780         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(wport)).ok()
1781     }
1782     #[cfg(feature = "Win32_Foundation")]
GetTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1783     pub unsafe fn GetTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1784         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1785         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1786     }
1787     #[cfg(feature = "Win32_Foundation")]
GetTransportAddressEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsafe: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1788     pub unsafe fn GetTransportAddressEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fsafe: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1789         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1790         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), fsafe.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1791     }
1792     #[cfg(feature = "Win32_Foundation")]
SetTransportAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0) -> ::windows::runtime::Result<()>1793     pub unsafe fn SetTransportAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0) -> ::windows::runtime::Result<()> {
1794         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pszaddress.into_param().abi()).ok()
1795     }
1796     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))]
SetSockaddr(&self, psockaddr: *const super::super::Networking::WinSock::SOCKADDR_STORAGE) -> ::windows::runtime::Result<()>1797     pub unsafe fn SetSockaddr(&self, psockaddr: *const super::super::Networking::WinSock::SOCKADDR_STORAGE) -> ::windows::runtime::Result<()> {
1798         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(psockaddr)).ok()
1799     }
1800     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))]
GetSockaddr(&self) -> ::windows::runtime::Result<super::super::Networking::WinSock::SOCKADDR_STORAGE>1801     pub unsafe fn GetSockaddr(&self) -> ::windows::runtime::Result<super::super::Networking::WinSock::SOCKADDR_STORAGE> {
1802         let mut result__: <super::super::Networking::WinSock::SOCKADDR_STORAGE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1803         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Networking::WinSock::SOCKADDR_STORAGE>(result__)
1804     }
1805     #[cfg(feature = "Win32_Foundation")]
SetExclusive<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fexclusive: Param0) -> ::windows::runtime::Result<()>1806     pub unsafe fn SetExclusive<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fexclusive: Param0) -> ::windows::runtime::Result<()> {
1807         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), fexclusive.into_param().abi()).ok()
1808     }
GetExclusive(&self) -> ::windows::runtime::Result<()>1809     pub unsafe fn GetExclusive(&self) -> ::windows::runtime::Result<()> {
1810         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self)).ok()
1811     }
SetMessageType(&self, messagetype: WSDUdpMessageType) -> ::windows::runtime::Result<()>1812     pub unsafe fn SetMessageType(&self, messagetype: WSDUdpMessageType) -> ::windows::runtime::Result<()> {
1813         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(messagetype)).ok()
1814     }
GetMessageType(&self) -> ::windows::runtime::Result<WSDUdpMessageType>1815     pub unsafe fn GetMessageType(&self) -> ::windows::runtime::Result<WSDUdpMessageType> {
1816         let mut result__: <WSDUdpMessageType as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1817         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), &mut result__).from_abi::<WSDUdpMessageType>(result__)
1818     }
SetTTL(&self, dwttl: u32) -> ::windows::runtime::Result<()>1819     pub unsafe fn SetTTL(&self, dwttl: u32) -> ::windows::runtime::Result<()> {
1820         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwttl)).ok()
1821     }
GetTTL(&self) -> ::windows::runtime::Result<u32>1822     pub unsafe fn GetTTL(&self) -> ::windows::runtime::Result<u32> {
1823         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1824         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1825     }
SetAlias(&self, palias: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<()>1826     pub unsafe fn SetAlias(&self, palias: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<()> {
1827         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), ::std::mem::transmute(palias)).ok()
1828     }
GetAlias(&self) -> ::windows::runtime::Result<::windows::runtime::GUID>1829     pub unsafe fn GetAlias(&self) -> ::windows::runtime::Result<::windows::runtime::GUID> {
1830         let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1831         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
1832     }
1833 }
1834 unsafe impl ::windows::runtime::Interface for IWSDUdpAddress {
1835     type Vtable = IWSDUdpAddress_abi;
1836     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1960186442, 42049, 20344, [161, 235, 151, 168, 209, 153, 104, 147]);
1837 }
1838 impl ::std::convert::From<IWSDUdpAddress> for ::windows::runtime::IUnknown {
from(value: IWSDUdpAddress) -> Self1839     fn from(value: IWSDUdpAddress) -> Self {
1840         unsafe { ::std::mem::transmute(value) }
1841     }
1842 }
1843 impl ::std::convert::From<&IWSDUdpAddress> for ::windows::runtime::IUnknown {
from(value: &IWSDUdpAddress) -> Self1844     fn from(value: &IWSDUdpAddress) -> Self {
1845         ::std::convert::From::from(::std::clone::Clone::clone(value))
1846     }
1847 }
1848 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDUdpAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1849     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1850         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1851     }
1852 }
1853 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDUdpAddress {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1854     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1855         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1856     }
1857 }
1858 impl ::std::convert::From<IWSDUdpAddress> for IWSDTransportAddress {
from(value: IWSDUdpAddress) -> Self1859     fn from(value: IWSDUdpAddress) -> Self {
1860         unsafe { ::std::mem::transmute(value) }
1861     }
1862 }
1863 impl ::std::convert::From<&IWSDUdpAddress> for IWSDTransportAddress {
from(value: &IWSDUdpAddress) -> Self1864     fn from(value: &IWSDUdpAddress) -> Self {
1865         ::std::convert::From::from(::std::clone::Clone::clone(value))
1866     }
1867 }
1868 impl<'a> ::windows::runtime::IntoParam<'a, IWSDTransportAddress> for IWSDUdpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress>1869     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress> {
1870         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDTransportAddress>::into(self))
1871     }
1872 }
1873 impl<'a> ::windows::runtime::IntoParam<'a, IWSDTransportAddress> for &IWSDUdpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress>1874     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDTransportAddress> {
1875         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDTransportAddress>::into(::std::clone::Clone::clone(self)))
1876     }
1877 }
1878 impl ::std::convert::From<IWSDUdpAddress> for IWSDAddress {
from(value: IWSDUdpAddress) -> Self1879     fn from(value: IWSDUdpAddress) -> Self {
1880         unsafe { ::std::mem::transmute(value) }
1881     }
1882 }
1883 impl ::std::convert::From<&IWSDUdpAddress> for IWSDAddress {
from(value: &IWSDUdpAddress) -> Self1884     fn from(value: &IWSDUdpAddress) -> Self {
1885         ::std::convert::From::from(::std::clone::Clone::clone(value))
1886     }
1887 }
1888 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAddress> for IWSDUdpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress>1889     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress> {
1890         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAddress>::into(self))
1891     }
1892 }
1893 impl<'a> ::windows::runtime::IntoParam<'a, IWSDAddress> for &IWSDUdpAddress {
into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress>1894     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDAddress> {
1895         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDAddress>::into(::std::clone::Clone::clone(self)))
1896     }
1897 }
1898 #[repr(C)]
1899 #[doc(hidden)]
1900 pub struct IWSDUdpAddress_abi(
1901     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1902     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1903     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1904     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR, cchlength: u32, fsafe: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1905     #[cfg(not(feature = "Win32_Foundation"))] usize,
1906     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszbuffer: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1907     #[cfg(not(feature = "Win32_Foundation"))] usize,
1908     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwport: *mut u16) -> ::windows::runtime::HRESULT,
1909     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wport: u16) -> ::windows::runtime::HRESULT,
1910     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1911     #[cfg(not(feature = "Win32_Foundation"))] usize,
1912     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fsafe: super::super::Foundation::BOOL, ppszaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1913     #[cfg(not(feature = "Win32_Foundation"))] usize,
1914     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszaddress: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1915     #[cfg(not(feature = "Win32_Foundation"))] usize,
1916     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psockaddr: *const super::super::Networking::WinSock::SOCKADDR_STORAGE) -> ::windows::runtime::HRESULT,
1917     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock")))] usize,
1918     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psockaddr: *mut super::super::Networking::WinSock::SOCKADDR_STORAGE) -> ::windows::runtime::HRESULT,
1919     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock")))] usize,
1920     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fexclusive: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1921     #[cfg(not(feature = "Win32_Foundation"))] usize,
1922     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1923     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messagetype: WSDUdpMessageType) -> ::windows::runtime::HRESULT,
1924     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pmessagetype: *mut WSDUdpMessageType) -> ::windows::runtime::HRESULT,
1925     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwttl: u32) -> ::windows::runtime::HRESULT,
1926     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwttl: *mut u32) -> ::windows::runtime::HRESULT,
1927     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, palias: *const ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1928     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, palias: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1929 );
1930 #[repr(transparent)]
1931 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1932 pub struct IWSDUdpMessageParameters(::windows::runtime::IUnknown);
1933 impl IWSDUdpMessageParameters {
GetLocalAddress(&self) -> ::windows::runtime::Result<IWSDAddress>1934     pub unsafe fn GetLocalAddress(&self) -> ::windows::runtime::Result<IWSDAddress> {
1935         let mut result__: <IWSDAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1936         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAddress>(result__)
1937     }
SetLocalAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()>1938     pub unsafe fn SetLocalAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()> {
1939         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), paddress.into_param().abi()).ok()
1940     }
GetRemoteAddress(&self) -> ::windows::runtime::Result<IWSDAddress>1941     pub unsafe fn GetRemoteAddress(&self) -> ::windows::runtime::Result<IWSDAddress> {
1942         let mut result__: <IWSDAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1943         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDAddress>(result__)
1944     }
SetRemoteAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()>1945     pub unsafe fn SetRemoteAddress<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDAddress>>(&self, paddress: Param0) -> ::windows::runtime::Result<()> {
1946         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), paddress.into_param().abi()).ok()
1947     }
GetLowerParameters(&self) -> ::windows::runtime::Result<IWSDMessageParameters>1948     pub unsafe fn GetLowerParameters(&self) -> ::windows::runtime::Result<IWSDMessageParameters> {
1949         let mut result__: <IWSDMessageParameters as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1950         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDMessageParameters>(result__)
1951     }
SetRetransmitParams(&self, pparams: *const WSDUdpRetransmitParams) -> ::windows::runtime::Result<()>1952     pub unsafe fn SetRetransmitParams(&self, pparams: *const WSDUdpRetransmitParams) -> ::windows::runtime::Result<()> {
1953         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(pparams)).ok()
1954     }
GetRetransmitParams(&self) -> ::windows::runtime::Result<WSDUdpRetransmitParams>1955     pub unsafe fn GetRetransmitParams(&self) -> ::windows::runtime::Result<WSDUdpRetransmitParams> {
1956         let mut result__: <WSDUdpRetransmitParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1957         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<WSDUdpRetransmitParams>(result__)
1958     }
1959 }
1960 unsafe impl ::windows::runtime::Interface for IWSDUdpMessageParameters {
1961     type Vtable = IWSDUdpMessageParameters_abi;
1962     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2570327199, 36620, 17531, [170, 11, 115, 18, 75, 12, 167, 240]);
1963 }
1964 impl ::std::convert::From<IWSDUdpMessageParameters> for ::windows::runtime::IUnknown {
from(value: IWSDUdpMessageParameters) -> Self1965     fn from(value: IWSDUdpMessageParameters) -> Self {
1966         unsafe { ::std::mem::transmute(value) }
1967     }
1968 }
1969 impl ::std::convert::From<&IWSDUdpMessageParameters> for ::windows::runtime::IUnknown {
from(value: &IWSDUdpMessageParameters) -> Self1970     fn from(value: &IWSDUdpMessageParameters) -> Self {
1971         ::std::convert::From::from(::std::clone::Clone::clone(value))
1972     }
1973 }
1974 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDUdpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1975     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1976         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1977     }
1978 }
1979 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDUdpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1980     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1981         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1982     }
1983 }
1984 impl ::std::convert::From<IWSDUdpMessageParameters> for IWSDMessageParameters {
from(value: IWSDUdpMessageParameters) -> Self1985     fn from(value: IWSDUdpMessageParameters) -> Self {
1986         unsafe { ::std::mem::transmute(value) }
1987     }
1988 }
1989 impl ::std::convert::From<&IWSDUdpMessageParameters> for IWSDMessageParameters {
from(value: &IWSDUdpMessageParameters) -> Self1990     fn from(value: &IWSDUdpMessageParameters) -> Self {
1991         ::std::convert::From::from(::std::clone::Clone::clone(value))
1992     }
1993 }
1994 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMessageParameters> for IWSDUdpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters>1995     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters> {
1996         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMessageParameters>::into(self))
1997     }
1998 }
1999 impl<'a> ::windows::runtime::IntoParam<'a, IWSDMessageParameters> for &IWSDUdpMessageParameters {
into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters>2000     fn into_param(self) -> ::windows::runtime::Param<'a, IWSDMessageParameters> {
2001         ::windows::runtime::Param::Owned(::std::convert::Into::<IWSDMessageParameters>::into(::std::clone::Clone::clone(self)))
2002     }
2003 }
2004 #[repr(C)]
2005 #[doc(hidden)]
2006 pub struct IWSDUdpMessageParameters_abi(
2007     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2008     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2009     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2010     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2011     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paddress: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2012     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2013     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paddress: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2014     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pptxparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2015     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pparams: *const WSDUdpRetransmitParams) -> ::windows::runtime::HRESULT,
2016     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pparams: *mut WSDUdpRetransmitParams) -> ::windows::runtime::HRESULT,
2017 );
2018 #[repr(transparent)]
2019 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2020 pub struct IWSDXMLContext(::windows::runtime::IUnknown);
2021 impl IWSDXMLContext {
2022     #[cfg(feature = "Win32_Foundation")]
AddNamespace<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszuri: Param0, pszsuggestedprefix: Param1) -> ::windows::runtime::Result<*mut WSDXML_NAMESPACE>2023     pub unsafe fn AddNamespace<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszuri: Param0, pszsuggestedprefix: Param1) -> ::windows::runtime::Result<*mut WSDXML_NAMESPACE> {
2024         let mut result__: <*mut WSDXML_NAMESPACE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2025         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszuri.into_param().abi(), pszsuggestedprefix.into_param().abi(), &mut result__).from_abi::<*mut WSDXML_NAMESPACE>(result__)
2026     }
2027     #[cfg(feature = "Win32_Foundation")]
AddNameToNamespace<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszuri: Param0, pszname: Param1) -> ::windows::runtime::Result<*mut WSDXML_NAME>2028     pub unsafe fn AddNameToNamespace<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszuri: Param0, pszname: Param1) -> ::windows::runtime::Result<*mut WSDXML_NAME> {
2029         let mut result__: <*mut WSDXML_NAME as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2030         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszuri.into_param().abi(), pszname.into_param().abi(), &mut result__).from_abi::<*mut WSDXML_NAME>(result__)
2031     }
2032     #[cfg(feature = "Win32_Foundation")]
SetNamespaces(&self, pnamespaces: *const *const WSDXML_NAMESPACE, wnamespacescount: u16, blayernumber: u8) -> ::windows::runtime::Result<()>2033     pub unsafe fn SetNamespaces(&self, pnamespaces: *const *const WSDXML_NAMESPACE, wnamespacescount: u16, blayernumber: u8) -> ::windows::runtime::Result<()> {
2034         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pnamespaces), ::std::mem::transmute(wnamespacescount), ::std::mem::transmute(blayernumber)).ok()
2035     }
2036     #[cfg(feature = "Win32_Foundation")]
SetTypes(&self, ptypes: *const *const WSDXML_TYPE, dwtypescount: u32, blayernumber: u8) -> ::windows::runtime::Result<()>2037     pub unsafe fn SetTypes(&self, ptypes: *const *const WSDXML_TYPE, dwtypescount: u32, blayernumber: u8) -> ::windows::runtime::Result<()> {
2038         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(ptypes), ::std::mem::transmute(dwtypescount), ::std::mem::transmute(blayernumber)).ok()
2039     }
2040 }
2041 unsafe impl ::windows::runtime::Interface for IWSDXMLContext {
2042     type Vtable = IWSDXMLContext_abi;
2043     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1977152494, 15962, 17332, [161, 90, 188, 246, 136, 116, 96, 192]);
2044 }
2045 impl ::std::convert::From<IWSDXMLContext> for ::windows::runtime::IUnknown {
from(value: IWSDXMLContext) -> Self2046     fn from(value: IWSDXMLContext) -> Self {
2047         unsafe { ::std::mem::transmute(value) }
2048     }
2049 }
2050 impl ::std::convert::From<&IWSDXMLContext> for ::windows::runtime::IUnknown {
from(value: &IWSDXMLContext) -> Self2051     fn from(value: &IWSDXMLContext) -> Self {
2052         ::std::convert::From::from(::std::clone::Clone::clone(value))
2053     }
2054 }
2055 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDXMLContext {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2056     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2057         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2058     }
2059 }
2060 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDXMLContext {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2061     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2062         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2063     }
2064 }
2065 #[repr(C)]
2066 #[doc(hidden)]
2067 pub struct IWSDXMLContext_abi(
2068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2071     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszuri: super::super::Foundation::PWSTR, pszsuggestedprefix: super::super::Foundation::PWSTR, ppnamespace: *mut *mut WSDXML_NAMESPACE) -> ::windows::runtime::HRESULT,
2072     #[cfg(not(feature = "Win32_Foundation"))] usize,
2073     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszuri: super::super::Foundation::PWSTR, pszname: super::super::Foundation::PWSTR, ppname: *mut *mut WSDXML_NAME) -> ::windows::runtime::HRESULT,
2074     #[cfg(not(feature = "Win32_Foundation"))] usize,
2075     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pnamespaces: *const *const WSDXML_NAMESPACE, wnamespacescount: u16, blayernumber: u8) -> ::windows::runtime::HRESULT,
2076     #[cfg(not(feature = "Win32_Foundation"))] usize,
2077     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ptypes: *const *const WSDXML_TYPE, dwtypescount: u32, blayernumber: u8) -> ::windows::runtime::HRESULT,
2078     #[cfg(not(feature = "Win32_Foundation"))] usize,
2079 );
2080 #[repr(transparent)]
2081 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2082 pub struct IWSDiscoveredService(::windows::runtime::IUnknown);
2083 impl IWSDiscoveredService {
2084     #[cfg(feature = "Win32_Foundation")]
GetEndpointReference(&self) -> ::windows::runtime::Result<*mut WSD_ENDPOINT_REFERENCE>2085     pub unsafe fn GetEndpointReference(&self) -> ::windows::runtime::Result<*mut WSD_ENDPOINT_REFERENCE> {
2086         let mut result__: <*mut WSD_ENDPOINT_REFERENCE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2087         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_ENDPOINT_REFERENCE>(result__)
2088     }
2089     #[cfg(feature = "Win32_Foundation")]
GetTypes(&self) -> ::windows::runtime::Result<*mut WSD_NAME_LIST>2090     pub unsafe fn GetTypes(&self) -> ::windows::runtime::Result<*mut WSD_NAME_LIST> {
2091         let mut result__: <*mut WSD_NAME_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2092         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_NAME_LIST>(result__)
2093     }
2094     #[cfg(feature = "Win32_Foundation")]
GetScopes(&self) -> ::windows::runtime::Result<*mut WSD_URI_LIST>2095     pub unsafe fn GetScopes(&self) -> ::windows::runtime::Result<*mut WSD_URI_LIST> {
2096         let mut result__: <*mut WSD_URI_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2097         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_URI_LIST>(result__)
2098     }
2099     #[cfg(feature = "Win32_Foundation")]
GetXAddrs(&self) -> ::windows::runtime::Result<*mut WSD_URI_LIST>2100     pub unsafe fn GetXAddrs(&self) -> ::windows::runtime::Result<*mut WSD_URI_LIST> {
2101         let mut result__: <*mut WSD_URI_LIST as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2102         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut WSD_URI_LIST>(result__)
2103     }
GetMetadataVersion(&self) -> ::windows::runtime::Result<u64>2104     pub unsafe fn GetMetadataVersion(&self) -> ::windows::runtime::Result<u64> {
2105         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2106         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u64>(result__)
2107     }
2108     #[cfg(feature = "Win32_Foundation")]
GetExtendedDiscoXML(&self, ppheaderany: *mut *mut WSDXML_ELEMENT, ppbodyany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>2109     pub unsafe fn GetExtendedDiscoXML(&self, ppheaderany: *mut *mut WSDXML_ELEMENT, ppbodyany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
2110         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppheaderany), ::std::mem::transmute(ppbodyany)).ok()
2111     }
2112     #[cfg(feature = "Win32_Foundation")]
GetProbeResolveTag(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>2113     pub unsafe fn GetProbeResolveTag(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
2114         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2115         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
2116     }
2117     #[cfg(feature = "Win32_Foundation")]
GetRemoteTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>2118     pub unsafe fn GetRemoteTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
2119         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2120         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
2121     }
2122     #[cfg(feature = "Win32_Foundation")]
GetLocalTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>2123     pub unsafe fn GetLocalTransportAddress(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
2124         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2125         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
2126     }
GetLocalInterfaceGUID(&self) -> ::windows::runtime::Result<::windows::runtime::GUID>2127     pub unsafe fn GetLocalInterfaceGUID(&self) -> ::windows::runtime::Result<::windows::runtime::GUID> {
2128         let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2129         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
2130     }
GetInstanceId(&self) -> ::windows::runtime::Result<u64>2131     pub unsafe fn GetInstanceId(&self) -> ::windows::runtime::Result<u64> {
2132         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2133         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u64>(result__)
2134     }
2135 }
2136 unsafe impl ::windows::runtime::Interface for IWSDiscoveredService {
2137     type Vtable = IWSDiscoveredService_abi;
2138     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1269664315, 45940, 17440, [150, 50, 170, 201, 69, 179, 116, 170]);
2139 }
2140 impl ::std::convert::From<IWSDiscoveredService> for ::windows::runtime::IUnknown {
from(value: IWSDiscoveredService) -> Self2141     fn from(value: IWSDiscoveredService) -> Self {
2142         unsafe { ::std::mem::transmute(value) }
2143     }
2144 }
2145 impl ::std::convert::From<&IWSDiscoveredService> for ::windows::runtime::IUnknown {
from(value: &IWSDiscoveredService) -> Self2146     fn from(value: &IWSDiscoveredService) -> Self {
2147         ::std::convert::From::from(::std::clone::Clone::clone(value))
2148     }
2149 }
2150 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDiscoveredService {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2151     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2152         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2153     }
2154 }
2155 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDiscoveredService {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2156     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2157         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2158     }
2159 }
2160 #[repr(C)]
2161 #[doc(hidden)]
2162 pub struct IWSDiscoveredService_abi(
2163     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2164     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2165     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2166     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppendpointreference: *mut *mut WSD_ENDPOINT_REFERENCE) -> ::windows::runtime::HRESULT,
2167     #[cfg(not(feature = "Win32_Foundation"))] usize,
2168     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pptypeslist: *mut *mut WSD_NAME_LIST) -> ::windows::runtime::HRESULT,
2169     #[cfg(not(feature = "Win32_Foundation"))] usize,
2170     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppscopeslist: *mut *mut WSD_URI_LIST) -> ::windows::runtime::HRESULT,
2171     #[cfg(not(feature = "Win32_Foundation"))] usize,
2172     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppxaddrslist: *mut *mut WSD_URI_LIST) -> ::windows::runtime::HRESULT,
2173     #[cfg(not(feature = "Win32_Foundation"))] usize,
2174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pullmetadataversion: *mut u64) -> ::windows::runtime::HRESULT,
2175     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppheaderany: *mut *mut WSDXML_ELEMENT, ppbodyany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
2176     #[cfg(not(feature = "Win32_Foundation"))] usize,
2177     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppsztag: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2178     #[cfg(not(feature = "Win32_Foundation"))] usize,
2179     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszremotetransportaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2180     #[cfg(not(feature = "Win32_Foundation"))] usize,
2181     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszlocaltransportaddress: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2182     #[cfg(not(feature = "Win32_Foundation"))] usize,
2183     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pguid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2184     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pullinstanceid: *mut u64) -> ::windows::runtime::HRESULT,
2185 );
2186 #[repr(transparent)]
2187 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2188 pub struct IWSDiscoveryProvider(::windows::runtime::IUnknown);
2189 impl IWSDiscoveryProvider {
SetAddressFamily(&self, dwaddressfamily: u32) -> ::windows::runtime::Result<()>2190     pub unsafe fn SetAddressFamily(&self, dwaddressfamily: u32) -> ::windows::runtime::Result<()> {
2191         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwaddressfamily)).ok()
2192     }
Attach<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveryProviderNotify>>(&self, psink: Param0) -> ::windows::runtime::Result<()>2193     pub unsafe fn Attach<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveryProviderNotify>>(&self, psink: Param0) -> ::windows::runtime::Result<()> {
2194         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), psink.into_param().abi()).ok()
2195     }
Detach(&self) -> ::windows::runtime::Result<()>2196     pub unsafe fn Detach(&self) -> ::windows::runtime::Result<()> {
2197         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
2198     }
2199     #[cfg(feature = "Win32_Foundation")]
SearchById<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0, psztag: Param1) -> ::windows::runtime::Result<()>2200     pub unsafe fn SearchById<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0, psztag: Param1) -> ::windows::runtime::Result<()> {
2201         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), pszid.into_param().abi(), psztag.into_param().abi()).ok()
2202     }
2203     #[cfg(feature = "Win32_Foundation")]
SearchByAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0, psztag: Param1) -> ::windows::runtime::Result<()>2204     pub unsafe fn SearchByAddress<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszaddress: Param0, psztag: Param1) -> ::windows::runtime::Result<()> {
2205         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), pszaddress.into_param().abi(), psztag.into_param().abi()).ok()
2206     }
2207     #[cfg(feature = "Win32_Foundation")]
SearchByType<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pszmatchby: Param2, psztag: Param3) -> ::windows::runtime::Result<()>2208     pub unsafe fn SearchByType<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pszmatchby: Param2, psztag: Param3) -> ::windows::runtime::Result<()> {
2209         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(ptypeslist), ::std::mem::transmute(pscopeslist), pszmatchby.into_param().abi(), psztag.into_param().abi()).ok()
2210     }
GetXMLContext(&self) -> ::windows::runtime::Result<IWSDXMLContext>2211     pub unsafe fn GetXMLContext(&self) -> ::windows::runtime::Result<IWSDXMLContext> {
2212         let mut result__: <IWSDXMLContext as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2213         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDXMLContext>(result__)
2214     }
2215 }
2216 unsafe impl ::windows::runtime::Interface for IWSDiscoveryProvider {
2217     type Vtable = IWSDiscoveryProvider_abi;
2218     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2415693397, 61675, 18447, [136, 183, 180, 53, 221, 40, 29, 69]);
2219 }
2220 impl ::std::convert::From<IWSDiscoveryProvider> for ::windows::runtime::IUnknown {
from(value: IWSDiscoveryProvider) -> Self2221     fn from(value: IWSDiscoveryProvider) -> Self {
2222         unsafe { ::std::mem::transmute(value) }
2223     }
2224 }
2225 impl ::std::convert::From<&IWSDiscoveryProvider> for ::windows::runtime::IUnknown {
from(value: &IWSDiscoveryProvider) -> Self2226     fn from(value: &IWSDiscoveryProvider) -> Self {
2227         ::std::convert::From::from(::std::clone::Clone::clone(value))
2228     }
2229 }
2230 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDiscoveryProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2231     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2232         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2233     }
2234 }
2235 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDiscoveryProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2236     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2237         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2238     }
2239 }
2240 #[repr(C)]
2241 #[doc(hidden)]
2242 pub struct IWSDiscoveryProvider_abi(
2243     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2244     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2245     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2246     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwaddressfamily: u32) -> ::windows::runtime::HRESULT,
2247     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psink: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2248     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2249     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszid: super::super::Foundation::PWSTR, psztag: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2250     #[cfg(not(feature = "Win32_Foundation"))] usize,
2251     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszaddress: super::super::Foundation::PWSTR, psztag: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2252     #[cfg(not(feature = "Win32_Foundation"))] usize,
2253     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pszmatchby: super::super::Foundation::PWSTR, psztag: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2254     #[cfg(not(feature = "Win32_Foundation"))] usize,
2255     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppcontext: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2256 );
2257 #[repr(transparent)]
2258 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2259 pub struct IWSDiscoveryProviderNotify(::windows::runtime::IUnknown);
2260 impl IWSDiscoveryProviderNotify {
Add<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveredService>>(&self, pservice: Param0) -> ::windows::runtime::Result<()>2261     pub unsafe fn Add<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveredService>>(&self, pservice: Param0) -> ::windows::runtime::Result<()> {
2262         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pservice.into_param().abi()).ok()
2263     }
Remove<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveredService>>(&self, pservice: Param0) -> ::windows::runtime::Result<()>2264     pub unsafe fn Remove<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveredService>>(&self, pservice: Param0) -> ::windows::runtime::Result<()> {
2265         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pservice.into_param().abi()).ok()
2266     }
2267     #[cfg(feature = "Win32_Foundation")]
SearchFailed<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, hr: ::windows::runtime::HRESULT, psztag: Param1) -> ::windows::runtime::Result<()>2268     pub unsafe fn SearchFailed<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, hr: ::windows::runtime::HRESULT, psztag: Param1) -> ::windows::runtime::Result<()> {
2269         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(hr), psztag.into_param().abi()).ok()
2270     }
2271     #[cfg(feature = "Win32_Foundation")]
SearchComplete<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, psztag: Param0) -> ::windows::runtime::Result<()>2272     pub unsafe fn SearchComplete<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, psztag: Param0) -> ::windows::runtime::Result<()> {
2273         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), psztag.into_param().abi()).ok()
2274     }
2275 }
2276 unsafe impl ::windows::runtime::Interface for IWSDiscoveryProviderNotify {
2277     type Vtable = IWSDiscoveryProviderNotify_abi;
2278     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1944993005, 46822, 17193, [165, 70, 62, 138, 212, 101, 99, 210]);
2279 }
2280 impl ::std::convert::From<IWSDiscoveryProviderNotify> for ::windows::runtime::IUnknown {
from(value: IWSDiscoveryProviderNotify) -> Self2281     fn from(value: IWSDiscoveryProviderNotify) -> Self {
2282         unsafe { ::std::mem::transmute(value) }
2283     }
2284 }
2285 impl ::std::convert::From<&IWSDiscoveryProviderNotify> for ::windows::runtime::IUnknown {
from(value: &IWSDiscoveryProviderNotify) -> Self2286     fn from(value: &IWSDiscoveryProviderNotify) -> Self {
2287         ::std::convert::From::from(::std::clone::Clone::clone(value))
2288     }
2289 }
2290 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDiscoveryProviderNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2291     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2292         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2293     }
2294 }
2295 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDiscoveryProviderNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2296     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2297         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2298     }
2299 }
2300 #[repr(C)]
2301 #[doc(hidden)]
2302 pub struct IWSDiscoveryProviderNotify_abi(
2303     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2304     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2305     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2306     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pservice: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2307     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pservice: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2308     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, hr: ::windows::runtime::HRESULT, psztag: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2309     #[cfg(not(feature = "Win32_Foundation"))] usize,
2310     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psztag: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2311     #[cfg(not(feature = "Win32_Foundation"))] usize,
2312 );
2313 #[repr(transparent)]
2314 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2315 pub struct IWSDiscoveryPublisher(::windows::runtime::IUnknown);
2316 impl IWSDiscoveryPublisher {
SetAddressFamily(&self, dwaddressfamily: u32) -> ::windows::runtime::Result<()>2317     pub unsafe fn SetAddressFamily(&self, dwaddressfamily: u32) -> ::windows::runtime::Result<()> {
2318         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwaddressfamily)).ok()
2319     }
RegisterNotificationSink<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveryPublisherNotify>>(&self, psink: Param0) -> ::windows::runtime::Result<()>2320     pub unsafe fn RegisterNotificationSink<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveryPublisherNotify>>(&self, psink: Param0) -> ::windows::runtime::Result<()> {
2321         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), psink.into_param().abi()).ok()
2322     }
UnRegisterNotificationSink<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveryPublisherNotify>>(&self, psink: Param0) -> ::windows::runtime::Result<()>2323     pub unsafe fn UnRegisterNotificationSink<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDiscoveryPublisherNotify>>(&self, psink: Param0) -> ::windows::runtime::Result<()> {
2324         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), psink.into_param().abi()).ok()
2325     }
2326     #[cfg(feature = "Win32_Foundation")]
Publish<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param4, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST) -> ::windows::runtime::Result<()>2327     pub unsafe fn Publish<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param4, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST) -> ::windows::runtime::Result<()> {
2328         (::windows::runtime::Interface::vtable(self).6)(
2329             ::std::mem::transmute_copy(self),
2330             pszid.into_param().abi(),
2331             ::std::mem::transmute(ullmetadataversion),
2332             ::std::mem::transmute(ullinstanceid),
2333             ::std::mem::transmute(ullmessagenumber),
2334             pszsessionid.into_param().abi(),
2335             ::std::mem::transmute(ptypeslist),
2336             ::std::mem::transmute(pscopeslist),
2337             ::std::mem::transmute(pxaddrslist),
2338         )
2339         .ok()
2340     }
2341     #[cfg(feature = "Win32_Foundation")]
UnPublish<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param3, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<()>2342     pub unsafe fn UnPublish<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszid: Param0, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param3, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
2343         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), pszid.into_param().abi(), ::std::mem::transmute(ullinstanceid), ::std::mem::transmute(ullmessagenumber), pszsessionid.into_param().abi(), ::std::mem::transmute(pany)).ok()
2344     }
2345     #[cfg(feature = "Win32_Foundation")]
MatchProbe<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, pprobemessage: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1, pszid: Param2, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param6, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST, ) -> ::windows::runtime::Result<()>2346     pub unsafe fn MatchProbe<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
2347         &self,
2348         pprobemessage: *const WSD_SOAP_MESSAGE,
2349         pmessageparameters: Param1,
2350         pszid: Param2,
2351         ullmetadataversion: u64,
2352         ullinstanceid: u64,
2353         ullmessagenumber: u64,
2354         pszsessionid: Param6,
2355         ptypeslist: *const WSD_NAME_LIST,
2356         pscopeslist: *const WSD_URI_LIST,
2357         pxaddrslist: *const WSD_URI_LIST,
2358     ) -> ::windows::runtime::Result<()> {
2359         (::windows::runtime::Interface::vtable(self).8)(
2360             ::std::mem::transmute_copy(self),
2361             ::std::mem::transmute(pprobemessage),
2362             pmessageparameters.into_param().abi(),
2363             pszid.into_param().abi(),
2364             ::std::mem::transmute(ullmetadataversion),
2365             ::std::mem::transmute(ullinstanceid),
2366             ::std::mem::transmute(ullmessagenumber),
2367             pszsessionid.into_param().abi(),
2368             ::std::mem::transmute(ptypeslist),
2369             ::std::mem::transmute(pscopeslist),
2370             ::std::mem::transmute(pxaddrslist),
2371         )
2372         .ok()
2373     }
2374     #[cfg(feature = "Win32_Foundation")]
MatchResolve<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, presolvemessage: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1, pszid: Param2, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param6, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST, ) -> ::windows::runtime::Result<()>2375     pub unsafe fn MatchResolve<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
2376         &self,
2377         presolvemessage: *const WSD_SOAP_MESSAGE,
2378         pmessageparameters: Param1,
2379         pszid: Param2,
2380         ullmetadataversion: u64,
2381         ullinstanceid: u64,
2382         ullmessagenumber: u64,
2383         pszsessionid: Param6,
2384         ptypeslist: *const WSD_NAME_LIST,
2385         pscopeslist: *const WSD_URI_LIST,
2386         pxaddrslist: *const WSD_URI_LIST,
2387     ) -> ::windows::runtime::Result<()> {
2388         (::windows::runtime::Interface::vtable(self).9)(
2389             ::std::mem::transmute_copy(self),
2390             ::std::mem::transmute(presolvemessage),
2391             pmessageparameters.into_param().abi(),
2392             pszid.into_param().abi(),
2393             ::std::mem::transmute(ullmetadataversion),
2394             ::std::mem::transmute(ullinstanceid),
2395             ::std::mem::transmute(ullmessagenumber),
2396             pszsessionid.into_param().abi(),
2397             ::std::mem::transmute(ptypeslist),
2398             ::std::mem::transmute(pscopeslist),
2399             ::std::mem::transmute(pxaddrslist),
2400         )
2401         .ok()
2402     }
2403     #[cfg(feature = "Win32_Foundation")]
PublishEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, pszid: Param0, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param4, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST, pheaderany: *const WSDXML_ELEMENT, preferenceparameterany: *const WSDXML_ELEMENT, ppolicyany: *const WSDXML_ELEMENT, pendpointreferenceany: *const WSDXML_ELEMENT, pany: *const WSDXML_ELEMENT, ) -> ::windows::runtime::Result<()>2404     pub unsafe fn PublishEx<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
2405         &self,
2406         pszid: Param0,
2407         ullmetadataversion: u64,
2408         ullinstanceid: u64,
2409         ullmessagenumber: u64,
2410         pszsessionid: Param4,
2411         ptypeslist: *const WSD_NAME_LIST,
2412         pscopeslist: *const WSD_URI_LIST,
2413         pxaddrslist: *const WSD_URI_LIST,
2414         pheaderany: *const WSDXML_ELEMENT,
2415         preferenceparameterany: *const WSDXML_ELEMENT,
2416         ppolicyany: *const WSDXML_ELEMENT,
2417         pendpointreferenceany: *const WSDXML_ELEMENT,
2418         pany: *const WSDXML_ELEMENT,
2419     ) -> ::windows::runtime::Result<()> {
2420         (::windows::runtime::Interface::vtable(self).10)(
2421             ::std::mem::transmute_copy(self),
2422             pszid.into_param().abi(),
2423             ::std::mem::transmute(ullmetadataversion),
2424             ::std::mem::transmute(ullinstanceid),
2425             ::std::mem::transmute(ullmessagenumber),
2426             pszsessionid.into_param().abi(),
2427             ::std::mem::transmute(ptypeslist),
2428             ::std::mem::transmute(pscopeslist),
2429             ::std::mem::transmute(pxaddrslist),
2430             ::std::mem::transmute(pheaderany),
2431             ::std::mem::transmute(preferenceparameterany),
2432             ::std::mem::transmute(ppolicyany),
2433             ::std::mem::transmute(pendpointreferenceany),
2434             ::std::mem::transmute(pany),
2435         )
2436         .ok()
2437     }
2438     #[cfg(feature = "Win32_Foundation")]
MatchProbeEx<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, pprobemessage: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1, pszid: Param2, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param6, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST, pheaderany: *const WSDXML_ELEMENT, preferenceparameterany: *const WSDXML_ELEMENT, ppolicyany: *const WSDXML_ELEMENT, pendpointreferenceany: *const WSDXML_ELEMENT, pany: *const WSDXML_ELEMENT, ) -> ::windows::runtime::Result<()>2439     pub unsafe fn MatchProbeEx<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
2440         &self,
2441         pprobemessage: *const WSD_SOAP_MESSAGE,
2442         pmessageparameters: Param1,
2443         pszid: Param2,
2444         ullmetadataversion: u64,
2445         ullinstanceid: u64,
2446         ullmessagenumber: u64,
2447         pszsessionid: Param6,
2448         ptypeslist: *const WSD_NAME_LIST,
2449         pscopeslist: *const WSD_URI_LIST,
2450         pxaddrslist: *const WSD_URI_LIST,
2451         pheaderany: *const WSDXML_ELEMENT,
2452         preferenceparameterany: *const WSDXML_ELEMENT,
2453         ppolicyany: *const WSDXML_ELEMENT,
2454         pendpointreferenceany: *const WSDXML_ELEMENT,
2455         pany: *const WSDXML_ELEMENT,
2456     ) -> ::windows::runtime::Result<()> {
2457         (::windows::runtime::Interface::vtable(self).11)(
2458             ::std::mem::transmute_copy(self),
2459             ::std::mem::transmute(pprobemessage),
2460             pmessageparameters.into_param().abi(),
2461             pszid.into_param().abi(),
2462             ::std::mem::transmute(ullmetadataversion),
2463             ::std::mem::transmute(ullinstanceid),
2464             ::std::mem::transmute(ullmessagenumber),
2465             pszsessionid.into_param().abi(),
2466             ::std::mem::transmute(ptypeslist),
2467             ::std::mem::transmute(pscopeslist),
2468             ::std::mem::transmute(pxaddrslist),
2469             ::std::mem::transmute(pheaderany),
2470             ::std::mem::transmute(preferenceparameterany),
2471             ::std::mem::transmute(ppolicyany),
2472             ::std::mem::transmute(pendpointreferenceany),
2473             ::std::mem::transmute(pany),
2474         )
2475         .ok()
2476     }
2477     #[cfg(feature = "Win32_Foundation")]
MatchResolveEx<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, presolvemessage: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1, pszid: Param2, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: Param6, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST, pheaderany: *const WSDXML_ELEMENT, preferenceparameterany: *const WSDXML_ELEMENT, ppolicyany: *const WSDXML_ELEMENT, pendpointreferenceany: *const WSDXML_ELEMENT, pany: *const WSDXML_ELEMENT, ) -> ::windows::runtime::Result<()>2478     pub unsafe fn MatchResolveEx<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
2479         &self,
2480         presolvemessage: *const WSD_SOAP_MESSAGE,
2481         pmessageparameters: Param1,
2482         pszid: Param2,
2483         ullmetadataversion: u64,
2484         ullinstanceid: u64,
2485         ullmessagenumber: u64,
2486         pszsessionid: Param6,
2487         ptypeslist: *const WSD_NAME_LIST,
2488         pscopeslist: *const WSD_URI_LIST,
2489         pxaddrslist: *const WSD_URI_LIST,
2490         pheaderany: *const WSDXML_ELEMENT,
2491         preferenceparameterany: *const WSDXML_ELEMENT,
2492         ppolicyany: *const WSDXML_ELEMENT,
2493         pendpointreferenceany: *const WSDXML_ELEMENT,
2494         pany: *const WSDXML_ELEMENT,
2495     ) -> ::windows::runtime::Result<()> {
2496         (::windows::runtime::Interface::vtable(self).12)(
2497             ::std::mem::transmute_copy(self),
2498             ::std::mem::transmute(presolvemessage),
2499             pmessageparameters.into_param().abi(),
2500             pszid.into_param().abi(),
2501             ::std::mem::transmute(ullmetadataversion),
2502             ::std::mem::transmute(ullinstanceid),
2503             ::std::mem::transmute(ullmessagenumber),
2504             pszsessionid.into_param().abi(),
2505             ::std::mem::transmute(ptypeslist),
2506             ::std::mem::transmute(pscopeslist),
2507             ::std::mem::transmute(pxaddrslist),
2508             ::std::mem::transmute(pheaderany),
2509             ::std::mem::transmute(preferenceparameterany),
2510             ::std::mem::transmute(ppolicyany),
2511             ::std::mem::transmute(pendpointreferenceany),
2512             ::std::mem::transmute(pany),
2513         )
2514         .ok()
2515     }
RegisterScopeMatchingRule<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDScopeMatchingRule>>(&self, pscopematchingrule: Param0) -> ::windows::runtime::Result<()>2516     pub unsafe fn RegisterScopeMatchingRule<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDScopeMatchingRule>>(&self, pscopematchingrule: Param0) -> ::windows::runtime::Result<()> {
2517         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), pscopematchingrule.into_param().abi()).ok()
2518     }
UnRegisterScopeMatchingRule<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDScopeMatchingRule>>(&self, pscopematchingrule: Param0) -> ::windows::runtime::Result<()>2519     pub unsafe fn UnRegisterScopeMatchingRule<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDScopeMatchingRule>>(&self, pscopematchingrule: Param0) -> ::windows::runtime::Result<()> {
2520         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), pscopematchingrule.into_param().abi()).ok()
2521     }
GetXMLContext(&self) -> ::windows::runtime::Result<IWSDXMLContext>2522     pub unsafe fn GetXMLContext(&self) -> ::windows::runtime::Result<IWSDXMLContext> {
2523         let mut result__: <IWSDXMLContext as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2524         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IWSDXMLContext>(result__)
2525     }
2526 }
2527 unsafe impl ::windows::runtime::Interface for IWSDiscoveryPublisher {
2528     type Vtable = IWSDiscoveryPublisher_abi;
2529     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2919358888, 16377, 16712, [129, 22, 5, 124, 198, 22, 254, 19]);
2530 }
2531 impl ::std::convert::From<IWSDiscoveryPublisher> for ::windows::runtime::IUnknown {
from(value: IWSDiscoveryPublisher) -> Self2532     fn from(value: IWSDiscoveryPublisher) -> Self {
2533         unsafe { ::std::mem::transmute(value) }
2534     }
2535 }
2536 impl ::std::convert::From<&IWSDiscoveryPublisher> for ::windows::runtime::IUnknown {
from(value: &IWSDiscoveryPublisher) -> Self2537     fn from(value: &IWSDiscoveryPublisher) -> Self {
2538         ::std::convert::From::from(::std::clone::Clone::clone(value))
2539     }
2540 }
2541 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDiscoveryPublisher {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2542     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2543         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2544     }
2545 }
2546 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDiscoveryPublisher {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2547     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2548         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2549     }
2550 }
2551 #[repr(C)]
2552 #[doc(hidden)]
2553 pub struct IWSDiscoveryPublisher_abi(
2554     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2555     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2556     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2557     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwaddressfamily: u32) -> ::windows::runtime::HRESULT,
2558     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psink: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2559     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psink: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2560     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszid: super::super::Foundation::PWSTR, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: super::super::Foundation::PWSTR, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST) -> ::windows::runtime::HRESULT,
2561     #[cfg(not(feature = "Win32_Foundation"))] usize,
2562     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszid: super::super::Foundation::PWSTR, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: super::super::Foundation::PWSTR, pany: *const WSDXML_ELEMENT) -> ::windows::runtime::HRESULT,
2563     #[cfg(not(feature = "Win32_Foundation"))] usize,
2564     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pprobemessage: *const WSD_SOAP_MESSAGE, pmessageparameters: ::windows::runtime::RawPtr, pszid: super::super::Foundation::PWSTR, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: super::super::Foundation::PWSTR, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST) -> ::windows::runtime::HRESULT,
2565     #[cfg(not(feature = "Win32_Foundation"))] usize,
2566     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, presolvemessage: *const WSD_SOAP_MESSAGE, pmessageparameters: ::windows::runtime::RawPtr, pszid: super::super::Foundation::PWSTR, ullmetadataversion: u64, ullinstanceid: u64, ullmessagenumber: u64, pszsessionid: super::super::Foundation::PWSTR, ptypeslist: *const WSD_NAME_LIST, pscopeslist: *const WSD_URI_LIST, pxaddrslist: *const WSD_URI_LIST) -> ::windows::runtime::HRESULT,
2567     #[cfg(not(feature = "Win32_Foundation"))] usize,
2568     #[cfg(feature = "Win32_Foundation")]
2569     pub  unsafe extern "system" fn(
2570         this: ::windows::runtime::RawPtr,
2571         pszid: super::super::Foundation::PWSTR,
2572         ullmetadataversion: u64,
2573         ullinstanceid: u64,
2574         ullmessagenumber: u64,
2575         pszsessionid: super::super::Foundation::PWSTR,
2576         ptypeslist: *const WSD_NAME_LIST,
2577         pscopeslist: *const WSD_URI_LIST,
2578         pxaddrslist: *const WSD_URI_LIST,
2579         pheaderany: *const WSDXML_ELEMENT,
2580         preferenceparameterany: *const WSDXML_ELEMENT,
2581         ppolicyany: *const WSDXML_ELEMENT,
2582         pendpointreferenceany: *const WSDXML_ELEMENT,
2583         pany: *const WSDXML_ELEMENT,
2584     ) -> ::windows::runtime::HRESULT,
2585     #[cfg(not(feature = "Win32_Foundation"))] usize,
2586     #[cfg(feature = "Win32_Foundation")]
2587     pub  unsafe extern "system" fn(
2588         this: ::windows::runtime::RawPtr,
2589         pprobemessage: *const WSD_SOAP_MESSAGE,
2590         pmessageparameters: ::windows::runtime::RawPtr,
2591         pszid: super::super::Foundation::PWSTR,
2592         ullmetadataversion: u64,
2593         ullinstanceid: u64,
2594         ullmessagenumber: u64,
2595         pszsessionid: super::super::Foundation::PWSTR,
2596         ptypeslist: *const WSD_NAME_LIST,
2597         pscopeslist: *const WSD_URI_LIST,
2598         pxaddrslist: *const WSD_URI_LIST,
2599         pheaderany: *const WSDXML_ELEMENT,
2600         preferenceparameterany: *const WSDXML_ELEMENT,
2601         ppolicyany: *const WSDXML_ELEMENT,
2602         pendpointreferenceany: *const WSDXML_ELEMENT,
2603         pany: *const WSDXML_ELEMENT,
2604     ) -> ::windows::runtime::HRESULT,
2605     #[cfg(not(feature = "Win32_Foundation"))] usize,
2606     #[cfg(feature = "Win32_Foundation")]
2607     pub  unsafe extern "system" fn(
2608         this: ::windows::runtime::RawPtr,
2609         presolvemessage: *const WSD_SOAP_MESSAGE,
2610         pmessageparameters: ::windows::runtime::RawPtr,
2611         pszid: super::super::Foundation::PWSTR,
2612         ullmetadataversion: u64,
2613         ullinstanceid: u64,
2614         ullmessagenumber: u64,
2615         pszsessionid: super::super::Foundation::PWSTR,
2616         ptypeslist: *const WSD_NAME_LIST,
2617         pscopeslist: *const WSD_URI_LIST,
2618         pxaddrslist: *const WSD_URI_LIST,
2619         pheaderany: *const WSDXML_ELEMENT,
2620         preferenceparameterany: *const WSDXML_ELEMENT,
2621         ppolicyany: *const WSDXML_ELEMENT,
2622         pendpointreferenceany: *const WSDXML_ELEMENT,
2623         pany: *const WSDXML_ELEMENT,
2624     ) -> ::windows::runtime::HRESULT,
2625     #[cfg(not(feature = "Win32_Foundation"))] usize,
2626     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pscopematchingrule: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2627     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pscopematchingrule: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2628     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppcontext: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2629 );
2630 #[repr(transparent)]
2631 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2632 pub struct IWSDiscoveryPublisherNotify(::windows::runtime::IUnknown);
2633 impl IWSDiscoveryPublisherNotify {
2634     #[cfg(feature = "Win32_Foundation")]
ProbeHandler<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, psoap: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1) -> ::windows::runtime::Result<()>2635     pub unsafe fn ProbeHandler<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, psoap: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1) -> ::windows::runtime::Result<()> {
2636         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(psoap), pmessageparameters.into_param().abi()).ok()
2637     }
2638     #[cfg(feature = "Win32_Foundation")]
ResolveHandler<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, psoap: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1) -> ::windows::runtime::Result<()>2639     pub unsafe fn ResolveHandler<'a, Param1: ::windows::runtime::IntoParam<'a, IWSDMessageParameters>>(&self, psoap: *const WSD_SOAP_MESSAGE, pmessageparameters: Param1) -> ::windows::runtime::Result<()> {
2640         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(psoap), pmessageparameters.into_param().abi()).ok()
2641     }
2642 }
2643 unsafe impl ::windows::runtime::Interface for IWSDiscoveryPublisherNotify {
2644     type Vtable = IWSDiscoveryPublisherNotify_abi;
2645     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3866513840, 13178, 19260, [151, 88, 115, 51, 136, 86, 130, 81]);
2646 }
2647 impl ::std::convert::From<IWSDiscoveryPublisherNotify> for ::windows::runtime::IUnknown {
from(value: IWSDiscoveryPublisherNotify) -> Self2648     fn from(value: IWSDiscoveryPublisherNotify) -> Self {
2649         unsafe { ::std::mem::transmute(value) }
2650     }
2651 }
2652 impl ::std::convert::From<&IWSDiscoveryPublisherNotify> for ::windows::runtime::IUnknown {
from(value: &IWSDiscoveryPublisherNotify) -> Self2653     fn from(value: &IWSDiscoveryPublisherNotify) -> Self {
2654         ::std::convert::From::from(::std::clone::Clone::clone(value))
2655     }
2656 }
2657 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWSDiscoveryPublisherNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2658     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2659         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2660     }
2661 }
2662 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWSDiscoveryPublisherNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2663     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2664         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2665     }
2666 }
2667 #[repr(C)]
2668 #[doc(hidden)]
2669 pub struct IWSDiscoveryPublisherNotify_abi(
2670     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2671     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2672     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2673     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psoap: *const WSD_SOAP_MESSAGE, pmessageparameters: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2674     #[cfg(not(feature = "Win32_Foundation"))] usize,
2675     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psoap: *const WSD_SOAP_MESSAGE, pmessageparameters: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2676     #[cfg(not(feature = "Win32_Foundation"))] usize,
2677 );
2678 #[cfg(feature = "Win32_Foundation")]
2679 pub type PWSD_SOAP_MESSAGE_HANDLER = unsafe extern "system" fn(thisunknown: ::windows::runtime::RawPtr, event: *mut ::std::mem::ManuallyDrop<WSD_EVENT>) -> ::windows::runtime::HRESULT;
2680 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2681 #[repr(C)]
2682 #[cfg(feature = "Win32_Foundation")]
2683 pub struct REQUESTBODY_GetStatus {
2684     pub Any: *mut WSDXML_ELEMENT,
2685 }
2686 #[cfg(feature = "Win32_Foundation")]
2687 impl REQUESTBODY_GetStatus {}
2688 #[cfg(feature = "Win32_Foundation")]
2689 impl ::std::default::Default for REQUESTBODY_GetStatus {
default() -> Self2690     fn default() -> Self {
2691         unsafe { ::std::mem::zeroed() }
2692     }
2693 }
2694 #[cfg(feature = "Win32_Foundation")]
2695 impl ::std::fmt::Debug for REQUESTBODY_GetStatus {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2696     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2697         fmt.debug_struct("REQUESTBODY_GetStatus").field("Any", &self.Any).finish()
2698     }
2699 }
2700 #[cfg(feature = "Win32_Foundation")]
2701 impl ::std::cmp::PartialEq for REQUESTBODY_GetStatus {
eq(&self, other: &Self) -> bool2702     fn eq(&self, other: &Self) -> bool {
2703         self.Any == other.Any
2704     }
2705 }
2706 #[cfg(feature = "Win32_Foundation")]
2707 impl ::std::cmp::Eq for REQUESTBODY_GetStatus {}
2708 #[cfg(feature = "Win32_Foundation")]
2709 unsafe impl ::windows::runtime::Abi for REQUESTBODY_GetStatus {
2710     type Abi = Self;
2711     type DefaultType = Self;
2712 }
2713 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2714 #[repr(C)]
2715 #[cfg(feature = "Win32_Foundation")]
2716 pub struct REQUESTBODY_Renew {
2717     pub Expires: *mut WSD_EVENTING_EXPIRES,
2718     pub Any: *mut WSDXML_ELEMENT,
2719 }
2720 #[cfg(feature = "Win32_Foundation")]
2721 impl REQUESTBODY_Renew {}
2722 #[cfg(feature = "Win32_Foundation")]
2723 impl ::std::default::Default for REQUESTBODY_Renew {
default() -> Self2724     fn default() -> Self {
2725         unsafe { ::std::mem::zeroed() }
2726     }
2727 }
2728 #[cfg(feature = "Win32_Foundation")]
2729 impl ::std::fmt::Debug for REQUESTBODY_Renew {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2730     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2731         fmt.debug_struct("REQUESTBODY_Renew").field("Expires", &self.Expires).field("Any", &self.Any).finish()
2732     }
2733 }
2734 #[cfg(feature = "Win32_Foundation")]
2735 impl ::std::cmp::PartialEq for REQUESTBODY_Renew {
eq(&self, other: &Self) -> bool2736     fn eq(&self, other: &Self) -> bool {
2737         self.Expires == other.Expires && self.Any == other.Any
2738     }
2739 }
2740 #[cfg(feature = "Win32_Foundation")]
2741 impl ::std::cmp::Eq for REQUESTBODY_Renew {}
2742 #[cfg(feature = "Win32_Foundation")]
2743 unsafe impl ::windows::runtime::Abi for REQUESTBODY_Renew {
2744     type Abi = Self;
2745     type DefaultType = Self;
2746 }
2747 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2748 #[repr(C)]
2749 #[cfg(feature = "Win32_Foundation")]
2750 pub struct REQUESTBODY_Subscribe {
2751     pub EndTo: *mut WSD_ENDPOINT_REFERENCE,
2752     pub Delivery: *mut WSD_EVENTING_DELIVERY_MODE,
2753     pub Expires: *mut WSD_EVENTING_EXPIRES,
2754     pub Filter: *mut WSD_EVENTING_FILTER,
2755     pub Any: *mut WSDXML_ELEMENT,
2756 }
2757 #[cfg(feature = "Win32_Foundation")]
2758 impl REQUESTBODY_Subscribe {}
2759 #[cfg(feature = "Win32_Foundation")]
2760 impl ::std::default::Default for REQUESTBODY_Subscribe {
default() -> Self2761     fn default() -> Self {
2762         unsafe { ::std::mem::zeroed() }
2763     }
2764 }
2765 #[cfg(feature = "Win32_Foundation")]
2766 impl ::std::fmt::Debug for REQUESTBODY_Subscribe {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2767     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2768         fmt.debug_struct("REQUESTBODY_Subscribe").field("EndTo", &self.EndTo).field("Delivery", &self.Delivery).field("Expires", &self.Expires).field("Filter", &self.Filter).field("Any", &self.Any).finish()
2769     }
2770 }
2771 #[cfg(feature = "Win32_Foundation")]
2772 impl ::std::cmp::PartialEq for REQUESTBODY_Subscribe {
eq(&self, other: &Self) -> bool2773     fn eq(&self, other: &Self) -> bool {
2774         self.EndTo == other.EndTo && self.Delivery == other.Delivery && self.Expires == other.Expires && self.Filter == other.Filter && self.Any == other.Any
2775     }
2776 }
2777 #[cfg(feature = "Win32_Foundation")]
2778 impl ::std::cmp::Eq for REQUESTBODY_Subscribe {}
2779 #[cfg(feature = "Win32_Foundation")]
2780 unsafe impl ::windows::runtime::Abi for REQUESTBODY_Subscribe {
2781     type Abi = Self;
2782     type DefaultType = Self;
2783 }
2784 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2785 #[repr(C)]
2786 #[cfg(feature = "Win32_Foundation")]
2787 pub struct REQUESTBODY_Unsubscribe {
2788     pub any: *mut WSDXML_ELEMENT,
2789 }
2790 #[cfg(feature = "Win32_Foundation")]
2791 impl REQUESTBODY_Unsubscribe {}
2792 #[cfg(feature = "Win32_Foundation")]
2793 impl ::std::default::Default for REQUESTBODY_Unsubscribe {
default() -> Self2794     fn default() -> Self {
2795         unsafe { ::std::mem::zeroed() }
2796     }
2797 }
2798 #[cfg(feature = "Win32_Foundation")]
2799 impl ::std::fmt::Debug for REQUESTBODY_Unsubscribe {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2800     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2801         fmt.debug_struct("REQUESTBODY_Unsubscribe").field("any", &self.any).finish()
2802     }
2803 }
2804 #[cfg(feature = "Win32_Foundation")]
2805 impl ::std::cmp::PartialEq for REQUESTBODY_Unsubscribe {
eq(&self, other: &Self) -> bool2806     fn eq(&self, other: &Self) -> bool {
2807         self.any == other.any
2808     }
2809 }
2810 #[cfg(feature = "Win32_Foundation")]
2811 impl ::std::cmp::Eq for REQUESTBODY_Unsubscribe {}
2812 #[cfg(feature = "Win32_Foundation")]
2813 unsafe impl ::windows::runtime::Abi for REQUESTBODY_Unsubscribe {
2814     type Abi = Self;
2815     type DefaultType = Self;
2816 }
2817 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2818 #[repr(C)]
2819 #[cfg(feature = "Win32_Foundation")]
2820 pub struct RESPONSEBODY_GetMetadata {
2821     pub Metadata: *mut WSD_METADATA_SECTION_LIST,
2822 }
2823 #[cfg(feature = "Win32_Foundation")]
2824 impl RESPONSEBODY_GetMetadata {}
2825 #[cfg(feature = "Win32_Foundation")]
2826 impl ::std::default::Default for RESPONSEBODY_GetMetadata {
default() -> Self2827     fn default() -> Self {
2828         unsafe { ::std::mem::zeroed() }
2829     }
2830 }
2831 #[cfg(feature = "Win32_Foundation")]
2832 impl ::std::fmt::Debug for RESPONSEBODY_GetMetadata {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2833     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2834         fmt.debug_struct("RESPONSEBODY_GetMetadata").field("Metadata", &self.Metadata).finish()
2835     }
2836 }
2837 #[cfg(feature = "Win32_Foundation")]
2838 impl ::std::cmp::PartialEq for RESPONSEBODY_GetMetadata {
eq(&self, other: &Self) -> bool2839     fn eq(&self, other: &Self) -> bool {
2840         self.Metadata == other.Metadata
2841     }
2842 }
2843 #[cfg(feature = "Win32_Foundation")]
2844 impl ::std::cmp::Eq for RESPONSEBODY_GetMetadata {}
2845 #[cfg(feature = "Win32_Foundation")]
2846 unsafe impl ::windows::runtime::Abi for RESPONSEBODY_GetMetadata {
2847     type Abi = Self;
2848     type DefaultType = Self;
2849 }
2850 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2851 #[repr(C)]
2852 #[cfg(feature = "Win32_Foundation")]
2853 pub struct RESPONSEBODY_GetStatus {
2854     pub expires: *mut WSD_EVENTING_EXPIRES,
2855     pub any: *mut WSDXML_ELEMENT,
2856 }
2857 #[cfg(feature = "Win32_Foundation")]
2858 impl RESPONSEBODY_GetStatus {}
2859 #[cfg(feature = "Win32_Foundation")]
2860 impl ::std::default::Default for RESPONSEBODY_GetStatus {
default() -> Self2861     fn default() -> Self {
2862         unsafe { ::std::mem::zeroed() }
2863     }
2864 }
2865 #[cfg(feature = "Win32_Foundation")]
2866 impl ::std::fmt::Debug for RESPONSEBODY_GetStatus {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2867     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2868         fmt.debug_struct("RESPONSEBODY_GetStatus").field("expires", &self.expires).field("any", &self.any).finish()
2869     }
2870 }
2871 #[cfg(feature = "Win32_Foundation")]
2872 impl ::std::cmp::PartialEq for RESPONSEBODY_GetStatus {
eq(&self, other: &Self) -> bool2873     fn eq(&self, other: &Self) -> bool {
2874         self.expires == other.expires && self.any == other.any
2875     }
2876 }
2877 #[cfg(feature = "Win32_Foundation")]
2878 impl ::std::cmp::Eq for RESPONSEBODY_GetStatus {}
2879 #[cfg(feature = "Win32_Foundation")]
2880 unsafe impl ::windows::runtime::Abi for RESPONSEBODY_GetStatus {
2881     type Abi = Self;
2882     type DefaultType = Self;
2883 }
2884 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2885 #[repr(C)]
2886 #[cfg(feature = "Win32_Foundation")]
2887 pub struct RESPONSEBODY_Renew {
2888     pub expires: *mut WSD_EVENTING_EXPIRES,
2889     pub any: *mut WSDXML_ELEMENT,
2890 }
2891 #[cfg(feature = "Win32_Foundation")]
2892 impl RESPONSEBODY_Renew {}
2893 #[cfg(feature = "Win32_Foundation")]
2894 impl ::std::default::Default for RESPONSEBODY_Renew {
default() -> Self2895     fn default() -> Self {
2896         unsafe { ::std::mem::zeroed() }
2897     }
2898 }
2899 #[cfg(feature = "Win32_Foundation")]
2900 impl ::std::fmt::Debug for RESPONSEBODY_Renew {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2901     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2902         fmt.debug_struct("RESPONSEBODY_Renew").field("expires", &self.expires).field("any", &self.any).finish()
2903     }
2904 }
2905 #[cfg(feature = "Win32_Foundation")]
2906 impl ::std::cmp::PartialEq for RESPONSEBODY_Renew {
eq(&self, other: &Self) -> bool2907     fn eq(&self, other: &Self) -> bool {
2908         self.expires == other.expires && self.any == other.any
2909     }
2910 }
2911 #[cfg(feature = "Win32_Foundation")]
2912 impl ::std::cmp::Eq for RESPONSEBODY_Renew {}
2913 #[cfg(feature = "Win32_Foundation")]
2914 unsafe impl ::windows::runtime::Abi for RESPONSEBODY_Renew {
2915     type Abi = Self;
2916     type DefaultType = Self;
2917 }
2918 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2919 #[repr(C)]
2920 #[cfg(feature = "Win32_Foundation")]
2921 pub struct RESPONSEBODY_Subscribe {
2922     pub SubscriptionManager: *mut WSD_ENDPOINT_REFERENCE,
2923     pub expires: *mut WSD_EVENTING_EXPIRES,
2924     pub any: *mut WSDXML_ELEMENT,
2925 }
2926 #[cfg(feature = "Win32_Foundation")]
2927 impl RESPONSEBODY_Subscribe {}
2928 #[cfg(feature = "Win32_Foundation")]
2929 impl ::std::default::Default for RESPONSEBODY_Subscribe {
default() -> Self2930     fn default() -> Self {
2931         unsafe { ::std::mem::zeroed() }
2932     }
2933 }
2934 #[cfg(feature = "Win32_Foundation")]
2935 impl ::std::fmt::Debug for RESPONSEBODY_Subscribe {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2936     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2937         fmt.debug_struct("RESPONSEBODY_Subscribe").field("SubscriptionManager", &self.SubscriptionManager).field("expires", &self.expires).field("any", &self.any).finish()
2938     }
2939 }
2940 #[cfg(feature = "Win32_Foundation")]
2941 impl ::std::cmp::PartialEq for RESPONSEBODY_Subscribe {
eq(&self, other: &Self) -> bool2942     fn eq(&self, other: &Self) -> bool {
2943         self.SubscriptionManager == other.SubscriptionManager && self.expires == other.expires && self.any == other.any
2944     }
2945 }
2946 #[cfg(feature = "Win32_Foundation")]
2947 impl ::std::cmp::Eq for RESPONSEBODY_Subscribe {}
2948 #[cfg(feature = "Win32_Foundation")]
2949 unsafe impl ::windows::runtime::Abi for RESPONSEBODY_Subscribe {
2950     type Abi = Self;
2951     type DefaultType = Self;
2952 }
2953 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2954 #[repr(C)]
2955 #[cfg(feature = "Win32_Foundation")]
2956 pub struct RESPONSEBODY_SubscriptionEnd {
2957     pub SubscriptionManager: *mut WSD_ENDPOINT_REFERENCE,
2958     pub Status: super::super::Foundation::PWSTR,
2959     pub Reason: *mut WSD_LOCALIZED_STRING,
2960     pub Any: *mut WSDXML_ELEMENT,
2961 }
2962 #[cfg(feature = "Win32_Foundation")]
2963 impl RESPONSEBODY_SubscriptionEnd {}
2964 #[cfg(feature = "Win32_Foundation")]
2965 impl ::std::default::Default for RESPONSEBODY_SubscriptionEnd {
default() -> Self2966     fn default() -> Self {
2967         unsafe { ::std::mem::zeroed() }
2968     }
2969 }
2970 #[cfg(feature = "Win32_Foundation")]
2971 impl ::std::fmt::Debug for RESPONSEBODY_SubscriptionEnd {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2972     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2973         fmt.debug_struct("RESPONSEBODY_SubscriptionEnd").field("SubscriptionManager", &self.SubscriptionManager).field("Status", &self.Status).field("Reason", &self.Reason).field("Any", &self.Any).finish()
2974     }
2975 }
2976 #[cfg(feature = "Win32_Foundation")]
2977 impl ::std::cmp::PartialEq for RESPONSEBODY_SubscriptionEnd {
eq(&self, other: &Self) -> bool2978     fn eq(&self, other: &Self) -> bool {
2979         self.SubscriptionManager == other.SubscriptionManager && self.Status == other.Status && self.Reason == other.Reason && self.Any == other.Any
2980     }
2981 }
2982 #[cfg(feature = "Win32_Foundation")]
2983 impl ::std::cmp::Eq for RESPONSEBODY_SubscriptionEnd {}
2984 #[cfg(feature = "Win32_Foundation")]
2985 unsafe impl ::windows::runtime::Abi for RESPONSEBODY_SubscriptionEnd {
2986     type Abi = Self;
2987     type DefaultType = Self;
2988 }
2989 pub const WSDAPI_ADDRESSFAMILY_IPV4: u32 = 1u32;
2990 pub const WSDAPI_ADDRESSFAMILY_IPV6: u32 = 2u32;
2991 pub const WSDAPI_COMPACTSIG_ACCEPT_ALL_MESSAGES: u32 = 1u32;
2992 pub const WSDAPI_OPTION_MAX_INBOUND_MESSAGE_SIZE: u32 = 1u32;
2993 pub const WSDAPI_OPTION_TRACE_XML_TO_DEBUGGER: u32 = 2u32;
2994 pub const WSDAPI_OPTION_TRACE_XML_TO_FILE: u32 = 3u32;
2995 pub const WSDAPI_SSL_CERT_APPLY_DEFAULT_CHECKS: u32 = 0u32;
2996 pub const WSDAPI_SSL_CERT_IGNORE_EXPIRY: u32 = 2u32;
2997 pub const WSDAPI_SSL_CERT_IGNORE_INVALID_CN: u32 = 16u32;
2998 pub const WSDAPI_SSL_CERT_IGNORE_REVOCATION: u32 = 1u32;
2999 pub const WSDAPI_SSL_CERT_IGNORE_UNKNOWN_CA: u32 = 8u32;
3000 pub const WSDAPI_SSL_CERT_IGNORE_WRONG_USAGE: u32 = 4u32;
3001 #[inline]
WSDAllocateLinkedMemory(pparent: *mut ::std::ffi::c_void, cbsize: usize) -> *mut ::std::ffi::c_void3002 pub unsafe fn WSDAllocateLinkedMemory(pparent: *mut ::std::ffi::c_void, cbsize: usize) -> *mut ::std::ffi::c_void {
3003     #[cfg(windows)]
3004     {
3005         #[link(name = "windows")]
3006         extern "system" {
3007             fn WSDAllocateLinkedMemory(pparent: *mut ::std::ffi::c_void, cbsize: usize) -> *mut ::std::ffi::c_void;
3008         }
3009         ::std::mem::transmute(WSDAllocateLinkedMemory(::std::mem::transmute(pparent), ::std::mem::transmute(cbsize)))
3010     }
3011     #[cfg(not(windows))]
3012     unimplemented!("Unsupported target OS");
3013 }
3014 #[inline]
WSDAttachLinkedMemory(pparent: *mut ::std::ffi::c_void, pchild: *mut ::std::ffi::c_void)3015 pub unsafe fn WSDAttachLinkedMemory(pparent: *mut ::std::ffi::c_void, pchild: *mut ::std::ffi::c_void) {
3016     #[cfg(windows)]
3017     {
3018         #[link(name = "windows")]
3019         extern "system" {
3020             fn WSDAttachLinkedMemory(pparent: *mut ::std::ffi::c_void, pchild: *mut ::std::ffi::c_void);
3021         }
3022         ::std::mem::transmute(WSDAttachLinkedMemory(::std::mem::transmute(pparent), ::std::mem::transmute(pchild)))
3023     }
3024     #[cfg(not(windows))]
3025     unimplemented!("Unsupported target OS");
3026 }
3027 #[cfg(feature = "Win32_Foundation")]
3028 #[inline]
WSDCreateDeviceHost<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszlocalid: Param0, pcontext: Param1) -> ::windows::runtime::Result<IWSDDeviceHost>3029 pub unsafe fn WSDCreateDeviceHost<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszlocalid: Param0, pcontext: Param1) -> ::windows::runtime::Result<IWSDDeviceHost> {
3030     #[cfg(windows)]
3031     {
3032         #[link(name = "windows")]
3033         extern "system" {
3034             fn WSDCreateDeviceHost(pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, ppdevicehost: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3035         }
3036         let mut result__: <IWSDDeviceHost as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3037         WSDCreateDeviceHost(pszlocalid.into_param().abi(), pcontext.into_param().abi(), &mut result__).from_abi::<IWSDDeviceHost>(result__)
3038     }
3039     #[cfg(not(windows))]
3040     unimplemented!("Unsupported target OS");
3041 }
3042 #[cfg(feature = "Win32_Foundation")]
3043 #[inline]
WSDCreateDeviceHost2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszlocalid: Param0, pcontext: Param1, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDDeviceHost>3044 pub unsafe fn WSDCreateDeviceHost2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszlocalid: Param0, pcontext: Param1, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDDeviceHost> {
3045     #[cfg(windows)]
3046     {
3047         #[link(name = "windows")]
3048         extern "system" {
3049             fn WSDCreateDeviceHost2(pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32, ppdevicehost: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3050         }
3051         let mut result__: <IWSDDeviceHost as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3052         WSDCreateDeviceHost2(pszlocalid.into_param().abi(), pcontext.into_param().abi(), ::std::mem::transmute(pconfigparams), ::std::mem::transmute(dwconfigparamcount), &mut result__).from_abi::<IWSDDeviceHost>(result__)
3053     }
3054     #[cfg(not(windows))]
3055     unimplemented!("Unsupported target OS");
3056 }
3057 #[cfg(feature = "Win32_Foundation")]
3058 #[inline]
WSDCreateDeviceHostAdvanced<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszlocalid: Param0, pcontext: Param1, pphostaddresses: *const ::std::option::Option<IWSDAddress>, dwhostaddresscount: u32) -> ::windows::runtime::Result<IWSDDeviceHost>3059 pub unsafe fn WSDCreateDeviceHostAdvanced<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszlocalid: Param0, pcontext: Param1, pphostaddresses: *const ::std::option::Option<IWSDAddress>, dwhostaddresscount: u32) -> ::windows::runtime::Result<IWSDDeviceHost> {
3060     #[cfg(windows)]
3061     {
3062         #[link(name = "windows")]
3063         extern "system" {
3064             fn WSDCreateDeviceHostAdvanced(pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, pphostaddresses: *const ::windows::runtime::RawPtr, dwhostaddresscount: u32, ppdevicehost: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3065         }
3066         let mut result__: <IWSDDeviceHost as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3067         WSDCreateDeviceHostAdvanced(pszlocalid.into_param().abi(), pcontext.into_param().abi(), ::std::mem::transmute(pphostaddresses), ::std::mem::transmute(dwhostaddresscount), &mut result__).from_abi::<IWSDDeviceHost>(result__)
3068     }
3069     #[cfg(not(windows))]
3070     unimplemented!("Unsupported target OS");
3071 }
3072 #[cfg(feature = "Win32_Foundation")]
3073 #[inline]
WSDCreateDeviceProxy<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszdeviceid: Param0, pszlocalid: Param1, pcontext: Param2) -> ::windows::runtime::Result<IWSDDeviceProxy>3074 pub unsafe fn WSDCreateDeviceProxy<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszdeviceid: Param0, pszlocalid: Param1, pcontext: Param2) -> ::windows::runtime::Result<IWSDDeviceProxy> {
3075     #[cfg(windows)]
3076     {
3077         #[link(name = "windows")]
3078         extern "system" {
3079             fn WSDCreateDeviceProxy(pszdeviceid: super::super::Foundation::PWSTR, pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, ppdeviceproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3080         }
3081         let mut result__: <IWSDDeviceProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3082         WSDCreateDeviceProxy(pszdeviceid.into_param().abi(), pszlocalid.into_param().abi(), pcontext.into_param().abi(), &mut result__).from_abi::<IWSDDeviceProxy>(result__)
3083     }
3084     #[cfg(not(windows))]
3085     unimplemented!("Unsupported target OS");
3086 }
3087 #[cfg(feature = "Win32_Foundation")]
3088 #[inline]
WSDCreateDeviceProxy2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszdeviceid: Param0, pszlocalid: Param1, pcontext: Param2, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDDeviceProxy>3089 pub unsafe fn WSDCreateDeviceProxy2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszdeviceid: Param0, pszlocalid: Param1, pcontext: Param2, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDDeviceProxy> {
3090     #[cfg(windows)]
3091     {
3092         #[link(name = "windows")]
3093         extern "system" {
3094             fn WSDCreateDeviceProxy2(pszdeviceid: super::super::Foundation::PWSTR, pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32, ppdeviceproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3095         }
3096         let mut result__: <IWSDDeviceProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3097         WSDCreateDeviceProxy2(pszdeviceid.into_param().abi(), pszlocalid.into_param().abi(), pcontext.into_param().abi(), ::std::mem::transmute(pconfigparams), ::std::mem::transmute(dwconfigparamcount), &mut result__).from_abi::<IWSDDeviceProxy>(result__)
3098     }
3099     #[cfg(not(windows))]
3100     unimplemented!("Unsupported target OS");
3101 }
3102 #[cfg(feature = "Win32_Foundation")]
3103 #[inline]
WSDCreateDeviceProxyAdvanced<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDAddress>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszdeviceid: Param0, pdeviceaddress: Param1, pszlocalid: Param2, pcontext: Param3) -> ::windows::runtime::Result<IWSDDeviceProxy>3104 pub unsafe fn WSDCreateDeviceProxyAdvanced<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IWSDAddress>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pszdeviceid: Param0, pdeviceaddress: Param1, pszlocalid: Param2, pcontext: Param3) -> ::windows::runtime::Result<IWSDDeviceProxy> {
3105     #[cfg(windows)]
3106     {
3107         #[link(name = "windows")]
3108         extern "system" {
3109             fn WSDCreateDeviceProxyAdvanced(pszdeviceid: super::super::Foundation::PWSTR, pdeviceaddress: ::windows::runtime::RawPtr, pszlocalid: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, ppdeviceproxy: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3110         }
3111         let mut result__: <IWSDDeviceProxy as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3112         WSDCreateDeviceProxyAdvanced(pszdeviceid.into_param().abi(), pdeviceaddress.into_param().abi(), pszlocalid.into_param().abi(), pcontext.into_param().abi(), &mut result__).from_abi::<IWSDDeviceProxy>(result__)
3113     }
3114     #[cfg(not(windows))]
3115     unimplemented!("Unsupported target OS");
3116 }
3117 #[inline]
WSDCreateDiscoveryProvider<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0) -> ::windows::runtime::Result<IWSDiscoveryProvider>3118 pub unsafe fn WSDCreateDiscoveryProvider<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0) -> ::windows::runtime::Result<IWSDiscoveryProvider> {
3119     #[cfg(windows)]
3120     {
3121         #[link(name = "windows")]
3122         extern "system" {
3123             fn WSDCreateDiscoveryProvider(pcontext: ::windows::runtime::RawPtr, ppprovider: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3124         }
3125         let mut result__: <IWSDiscoveryProvider as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3126         WSDCreateDiscoveryProvider(pcontext.into_param().abi(), &mut result__).from_abi::<IWSDiscoveryProvider>(result__)
3127     }
3128     #[cfg(not(windows))]
3129     unimplemented!("Unsupported target OS");
3130 }
3131 #[inline]
WSDCreateDiscoveryProvider2<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDiscoveryProvider>3132 pub unsafe fn WSDCreateDiscoveryProvider2<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDiscoveryProvider> {
3133     #[cfg(windows)]
3134     {
3135         #[link(name = "windows")]
3136         extern "system" {
3137             fn WSDCreateDiscoveryProvider2(pcontext: ::windows::runtime::RawPtr, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32, ppprovider: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3138         }
3139         let mut result__: <IWSDiscoveryProvider as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3140         WSDCreateDiscoveryProvider2(pcontext.into_param().abi(), ::std::mem::transmute(pconfigparams), ::std::mem::transmute(dwconfigparamcount), &mut result__).from_abi::<IWSDiscoveryProvider>(result__)
3141     }
3142     #[cfg(not(windows))]
3143     unimplemented!("Unsupported target OS");
3144 }
3145 #[inline]
WSDCreateDiscoveryPublisher<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0) -> ::windows::runtime::Result<IWSDiscoveryPublisher>3146 pub unsafe fn WSDCreateDiscoveryPublisher<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0) -> ::windows::runtime::Result<IWSDiscoveryPublisher> {
3147     #[cfg(windows)]
3148     {
3149         #[link(name = "windows")]
3150         extern "system" {
3151             fn WSDCreateDiscoveryPublisher(pcontext: ::windows::runtime::RawPtr, pppublisher: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3152         }
3153         let mut result__: <IWSDiscoveryPublisher as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3154         WSDCreateDiscoveryPublisher(pcontext.into_param().abi(), &mut result__).from_abi::<IWSDiscoveryPublisher>(result__)
3155     }
3156     #[cfg(not(windows))]
3157     unimplemented!("Unsupported target OS");
3158 }
3159 #[inline]
WSDCreateDiscoveryPublisher2<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDiscoveryPublisher>3160 pub unsafe fn WSDCreateDiscoveryPublisher2<'a, Param0: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(pcontext: Param0, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32) -> ::windows::runtime::Result<IWSDiscoveryPublisher> {
3161     #[cfg(windows)]
3162     {
3163         #[link(name = "windows")]
3164         extern "system" {
3165             fn WSDCreateDiscoveryPublisher2(pcontext: ::windows::runtime::RawPtr, pconfigparams: *const WSD_CONFIG_PARAM, dwconfigparamcount: u32, pppublisher: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3166         }
3167         let mut result__: <IWSDiscoveryPublisher as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3168         WSDCreateDiscoveryPublisher2(pcontext.into_param().abi(), ::std::mem::transmute(pconfigparams), ::std::mem::transmute(dwconfigparamcount), &mut result__).from_abi::<IWSDiscoveryPublisher>(result__)
3169     }
3170     #[cfg(not(windows))]
3171     unimplemented!("Unsupported target OS");
3172 }
3173 #[inline]
WSDCreateHttpAddress() -> ::windows::runtime::Result<IWSDHttpAddress>3174 pub unsafe fn WSDCreateHttpAddress() -> ::windows::runtime::Result<IWSDHttpAddress> {
3175     #[cfg(windows)]
3176     {
3177         #[link(name = "windows")]
3178         extern "system" {
3179             fn WSDCreateHttpAddress(ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3180         }
3181         let mut result__: <IWSDHttpAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3182         WSDCreateHttpAddress(&mut result__).from_abi::<IWSDHttpAddress>(result__)
3183     }
3184     #[cfg(not(windows))]
3185     unimplemented!("Unsupported target OS");
3186 }
3187 #[inline]
WSDCreateHttpMessageParameters() -> ::windows::runtime::Result<IWSDHttpMessageParameters>3188 pub unsafe fn WSDCreateHttpMessageParameters() -> ::windows::runtime::Result<IWSDHttpMessageParameters> {
3189     #[cfg(windows)]
3190     {
3191         #[link(name = "windows")]
3192         extern "system" {
3193             fn WSDCreateHttpMessageParameters(pptxparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3194         }
3195         let mut result__: <IWSDHttpMessageParameters as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3196         WSDCreateHttpMessageParameters(&mut result__).from_abi::<IWSDHttpMessageParameters>(result__)
3197     }
3198     #[cfg(not(windows))]
3199     unimplemented!("Unsupported target OS");
3200 }
3201 #[inline]
WSDCreateOutboundAttachment() -> ::windows::runtime::Result<IWSDOutboundAttachment>3202 pub unsafe fn WSDCreateOutboundAttachment() -> ::windows::runtime::Result<IWSDOutboundAttachment> {
3203     #[cfg(windows)]
3204     {
3205         #[link(name = "windows")]
3206         extern "system" {
3207             fn WSDCreateOutboundAttachment(ppattachment: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3208         }
3209         let mut result__: <IWSDOutboundAttachment as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3210         WSDCreateOutboundAttachment(&mut result__).from_abi::<IWSDOutboundAttachment>(result__)
3211     }
3212     #[cfg(not(windows))]
3213     unimplemented!("Unsupported target OS");
3214 }
3215 #[inline]
WSDCreateUdpAddress() -> ::windows::runtime::Result<IWSDUdpAddress>3216 pub unsafe fn WSDCreateUdpAddress() -> ::windows::runtime::Result<IWSDUdpAddress> {
3217     #[cfg(windows)]
3218     {
3219         #[link(name = "windows")]
3220         extern "system" {
3221             fn WSDCreateUdpAddress(ppaddress: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3222         }
3223         let mut result__: <IWSDUdpAddress as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3224         WSDCreateUdpAddress(&mut result__).from_abi::<IWSDUdpAddress>(result__)
3225     }
3226     #[cfg(not(windows))]
3227     unimplemented!("Unsupported target OS");
3228 }
3229 #[inline]
WSDCreateUdpMessageParameters() -> ::windows::runtime::Result<IWSDUdpMessageParameters>3230 pub unsafe fn WSDCreateUdpMessageParameters() -> ::windows::runtime::Result<IWSDUdpMessageParameters> {
3231     #[cfg(windows)]
3232     {
3233         #[link(name = "windows")]
3234         extern "system" {
3235             fn WSDCreateUdpMessageParameters(pptxparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3236         }
3237         let mut result__: <IWSDUdpMessageParameters as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3238         WSDCreateUdpMessageParameters(&mut result__).from_abi::<IWSDUdpMessageParameters>(result__)
3239     }
3240     #[cfg(not(windows))]
3241     unimplemented!("Unsupported target OS");
3242 }
3243 #[inline]
WSDDetachLinkedMemory(pvoid: *mut ::std::ffi::c_void)3244 pub unsafe fn WSDDetachLinkedMemory(pvoid: *mut ::std::ffi::c_void) {
3245     #[cfg(windows)]
3246     {
3247         #[link(name = "windows")]
3248         extern "system" {
3249             fn WSDDetachLinkedMemory(pvoid: *mut ::std::ffi::c_void);
3250         }
3251         ::std::mem::transmute(WSDDetachLinkedMemory(::std::mem::transmute(pvoid)))
3252     }
3253     #[cfg(not(windows))]
3254     unimplemented!("Unsupported target OS");
3255 }
3256 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3257 #[repr(transparent)]
3258 pub struct WSDEventType(pub i32);
3259 pub const WSDET_NONE: WSDEventType = WSDEventType(0i32);
3260 pub const WSDET_INCOMING_MESSAGE: WSDEventType = WSDEventType(1i32);
3261 pub const WSDET_INCOMING_FAULT: WSDEventType = WSDEventType(2i32);
3262 pub const WSDET_TRANSMISSION_FAILURE: WSDEventType = WSDEventType(3i32);
3263 pub const WSDET_RESPONSE_TIMEOUT: WSDEventType = WSDEventType(4i32);
3264 impl ::std::convert::From<i32> for WSDEventType {
from(value: i32) -> Self3265     fn from(value: i32) -> Self {
3266         Self(value)
3267     }
3268 }
3269 unsafe impl ::windows::runtime::Abi for WSDEventType {
3270     type Abi = Self;
3271     type DefaultType = Self;
3272 }
3273 #[inline]
WSDFreeLinkedMemory(pvoid: *mut ::std::ffi::c_void)3274 pub unsafe fn WSDFreeLinkedMemory(pvoid: *mut ::std::ffi::c_void) {
3275     #[cfg(windows)]
3276     {
3277         #[link(name = "windows")]
3278         extern "system" {
3279             fn WSDFreeLinkedMemory(pvoid: *mut ::std::ffi::c_void);
3280         }
3281         ::std::mem::transmute(WSDFreeLinkedMemory(::std::mem::transmute(pvoid)))
3282     }
3283     #[cfg(not(windows))]
3284     unimplemented!("Unsupported target OS");
3285 }
3286 #[cfg(feature = "Win32_Foundation")]
3287 #[inline]
WSDGenerateFault<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>( pszcode: Param0, pszsubcode: Param1, pszreason: Param2, pszdetail: Param3, pcontext: Param4, ) -> ::windows::runtime::Result<*mut WSD_SOAP_FAULT>3288 pub unsafe fn WSDGenerateFault<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, IWSDXMLContext>>(
3289     pszcode: Param0,
3290     pszsubcode: Param1,
3291     pszreason: Param2,
3292     pszdetail: Param3,
3293     pcontext: Param4,
3294 ) -> ::windows::runtime::Result<*mut WSD_SOAP_FAULT> {
3295     #[cfg(windows)]
3296     {
3297         #[link(name = "windows")]
3298         extern "system" {
3299             fn WSDGenerateFault(pszcode: super::super::Foundation::PWSTR, pszsubcode: super::super::Foundation::PWSTR, pszreason: super::super::Foundation::PWSTR, pszdetail: super::super::Foundation::PWSTR, pcontext: ::windows::runtime::RawPtr, ppfault: *mut *mut WSD_SOAP_FAULT) -> ::windows::runtime::HRESULT;
3300         }
3301         let mut result__: <*mut WSD_SOAP_FAULT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3302         WSDGenerateFault(pszcode.into_param().abi(), pszsubcode.into_param().abi(), pszreason.into_param().abi(), pszdetail.into_param().abi(), pcontext.into_param().abi(), &mut result__).from_abi::<*mut WSD_SOAP_FAULT>(result__)
3303     }
3304     #[cfg(not(windows))]
3305     unimplemented!("Unsupported target OS");
3306 }
3307 #[cfg(feature = "Win32_Foundation")]
3308 #[inline]
WSDGenerateFaultEx<'a, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pcode: *const WSDXML_NAME, psubcode: *const WSDXML_NAME, preasons: *const WSD_LOCALIZED_STRING_LIST, pszdetail: Param3) -> ::windows::runtime::Result<*mut WSD_SOAP_FAULT>3309 pub unsafe fn WSDGenerateFaultEx<'a, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pcode: *const WSDXML_NAME, psubcode: *const WSDXML_NAME, preasons: *const WSD_LOCALIZED_STRING_LIST, pszdetail: Param3) -> ::windows::runtime::Result<*mut WSD_SOAP_FAULT> {
3310     #[cfg(windows)]
3311     {
3312         #[link(name = "windows")]
3313         extern "system" {
3314             fn WSDGenerateFaultEx(pcode: *const WSDXML_NAME, psubcode: *const WSDXML_NAME, preasons: *const WSD_LOCALIZED_STRING_LIST, pszdetail: super::super::Foundation::PWSTR, ppfault: *mut *mut WSD_SOAP_FAULT) -> ::windows::runtime::HRESULT;
3315         }
3316         let mut result__: <*mut WSD_SOAP_FAULT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3317         WSDGenerateFaultEx(::std::mem::transmute(pcode), ::std::mem::transmute(psubcode), ::std::mem::transmute(preasons), pszdetail.into_param().abi(), &mut result__).from_abi::<*mut WSD_SOAP_FAULT>(result__)
3318     }
3319     #[cfg(not(windows))]
3320     unimplemented!("Unsupported target OS");
3321 }
3322 #[inline]
WSDGetConfigurationOption(dwoption: u32, pvoid: *mut ::std::ffi::c_void, cboutbuffer: u32) -> ::windows::runtime::Result<()>3323 pub unsafe fn WSDGetConfigurationOption(dwoption: u32, pvoid: *mut ::std::ffi::c_void, cboutbuffer: u32) -> ::windows::runtime::Result<()> {
3324     #[cfg(windows)]
3325     {
3326         #[link(name = "windows")]
3327         extern "system" {
3328             fn WSDGetConfigurationOption(dwoption: u32, pvoid: *mut ::std::ffi::c_void, cboutbuffer: u32) -> ::windows::runtime::HRESULT;
3329         }
3330         WSDGetConfigurationOption(::std::mem::transmute(dwoption), ::std::mem::transmute(pvoid), ::std::mem::transmute(cboutbuffer)).ok()
3331     }
3332     #[cfg(not(windows))]
3333     unimplemented!("Unsupported target OS");
3334 }
3335 #[inline]
WSDSetConfigurationOption(dwoption: u32, pvoid: *const ::std::ffi::c_void, cbinbuffer: u32) -> ::windows::runtime::Result<()>3336 pub unsafe fn WSDSetConfigurationOption(dwoption: u32, pvoid: *const ::std::ffi::c_void, cbinbuffer: u32) -> ::windows::runtime::Result<()> {
3337     #[cfg(windows)]
3338     {
3339         #[link(name = "windows")]
3340         extern "system" {
3341             fn WSDSetConfigurationOption(dwoption: u32, pvoid: *const ::std::ffi::c_void, cbinbuffer: u32) -> ::windows::runtime::HRESULT;
3342         }
3343         WSDSetConfigurationOption(::std::mem::transmute(dwoption), ::std::mem::transmute(pvoid), ::std::mem::transmute(cbinbuffer)).ok()
3344     }
3345     #[cfg(not(windows))]
3346     unimplemented!("Unsupported target OS");
3347 }
3348 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3349 #[repr(transparent)]
3350 pub struct WSDUdpMessageType(pub i32);
3351 pub const ONE_WAY: WSDUdpMessageType = WSDUdpMessageType(0i32);
3352 pub const TWO_WAY: WSDUdpMessageType = WSDUdpMessageType(1i32);
3353 impl ::std::convert::From<i32> for WSDUdpMessageType {
from(value: i32) -> Self3354     fn from(value: i32) -> Self {
3355         Self(value)
3356     }
3357 }
3358 unsafe impl ::windows::runtime::Abi for WSDUdpMessageType {
3359     type Abi = Self;
3360     type DefaultType = Self;
3361 }
3362 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3363 #[repr(C)]
3364 pub struct WSDUdpRetransmitParams {
3365     pub ulSendDelay: u32,
3366     pub ulRepeat: u32,
3367     pub ulRepeatMinDelay: u32,
3368     pub ulRepeatMaxDelay: u32,
3369     pub ulRepeatUpperDelay: u32,
3370 }
3371 impl WSDUdpRetransmitParams {}
3372 impl ::std::default::Default for WSDUdpRetransmitParams {
default() -> Self3373     fn default() -> Self {
3374         unsafe { ::std::mem::zeroed() }
3375     }
3376 }
3377 impl ::std::fmt::Debug for WSDUdpRetransmitParams {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3378     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3379         fmt.debug_struct("WSDUdpRetransmitParams").field("ulSendDelay", &self.ulSendDelay).field("ulRepeat", &self.ulRepeat).field("ulRepeatMinDelay", &self.ulRepeatMinDelay).field("ulRepeatMaxDelay", &self.ulRepeatMaxDelay).field("ulRepeatUpperDelay", &self.ulRepeatUpperDelay).finish()
3380     }
3381 }
3382 impl ::std::cmp::PartialEq for WSDUdpRetransmitParams {
eq(&self, other: &Self) -> bool3383     fn eq(&self, other: &Self) -> bool {
3384         self.ulSendDelay == other.ulSendDelay && self.ulRepeat == other.ulRepeat && self.ulRepeatMinDelay == other.ulRepeatMinDelay && self.ulRepeatMaxDelay == other.ulRepeatMaxDelay && self.ulRepeatUpperDelay == other.ulRepeatUpperDelay
3385     }
3386 }
3387 impl ::std::cmp::Eq for WSDUdpRetransmitParams {}
3388 unsafe impl ::windows::runtime::Abi for WSDUdpRetransmitParams {
3389     type Abi = Self;
3390     type DefaultType = Self;
3391 }
3392 #[cfg(feature = "Win32_Foundation")]
3393 #[inline]
WSDUriDecode<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(source: Param0, cchsource: u32, destout: *mut super::super::Foundation::PWSTR, cchdestout: *mut u32) -> ::windows::runtime::Result<()>3394 pub unsafe fn WSDUriDecode<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(source: Param0, cchsource: u32, destout: *mut super::super::Foundation::PWSTR, cchdestout: *mut u32) -> ::windows::runtime::Result<()> {
3395     #[cfg(windows)]
3396     {
3397         #[link(name = "windows")]
3398         extern "system" {
3399             fn WSDUriDecode(source: super::super::Foundation::PWSTR, cchsource: u32, destout: *mut super::super::Foundation::PWSTR, cchdestout: *mut u32) -> ::windows::runtime::HRESULT;
3400         }
3401         WSDUriDecode(source.into_param().abi(), ::std::mem::transmute(cchsource), ::std::mem::transmute(destout), ::std::mem::transmute(cchdestout)).ok()
3402     }
3403     #[cfg(not(windows))]
3404     unimplemented!("Unsupported target OS");
3405 }
3406 #[cfg(feature = "Win32_Foundation")]
3407 #[inline]
WSDUriEncode<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(source: Param0, cchsource: u32, destout: *mut super::super::Foundation::PWSTR, cchdestout: *mut u32) -> ::windows::runtime::Result<()>3408 pub unsafe fn WSDUriEncode<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(source: Param0, cchsource: u32, destout: *mut super::super::Foundation::PWSTR, cchdestout: *mut u32) -> ::windows::runtime::Result<()> {
3409     #[cfg(windows)]
3410     {
3411         #[link(name = "windows")]
3412         extern "system" {
3413             fn WSDUriEncode(source: super::super::Foundation::PWSTR, cchsource: u32, destout: *mut super::super::Foundation::PWSTR, cchdestout: *mut u32) -> ::windows::runtime::HRESULT;
3414         }
3415         WSDUriEncode(source.into_param().abi(), ::std::mem::transmute(cchsource), ::std::mem::transmute(destout), ::std::mem::transmute(cchdestout)).ok()
3416     }
3417     #[cfg(not(windows))]
3418     unimplemented!("Unsupported target OS");
3419 }
3420 #[cfg(feature = "Win32_Foundation")]
3421 #[inline]
WSDXMLAddChild(pparent: *mut WSDXML_ELEMENT, pchild: *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>3422 pub unsafe fn WSDXMLAddChild(pparent: *mut WSDXML_ELEMENT, pchild: *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
3423     #[cfg(windows)]
3424     {
3425         #[link(name = "windows")]
3426         extern "system" {
3427             fn WSDXMLAddChild(pparent: *mut WSDXML_ELEMENT, pchild: *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT;
3428         }
3429         WSDXMLAddChild(::std::mem::transmute(pparent), ::std::mem::transmute(pchild)).ok()
3430     }
3431     #[cfg(not(windows))]
3432     unimplemented!("Unsupported target OS");
3433 }
3434 #[cfg(feature = "Win32_Foundation")]
3435 #[inline]
WSDXMLAddSibling(pfirst: *mut WSDXML_ELEMENT, psecond: *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>3436 pub unsafe fn WSDXMLAddSibling(pfirst: *mut WSDXML_ELEMENT, psecond: *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
3437     #[cfg(windows)]
3438     {
3439         #[link(name = "windows")]
3440         extern "system" {
3441             fn WSDXMLAddSibling(pfirst: *mut WSDXML_ELEMENT, psecond: *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT;
3442         }
3443         WSDXMLAddSibling(::std::mem::transmute(pfirst), ::std::mem::transmute(psecond)).ok()
3444     }
3445     #[cfg(not(windows))]
3446     unimplemented!("Unsupported target OS");
3447 }
3448 #[cfg(feature = "Win32_Foundation")]
3449 #[inline]
WSDXMLBuildAnyForSingleElement<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pelementname: *mut WSDXML_NAME, psztext: Param1, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>3450 pub unsafe fn WSDXMLBuildAnyForSingleElement<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pelementname: *mut WSDXML_NAME, psztext: Param1, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
3451     #[cfg(windows)]
3452     {
3453         #[link(name = "windows")]
3454         extern "system" {
3455             fn WSDXMLBuildAnyForSingleElement(pelementname: *mut WSDXML_NAME, psztext: super::super::Foundation::PWSTR, ppany: *mut *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT;
3456         }
3457         WSDXMLBuildAnyForSingleElement(::std::mem::transmute(pelementname), psztext.into_param().abi(), ::std::mem::transmute(ppany)).ok()
3458     }
3459     #[cfg(not(windows))]
3460     unimplemented!("Unsupported target OS");
3461 }
3462 #[cfg(feature = "Win32_Foundation")]
3463 #[inline]
WSDXMLCleanupElement(pany: *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()>3464 pub unsafe fn WSDXMLCleanupElement(pany: *mut WSDXML_ELEMENT) -> ::windows::runtime::Result<()> {
3465     #[cfg(windows)]
3466     {
3467         #[link(name = "windows")]
3468         extern "system" {
3469             fn WSDXMLCleanupElement(pany: *mut WSDXML_ELEMENT) -> ::windows::runtime::HRESULT;
3470         }
3471         WSDXMLCleanupElement(::std::mem::transmute(pany)).ok()
3472     }
3473     #[cfg(not(windows))]
3474     unimplemented!("Unsupported target OS");
3475 }
3476 #[inline]
WSDXMLCreateContext() -> ::windows::runtime::Result<IWSDXMLContext>3477 pub unsafe fn WSDXMLCreateContext() -> ::windows::runtime::Result<IWSDXMLContext> {
3478     #[cfg(windows)]
3479     {
3480         #[link(name = "windows")]
3481         extern "system" {
3482             fn WSDXMLCreateContext(ppcontext: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3483         }
3484         let mut result__: <IWSDXMLContext as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3485         WSDXMLCreateContext(&mut result__).from_abi::<IWSDXMLContext>(result__)
3486     }
3487     #[cfg(not(windows))]
3488     unimplemented!("Unsupported target OS");
3489 }
3490 #[cfg(feature = "Win32_Foundation")]
3491 #[inline]
WSDXMLGetNameFromBuiltinNamespace<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psznamespace: Param0, pszname: Param1) -> ::windows::runtime::Result<*mut WSDXML_NAME>3492 pub unsafe fn WSDXMLGetNameFromBuiltinNamespace<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psznamespace: Param0, pszname: Param1) -> ::windows::runtime::Result<*mut WSDXML_NAME> {
3493     #[cfg(windows)]
3494     {
3495         #[link(name = "windows")]
3496         extern "system" {
3497             fn WSDXMLGetNameFromBuiltinNamespace(psznamespace: super::super::Foundation::PWSTR, pszname: super::super::Foundation::PWSTR, ppname: *mut *mut WSDXML_NAME) -> ::windows::runtime::HRESULT;
3498         }
3499         let mut result__: <*mut WSDXML_NAME as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3500         WSDXMLGetNameFromBuiltinNamespace(psznamespace.into_param().abi(), pszname.into_param().abi(), &mut result__).from_abi::<*mut WSDXML_NAME>(result__)
3501     }
3502     #[cfg(not(windows))]
3503     unimplemented!("Unsupported target OS");
3504 }
3505 #[cfg(feature = "Win32_Foundation")]
3506 #[inline]
WSDXMLGetValueFromAny<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psznamespace: Param0, pszname: Param1, pany: *mut WSDXML_ELEMENT, ppszvalue: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()>3507 pub unsafe fn WSDXMLGetValueFromAny<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psznamespace: Param0, pszname: Param1, pany: *mut WSDXML_ELEMENT, ppszvalue: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
3508     #[cfg(windows)]
3509     {
3510         #[link(name = "windows")]
3511         extern "system" {
3512             fn WSDXMLGetValueFromAny(psznamespace: super::super::Foundation::PWSTR, pszname: super::super::Foundation::PWSTR, pany: *mut WSDXML_ELEMENT, ppszvalue: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
3513         }
3514         WSDXMLGetValueFromAny(psznamespace.into_param().abi(), pszname.into_param().abi(), ::std::mem::transmute(pany), ::std::mem::transmute(ppszvalue)).ok()
3515     }
3516     #[cfg(not(windows))]
3517     unimplemented!("Unsupported target OS");
3518 }
3519 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3520 #[repr(C)]
3521 #[cfg(feature = "Win32_Foundation")]
3522 pub struct WSDXML_ATTRIBUTE {
3523     pub Element: *mut WSDXML_ELEMENT,
3524     pub Next: *mut WSDXML_ATTRIBUTE,
3525     pub Name: *mut WSDXML_NAME,
3526     pub Value: super::super::Foundation::PWSTR,
3527 }
3528 #[cfg(feature = "Win32_Foundation")]
3529 impl WSDXML_ATTRIBUTE {}
3530 #[cfg(feature = "Win32_Foundation")]
3531 impl ::std::default::Default for WSDXML_ATTRIBUTE {
default() -> Self3532     fn default() -> Self {
3533         unsafe { ::std::mem::zeroed() }
3534     }
3535 }
3536 #[cfg(feature = "Win32_Foundation")]
3537 impl ::std::fmt::Debug for WSDXML_ATTRIBUTE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3538     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3539         fmt.debug_struct("WSDXML_ATTRIBUTE").field("Element", &self.Element).field("Next", &self.Next).field("Name", &self.Name).field("Value", &self.Value).finish()
3540     }
3541 }
3542 #[cfg(feature = "Win32_Foundation")]
3543 impl ::std::cmp::PartialEq for WSDXML_ATTRIBUTE {
eq(&self, other: &Self) -> bool3544     fn eq(&self, other: &Self) -> bool {
3545         self.Element == other.Element && self.Next == other.Next && self.Name == other.Name && self.Value == other.Value
3546     }
3547 }
3548 #[cfg(feature = "Win32_Foundation")]
3549 impl ::std::cmp::Eq for WSDXML_ATTRIBUTE {}
3550 #[cfg(feature = "Win32_Foundation")]
3551 unsafe impl ::windows::runtime::Abi for WSDXML_ATTRIBUTE {
3552     type Abi = Self;
3553     type DefaultType = Self;
3554 }
3555 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3556 #[repr(C)]
3557 #[cfg(feature = "Win32_Foundation")]
3558 pub struct WSDXML_ELEMENT {
3559     pub Node: WSDXML_NODE,
3560     pub Name: *mut WSDXML_NAME,
3561     pub FirstAttribute: *mut WSDXML_ATTRIBUTE,
3562     pub FirstChild: *mut WSDXML_NODE,
3563     pub PrefixMappings: *mut WSDXML_PREFIX_MAPPING,
3564 }
3565 #[cfg(feature = "Win32_Foundation")]
3566 impl WSDXML_ELEMENT {}
3567 #[cfg(feature = "Win32_Foundation")]
3568 impl ::std::default::Default for WSDXML_ELEMENT {
default() -> Self3569     fn default() -> Self {
3570         unsafe { ::std::mem::zeroed() }
3571     }
3572 }
3573 #[cfg(feature = "Win32_Foundation")]
3574 impl ::std::fmt::Debug for WSDXML_ELEMENT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3575     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3576         fmt.debug_struct("WSDXML_ELEMENT").field("Node", &self.Node).field("Name", &self.Name).field("FirstAttribute", &self.FirstAttribute).field("FirstChild", &self.FirstChild).field("PrefixMappings", &self.PrefixMappings).finish()
3577     }
3578 }
3579 #[cfg(feature = "Win32_Foundation")]
3580 impl ::std::cmp::PartialEq for WSDXML_ELEMENT {
eq(&self, other: &Self) -> bool3581     fn eq(&self, other: &Self) -> bool {
3582         self.Node == other.Node && self.Name == other.Name && self.FirstAttribute == other.FirstAttribute && self.FirstChild == other.FirstChild && self.PrefixMappings == other.PrefixMappings
3583     }
3584 }
3585 #[cfg(feature = "Win32_Foundation")]
3586 impl ::std::cmp::Eq for WSDXML_ELEMENT {}
3587 #[cfg(feature = "Win32_Foundation")]
3588 unsafe impl ::windows::runtime::Abi for WSDXML_ELEMENT {
3589     type Abi = Self;
3590     type DefaultType = Self;
3591 }
3592 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3593 #[repr(C)]
3594 #[cfg(feature = "Win32_Foundation")]
3595 pub struct WSDXML_ELEMENT_LIST {
3596     pub Next: *mut WSDXML_ELEMENT_LIST,
3597     pub Element: *mut WSDXML_ELEMENT,
3598 }
3599 #[cfg(feature = "Win32_Foundation")]
3600 impl WSDXML_ELEMENT_LIST {}
3601 #[cfg(feature = "Win32_Foundation")]
3602 impl ::std::default::Default for WSDXML_ELEMENT_LIST {
default() -> Self3603     fn default() -> Self {
3604         unsafe { ::std::mem::zeroed() }
3605     }
3606 }
3607 #[cfg(feature = "Win32_Foundation")]
3608 impl ::std::fmt::Debug for WSDXML_ELEMENT_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3609     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3610         fmt.debug_struct("WSDXML_ELEMENT_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
3611     }
3612 }
3613 #[cfg(feature = "Win32_Foundation")]
3614 impl ::std::cmp::PartialEq for WSDXML_ELEMENT_LIST {
eq(&self, other: &Self) -> bool3615     fn eq(&self, other: &Self) -> bool {
3616         self.Next == other.Next && self.Element == other.Element
3617     }
3618 }
3619 #[cfg(feature = "Win32_Foundation")]
3620 impl ::std::cmp::Eq for WSDXML_ELEMENT_LIST {}
3621 #[cfg(feature = "Win32_Foundation")]
3622 unsafe impl ::windows::runtime::Abi for WSDXML_ELEMENT_LIST {
3623     type Abi = Self;
3624     type DefaultType = Self;
3625 }
3626 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3627 #[repr(C)]
3628 #[cfg(feature = "Win32_Foundation")]
3629 pub struct WSDXML_NAME {
3630     pub Space: *mut WSDXML_NAMESPACE,
3631     pub LocalName: super::super::Foundation::PWSTR,
3632 }
3633 #[cfg(feature = "Win32_Foundation")]
3634 impl WSDXML_NAME {}
3635 #[cfg(feature = "Win32_Foundation")]
3636 impl ::std::default::Default for WSDXML_NAME {
default() -> Self3637     fn default() -> Self {
3638         unsafe { ::std::mem::zeroed() }
3639     }
3640 }
3641 #[cfg(feature = "Win32_Foundation")]
3642 impl ::std::fmt::Debug for WSDXML_NAME {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3643     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3644         fmt.debug_struct("WSDXML_NAME").field("Space", &self.Space).field("LocalName", &self.LocalName).finish()
3645     }
3646 }
3647 #[cfg(feature = "Win32_Foundation")]
3648 impl ::std::cmp::PartialEq for WSDXML_NAME {
eq(&self, other: &Self) -> bool3649     fn eq(&self, other: &Self) -> bool {
3650         self.Space == other.Space && self.LocalName == other.LocalName
3651     }
3652 }
3653 #[cfg(feature = "Win32_Foundation")]
3654 impl ::std::cmp::Eq for WSDXML_NAME {}
3655 #[cfg(feature = "Win32_Foundation")]
3656 unsafe impl ::windows::runtime::Abi for WSDXML_NAME {
3657     type Abi = Self;
3658     type DefaultType = Self;
3659 }
3660 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3661 #[repr(C)]
3662 #[cfg(feature = "Win32_Foundation")]
3663 pub struct WSDXML_NAMESPACE {
3664     pub Uri: super::super::Foundation::PWSTR,
3665     pub PreferredPrefix: super::super::Foundation::PWSTR,
3666     pub Names: *mut WSDXML_NAME,
3667     pub NamesCount: u16,
3668     pub Encoding: u16,
3669 }
3670 #[cfg(feature = "Win32_Foundation")]
3671 impl WSDXML_NAMESPACE {}
3672 #[cfg(feature = "Win32_Foundation")]
3673 impl ::std::default::Default for WSDXML_NAMESPACE {
default() -> Self3674     fn default() -> Self {
3675         unsafe { ::std::mem::zeroed() }
3676     }
3677 }
3678 #[cfg(feature = "Win32_Foundation")]
3679 impl ::std::fmt::Debug for WSDXML_NAMESPACE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3680     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3681         fmt.debug_struct("WSDXML_NAMESPACE").field("Uri", &self.Uri).field("PreferredPrefix", &self.PreferredPrefix).field("Names", &self.Names).field("NamesCount", &self.NamesCount).field("Encoding", &self.Encoding).finish()
3682     }
3683 }
3684 #[cfg(feature = "Win32_Foundation")]
3685 impl ::std::cmp::PartialEq for WSDXML_NAMESPACE {
eq(&self, other: &Self) -> bool3686     fn eq(&self, other: &Self) -> bool {
3687         self.Uri == other.Uri && self.PreferredPrefix == other.PreferredPrefix && self.Names == other.Names && self.NamesCount == other.NamesCount && self.Encoding == other.Encoding
3688     }
3689 }
3690 #[cfg(feature = "Win32_Foundation")]
3691 impl ::std::cmp::Eq for WSDXML_NAMESPACE {}
3692 #[cfg(feature = "Win32_Foundation")]
3693 unsafe impl ::windows::runtime::Abi for WSDXML_NAMESPACE {
3694     type Abi = Self;
3695     type DefaultType = Self;
3696 }
3697 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3698 #[repr(C)]
3699 #[cfg(feature = "Win32_Foundation")]
3700 pub struct WSDXML_NODE {
3701     pub Type: i32,
3702     pub Parent: *mut WSDXML_ELEMENT,
3703     pub Next: *mut WSDXML_NODE,
3704 }
3705 #[cfg(feature = "Win32_Foundation")]
3706 impl WSDXML_NODE {
3707     pub const ElementType: i32 = 0i32;
3708     pub const TextType: i32 = 1i32;
3709 }
3710 #[cfg(feature = "Win32_Foundation")]
3711 impl ::std::default::Default for WSDXML_NODE {
default() -> Self3712     fn default() -> Self {
3713         unsafe { ::std::mem::zeroed() }
3714     }
3715 }
3716 #[cfg(feature = "Win32_Foundation")]
3717 impl ::std::fmt::Debug for WSDXML_NODE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3718     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3719         fmt.debug_struct("WSDXML_NODE").field("Type", &self.Type).field("Parent", &self.Parent).field("Next", &self.Next).finish()
3720     }
3721 }
3722 #[cfg(feature = "Win32_Foundation")]
3723 impl ::std::cmp::PartialEq for WSDXML_NODE {
eq(&self, other: &Self) -> bool3724     fn eq(&self, other: &Self) -> bool {
3725         self.Type == other.Type && self.Parent == other.Parent && self.Next == other.Next
3726     }
3727 }
3728 #[cfg(feature = "Win32_Foundation")]
3729 impl ::std::cmp::Eq for WSDXML_NODE {}
3730 #[cfg(feature = "Win32_Foundation")]
3731 unsafe impl ::windows::runtime::Abi for WSDXML_NODE {
3732     type Abi = Self;
3733     type DefaultType = Self;
3734 }
3735 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3736 #[repr(transparent)]
3737 pub struct WSDXML_OP(pub i32);
3738 pub const OpNone: WSDXML_OP = WSDXML_OP(0i32);
3739 pub const OpEndOfTable: WSDXML_OP = WSDXML_OP(1i32);
3740 pub const OpBeginElement_: WSDXML_OP = WSDXML_OP(2i32);
3741 pub const OpBeginAnyElement: WSDXML_OP = WSDXML_OP(3i32);
3742 pub const OpEndElement: WSDXML_OP = WSDXML_OP(4i32);
3743 pub const OpElement_: WSDXML_OP = WSDXML_OP(5i32);
3744 pub const OpAnyElement: WSDXML_OP = WSDXML_OP(6i32);
3745 pub const OpAnyElements: WSDXML_OP = WSDXML_OP(7i32);
3746 pub const OpAnyText: WSDXML_OP = WSDXML_OP(8i32);
3747 pub const OpAttribute_: WSDXML_OP = WSDXML_OP(9i32);
3748 pub const OpBeginChoice: WSDXML_OP = WSDXML_OP(10i32);
3749 pub const OpEndChoice: WSDXML_OP = WSDXML_OP(11i32);
3750 pub const OpBeginSequence: WSDXML_OP = WSDXML_OP(12i32);
3751 pub const OpEndSequence: WSDXML_OP = WSDXML_OP(13i32);
3752 pub const OpBeginAll: WSDXML_OP = WSDXML_OP(14i32);
3753 pub const OpEndAll: WSDXML_OP = WSDXML_OP(15i32);
3754 pub const OpAnything: WSDXML_OP = WSDXML_OP(16i32);
3755 pub const OpAnyNumber: WSDXML_OP = WSDXML_OP(17i32);
3756 pub const OpOneOrMore: WSDXML_OP = WSDXML_OP(18i32);
3757 pub const OpOptional: WSDXML_OP = WSDXML_OP(19i32);
3758 pub const OpFormatBool_: WSDXML_OP = WSDXML_OP(20i32);
3759 pub const OpFormatInt8_: WSDXML_OP = WSDXML_OP(21i32);
3760 pub const OpFormatInt16_: WSDXML_OP = WSDXML_OP(22i32);
3761 pub const OpFormatInt32_: WSDXML_OP = WSDXML_OP(23i32);
3762 pub const OpFormatInt64_: WSDXML_OP = WSDXML_OP(24i32);
3763 pub const OpFormatUInt8_: WSDXML_OP = WSDXML_OP(25i32);
3764 pub const OpFormatUInt16_: WSDXML_OP = WSDXML_OP(26i32);
3765 pub const OpFormatUInt32_: WSDXML_OP = WSDXML_OP(27i32);
3766 pub const OpFormatUInt64_: WSDXML_OP = WSDXML_OP(28i32);
3767 pub const OpFormatUnicodeString_: WSDXML_OP = WSDXML_OP(29i32);
3768 pub const OpFormatDom_: WSDXML_OP = WSDXML_OP(30i32);
3769 pub const OpFormatStruct_: WSDXML_OP = WSDXML_OP(31i32);
3770 pub const OpFormatUri_: WSDXML_OP = WSDXML_OP(32i32);
3771 pub const OpFormatUuidUri_: WSDXML_OP = WSDXML_OP(33i32);
3772 pub const OpFormatName_: WSDXML_OP = WSDXML_OP(34i32);
3773 pub const OpFormatListInsertTail_: WSDXML_OP = WSDXML_OP(35i32);
3774 pub const OpFormatType_: WSDXML_OP = WSDXML_OP(36i32);
3775 pub const OpFormatDynamicType_: WSDXML_OP = WSDXML_OP(37i32);
3776 pub const OpFormatLookupType_: WSDXML_OP = WSDXML_OP(38i32);
3777 pub const OpFormatDuration_: WSDXML_OP = WSDXML_OP(39i32);
3778 pub const OpFormatDateTime_: WSDXML_OP = WSDXML_OP(40i32);
3779 pub const OpFormatFloat_: WSDXML_OP = WSDXML_OP(41i32);
3780 pub const OpFormatDouble_: WSDXML_OP = WSDXML_OP(42i32);
3781 pub const OpProcess_: WSDXML_OP = WSDXML_OP(43i32);
3782 pub const OpQualifiedAttribute_: WSDXML_OP = WSDXML_OP(44i32);
3783 pub const OpFormatXMLDeclaration_: WSDXML_OP = WSDXML_OP(45i32);
3784 pub const OpFormatMax: WSDXML_OP = WSDXML_OP(46i32);
3785 impl ::std::convert::From<i32> for WSDXML_OP {
from(value: i32) -> Self3786     fn from(value: i32) -> Self {
3787         Self(value)
3788     }
3789 }
3790 unsafe impl ::windows::runtime::Abi for WSDXML_OP {
3791     type Abi = Self;
3792     type DefaultType = Self;
3793 }
3794 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3795 #[repr(C)]
3796 #[cfg(feature = "Win32_Foundation")]
3797 pub struct WSDXML_PREFIX_MAPPING {
3798     pub Refs: u32,
3799     pub Next: *mut WSDXML_PREFIX_MAPPING,
3800     pub Space: *mut WSDXML_NAMESPACE,
3801     pub Prefix: super::super::Foundation::PWSTR,
3802 }
3803 #[cfg(feature = "Win32_Foundation")]
3804 impl WSDXML_PREFIX_MAPPING {}
3805 #[cfg(feature = "Win32_Foundation")]
3806 impl ::std::default::Default for WSDXML_PREFIX_MAPPING {
default() -> Self3807     fn default() -> Self {
3808         unsafe { ::std::mem::zeroed() }
3809     }
3810 }
3811 #[cfg(feature = "Win32_Foundation")]
3812 impl ::std::fmt::Debug for WSDXML_PREFIX_MAPPING {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3813     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3814         fmt.debug_struct("WSDXML_PREFIX_MAPPING").field("Refs", &self.Refs).field("Next", &self.Next).field("Space", &self.Space).field("Prefix", &self.Prefix).finish()
3815     }
3816 }
3817 #[cfg(feature = "Win32_Foundation")]
3818 impl ::std::cmp::PartialEq for WSDXML_PREFIX_MAPPING {
eq(&self, other: &Self) -> bool3819     fn eq(&self, other: &Self) -> bool {
3820         self.Refs == other.Refs && self.Next == other.Next && self.Space == other.Space && self.Prefix == other.Prefix
3821     }
3822 }
3823 #[cfg(feature = "Win32_Foundation")]
3824 impl ::std::cmp::Eq for WSDXML_PREFIX_MAPPING {}
3825 #[cfg(feature = "Win32_Foundation")]
3826 unsafe impl ::windows::runtime::Abi for WSDXML_PREFIX_MAPPING {
3827     type Abi = Self;
3828     type DefaultType = Self;
3829 }
3830 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3831 #[repr(C)]
3832 #[cfg(feature = "Win32_Foundation")]
3833 pub struct WSDXML_TEXT {
3834     pub Node: WSDXML_NODE,
3835     pub Text: super::super::Foundation::PWSTR,
3836 }
3837 #[cfg(feature = "Win32_Foundation")]
3838 impl WSDXML_TEXT {}
3839 #[cfg(feature = "Win32_Foundation")]
3840 impl ::std::default::Default for WSDXML_TEXT {
default() -> Self3841     fn default() -> Self {
3842         unsafe { ::std::mem::zeroed() }
3843     }
3844 }
3845 #[cfg(feature = "Win32_Foundation")]
3846 impl ::std::fmt::Debug for WSDXML_TEXT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3847     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3848         fmt.debug_struct("WSDXML_TEXT").field("Node", &self.Node).field("Text", &self.Text).finish()
3849     }
3850 }
3851 #[cfg(feature = "Win32_Foundation")]
3852 impl ::std::cmp::PartialEq for WSDXML_TEXT {
eq(&self, other: &Self) -> bool3853     fn eq(&self, other: &Self) -> bool {
3854         self.Node == other.Node && self.Text == other.Text
3855     }
3856 }
3857 #[cfg(feature = "Win32_Foundation")]
3858 impl ::std::cmp::Eq for WSDXML_TEXT {}
3859 #[cfg(feature = "Win32_Foundation")]
3860 unsafe impl ::windows::runtime::Abi for WSDXML_TEXT {
3861     type Abi = Self;
3862     type DefaultType = Self;
3863 }
3864 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3865 #[repr(C)]
3866 #[cfg(feature = "Win32_Foundation")]
3867 pub struct WSDXML_TYPE {
3868     pub Uri: super::super::Foundation::PWSTR,
3869     pub Table: *mut u8,
3870 }
3871 #[cfg(feature = "Win32_Foundation")]
3872 impl WSDXML_TYPE {}
3873 #[cfg(feature = "Win32_Foundation")]
3874 impl ::std::default::Default for WSDXML_TYPE {
default() -> Self3875     fn default() -> Self {
3876         unsafe { ::std::mem::zeroed() }
3877     }
3878 }
3879 #[cfg(feature = "Win32_Foundation")]
3880 impl ::std::fmt::Debug for WSDXML_TYPE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3881     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3882         fmt.debug_struct("WSDXML_TYPE").field("Uri", &self.Uri).field("Table", &self.Table).finish()
3883     }
3884 }
3885 #[cfg(feature = "Win32_Foundation")]
3886 impl ::std::cmp::PartialEq for WSDXML_TYPE {
eq(&self, other: &Self) -> bool3887     fn eq(&self, other: &Self) -> bool {
3888         self.Uri == other.Uri && self.Table == other.Table
3889     }
3890 }
3891 #[cfg(feature = "Win32_Foundation")]
3892 impl ::std::cmp::Eq for WSDXML_TYPE {}
3893 #[cfg(feature = "Win32_Foundation")]
3894 unsafe impl ::windows::runtime::Abi for WSDXML_TYPE {
3895     type Abi = Self;
3896     type DefaultType = Self;
3897 }
3898 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3899 #[repr(C)]
3900 #[cfg(feature = "Win32_Foundation")]
3901 pub struct WSD_APP_SEQUENCE {
3902     pub InstanceId: u64,
3903     pub SequenceId: super::super::Foundation::PWSTR,
3904     pub MessageNumber: u64,
3905 }
3906 #[cfg(feature = "Win32_Foundation")]
3907 impl WSD_APP_SEQUENCE {}
3908 #[cfg(feature = "Win32_Foundation")]
3909 impl ::std::default::Default for WSD_APP_SEQUENCE {
default() -> Self3910     fn default() -> Self {
3911         unsafe { ::std::mem::zeroed() }
3912     }
3913 }
3914 #[cfg(feature = "Win32_Foundation")]
3915 impl ::std::fmt::Debug for WSD_APP_SEQUENCE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3916     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3917         fmt.debug_struct("WSD_APP_SEQUENCE").field("InstanceId", &self.InstanceId).field("SequenceId", &self.SequenceId).field("MessageNumber", &self.MessageNumber).finish()
3918     }
3919 }
3920 #[cfg(feature = "Win32_Foundation")]
3921 impl ::std::cmp::PartialEq for WSD_APP_SEQUENCE {
eq(&self, other: &Self) -> bool3922     fn eq(&self, other: &Self) -> bool {
3923         self.InstanceId == other.InstanceId && self.SequenceId == other.SequenceId && self.MessageNumber == other.MessageNumber
3924     }
3925 }
3926 #[cfg(feature = "Win32_Foundation")]
3927 impl ::std::cmp::Eq for WSD_APP_SEQUENCE {}
3928 #[cfg(feature = "Win32_Foundation")]
3929 unsafe impl ::windows::runtime::Abi for WSD_APP_SEQUENCE {
3930     type Abi = Self;
3931     type DefaultType = Self;
3932 }
3933 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3934 #[repr(C)]
3935 #[cfg(feature = "Win32_Foundation")]
3936 pub struct WSD_BYE {
3937     pub EndpointReference: *mut WSD_ENDPOINT_REFERENCE,
3938     pub Any: *mut WSDXML_ELEMENT,
3939 }
3940 #[cfg(feature = "Win32_Foundation")]
3941 impl WSD_BYE {}
3942 #[cfg(feature = "Win32_Foundation")]
3943 impl ::std::default::Default for WSD_BYE {
default() -> Self3944     fn default() -> Self {
3945         unsafe { ::std::mem::zeroed() }
3946     }
3947 }
3948 #[cfg(feature = "Win32_Foundation")]
3949 impl ::std::fmt::Debug for WSD_BYE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3950     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3951         fmt.debug_struct("WSD_BYE").field("EndpointReference", &self.EndpointReference).field("Any", &self.Any).finish()
3952     }
3953 }
3954 #[cfg(feature = "Win32_Foundation")]
3955 impl ::std::cmp::PartialEq for WSD_BYE {
eq(&self, other: &Self) -> bool3956     fn eq(&self, other: &Self) -> bool {
3957         self.EndpointReference == other.EndpointReference && self.Any == other.Any
3958     }
3959 }
3960 #[cfg(feature = "Win32_Foundation")]
3961 impl ::std::cmp::Eq for WSD_BYE {}
3962 #[cfg(feature = "Win32_Foundation")]
3963 unsafe impl ::windows::runtime::Abi for WSD_BYE {
3964     type Abi = Self;
3965     type DefaultType = Self;
3966 }
3967 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3968 #[repr(C)]
3969 pub struct WSD_CONFIG_ADDRESSES {
3970     pub addresses: *mut ::std::option::Option<IWSDAddress>,
3971     pub dwAddressCount: u32,
3972 }
3973 impl WSD_CONFIG_ADDRESSES {}
3974 impl ::std::default::Default for WSD_CONFIG_ADDRESSES {
default() -> Self3975     fn default() -> Self {
3976         unsafe { ::std::mem::zeroed() }
3977     }
3978 }
3979 impl ::std::fmt::Debug for WSD_CONFIG_ADDRESSES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3980     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3981         fmt.debug_struct("WSD_CONFIG_ADDRESSES").field("addresses", &self.addresses).field("dwAddressCount", &self.dwAddressCount).finish()
3982     }
3983 }
3984 impl ::std::cmp::PartialEq for WSD_CONFIG_ADDRESSES {
eq(&self, other: &Self) -> bool3985     fn eq(&self, other: &Self) -> bool {
3986         self.addresses == other.addresses && self.dwAddressCount == other.dwAddressCount
3987     }
3988 }
3989 impl ::std::cmp::Eq for WSD_CONFIG_ADDRESSES {}
3990 unsafe impl ::windows::runtime::Abi for WSD_CONFIG_ADDRESSES {
3991     type Abi = Self;
3992     type DefaultType = Self;
3993 }
3994 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3995 #[repr(C)]
3996 pub struct WSD_CONFIG_PARAM {
3997     pub configParamType: WSD_CONFIG_PARAM_TYPE,
3998     pub pConfigData: *mut ::std::ffi::c_void,
3999     pub dwConfigDataSize: u32,
4000 }
4001 impl WSD_CONFIG_PARAM {}
4002 impl ::std::default::Default for WSD_CONFIG_PARAM {
default() -> Self4003     fn default() -> Self {
4004         unsafe { ::std::mem::zeroed() }
4005     }
4006 }
4007 impl ::std::fmt::Debug for WSD_CONFIG_PARAM {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4008     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4009         fmt.debug_struct("WSD_CONFIG_PARAM").field("configParamType", &self.configParamType).field("pConfigData", &self.pConfigData).field("dwConfigDataSize", &self.dwConfigDataSize).finish()
4010     }
4011 }
4012 impl ::std::cmp::PartialEq for WSD_CONFIG_PARAM {
eq(&self, other: &Self) -> bool4013     fn eq(&self, other: &Self) -> bool {
4014         self.configParamType == other.configParamType && self.pConfigData == other.pConfigData && self.dwConfigDataSize == other.dwConfigDataSize
4015     }
4016 }
4017 impl ::std::cmp::Eq for WSD_CONFIG_PARAM {}
4018 unsafe impl ::windows::runtime::Abi for WSD_CONFIG_PARAM {
4019     type Abi = Self;
4020     type DefaultType = Self;
4021 }
4022 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4023 #[repr(transparent)]
4024 pub struct WSD_CONFIG_PARAM_TYPE(pub i32);
4025 pub const WSD_CONFIG_MAX_INBOUND_MESSAGE_SIZE: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(1i32);
4026 pub const WSD_CONFIG_MAX_OUTBOUND_MESSAGE_SIZE: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(2i32);
4027 pub const WSD_SECURITY_SSL_CERT_FOR_CLIENT_AUTH: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(3i32);
4028 pub const WSD_SECURITY_SSL_SERVER_CERT_VALIDATION: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(4i32);
4029 pub const WSD_SECURITY_SSL_CLIENT_CERT_VALIDATION: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(5i32);
4030 pub const WSD_SECURITY_SSL_NEGOTIATE_CLIENT_CERT: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(6i32);
4031 pub const WSD_SECURITY_COMPACTSIG_SIGNING_CERT: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(7i32);
4032 pub const WSD_SECURITY_COMPACTSIG_VALIDATION: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(8i32);
4033 pub const WSD_CONFIG_HOSTING_ADDRESSES: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(9i32);
4034 pub const WSD_CONFIG_DEVICE_ADDRESSES: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(10i32);
4035 pub const WSD_SECURITY_REQUIRE_HTTP_CLIENT_AUTH: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(11i32);
4036 pub const WSD_SECURITY_REQUIRE_CLIENT_CERT_OR_HTTP_CLIENT_AUTH: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(12i32);
4037 pub const WSD_SECURITY_USE_HTTP_CLIENT_AUTH: WSD_CONFIG_PARAM_TYPE = WSD_CONFIG_PARAM_TYPE(13i32);
4038 impl ::std::convert::From<i32> for WSD_CONFIG_PARAM_TYPE {
from(value: i32) -> Self4039     fn from(value: i32) -> Self {
4040         Self(value)
4041     }
4042 }
4043 unsafe impl ::windows::runtime::Abi for WSD_CONFIG_PARAM_TYPE {
4044     type Abi = Self;
4045     type DefaultType = Self;
4046 }
4047 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4048 #[repr(C)]
4049 #[cfg(feature = "Win32_Foundation")]
4050 pub struct WSD_DATETIME {
4051     pub isPositive: super::super::Foundation::BOOL,
4052     pub year: u32,
4053     pub month: u8,
4054     pub day: u8,
4055     pub hour: u8,
4056     pub minute: u8,
4057     pub second: u8,
4058     pub millisecond: u32,
4059     pub TZIsLocal: super::super::Foundation::BOOL,
4060     pub TZIsPositive: super::super::Foundation::BOOL,
4061     pub TZHour: u8,
4062     pub TZMinute: u8,
4063 }
4064 #[cfg(feature = "Win32_Foundation")]
4065 impl WSD_DATETIME {}
4066 #[cfg(feature = "Win32_Foundation")]
4067 impl ::std::default::Default for WSD_DATETIME {
default() -> Self4068     fn default() -> Self {
4069         unsafe { ::std::mem::zeroed() }
4070     }
4071 }
4072 #[cfg(feature = "Win32_Foundation")]
4073 impl ::std::fmt::Debug for WSD_DATETIME {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4074     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4075         fmt.debug_struct("WSD_DATETIME")
4076             .field("isPositive", &self.isPositive)
4077             .field("year", &self.year)
4078             .field("month", &self.month)
4079             .field("day", &self.day)
4080             .field("hour", &self.hour)
4081             .field("minute", &self.minute)
4082             .field("second", &self.second)
4083             .field("millisecond", &self.millisecond)
4084             .field("TZIsLocal", &self.TZIsLocal)
4085             .field("TZIsPositive", &self.TZIsPositive)
4086             .field("TZHour", &self.TZHour)
4087             .field("TZMinute", &self.TZMinute)
4088             .finish()
4089     }
4090 }
4091 #[cfg(feature = "Win32_Foundation")]
4092 impl ::std::cmp::PartialEq for WSD_DATETIME {
eq(&self, other: &Self) -> bool4093     fn eq(&self, other: &Self) -> bool {
4094         self.isPositive == other.isPositive && self.year == other.year && self.month == other.month && self.day == other.day && self.hour == other.hour && self.minute == other.minute && self.second == other.second && self.millisecond == other.millisecond && self.TZIsLocal == other.TZIsLocal && self.TZIsPositive == other.TZIsPositive && self.TZHour == other.TZHour && self.TZMinute == other.TZMinute
4095     }
4096 }
4097 #[cfg(feature = "Win32_Foundation")]
4098 impl ::std::cmp::Eq for WSD_DATETIME {}
4099 #[cfg(feature = "Win32_Foundation")]
4100 unsafe impl ::windows::runtime::Abi for WSD_DATETIME {
4101     type Abi = Self;
4102     type DefaultType = Self;
4103 }
4104 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4105 #[repr(C)]
4106 #[cfg(feature = "Win32_Foundation")]
4107 pub struct WSD_DURATION {
4108     pub isPositive: super::super::Foundation::BOOL,
4109     pub year: u32,
4110     pub month: u32,
4111     pub day: u32,
4112     pub hour: u32,
4113     pub minute: u32,
4114     pub second: u32,
4115     pub millisecond: u32,
4116 }
4117 #[cfg(feature = "Win32_Foundation")]
4118 impl WSD_DURATION {}
4119 #[cfg(feature = "Win32_Foundation")]
4120 impl ::std::default::Default for WSD_DURATION {
default() -> Self4121     fn default() -> Self {
4122         unsafe { ::std::mem::zeroed() }
4123     }
4124 }
4125 #[cfg(feature = "Win32_Foundation")]
4126 impl ::std::fmt::Debug for WSD_DURATION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4127     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4128         fmt.debug_struct("WSD_DURATION").field("isPositive", &self.isPositive).field("year", &self.year).field("month", &self.month).field("day", &self.day).field("hour", &self.hour).field("minute", &self.minute).field("second", &self.second).field("millisecond", &self.millisecond).finish()
4129     }
4130 }
4131 #[cfg(feature = "Win32_Foundation")]
4132 impl ::std::cmp::PartialEq for WSD_DURATION {
eq(&self, other: &Self) -> bool4133     fn eq(&self, other: &Self) -> bool {
4134         self.isPositive == other.isPositive && self.year == other.year && self.month == other.month && self.day == other.day && self.hour == other.hour && self.minute == other.minute && self.second == other.second && self.millisecond == other.millisecond
4135     }
4136 }
4137 #[cfg(feature = "Win32_Foundation")]
4138 impl ::std::cmp::Eq for WSD_DURATION {}
4139 #[cfg(feature = "Win32_Foundation")]
4140 unsafe impl ::windows::runtime::Abi for WSD_DURATION {
4141     type Abi = Self;
4142     type DefaultType = Self;
4143 }
4144 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4145 #[repr(C)]
4146 #[cfg(feature = "Win32_Foundation")]
4147 pub struct WSD_ENDPOINT_REFERENCE {
4148     pub Address: super::super::Foundation::PWSTR,
4149     pub ReferenceProperties: WSD_REFERENCE_PROPERTIES,
4150     pub ReferenceParameters: WSD_REFERENCE_PARAMETERS,
4151     pub PortType: *mut WSDXML_NAME,
4152     pub ServiceName: *mut WSDXML_NAME,
4153     pub Any: *mut WSDXML_ELEMENT,
4154 }
4155 #[cfg(feature = "Win32_Foundation")]
4156 impl WSD_ENDPOINT_REFERENCE {}
4157 #[cfg(feature = "Win32_Foundation")]
4158 impl ::std::default::Default for WSD_ENDPOINT_REFERENCE {
default() -> Self4159     fn default() -> Self {
4160         unsafe { ::std::mem::zeroed() }
4161     }
4162 }
4163 #[cfg(feature = "Win32_Foundation")]
4164 impl ::std::fmt::Debug for WSD_ENDPOINT_REFERENCE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4165     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4166         fmt.debug_struct("WSD_ENDPOINT_REFERENCE").field("Address", &self.Address).field("ReferenceProperties", &self.ReferenceProperties).field("ReferenceParameters", &self.ReferenceParameters).field("PortType", &self.PortType).field("ServiceName", &self.ServiceName).field("Any", &self.Any).finish()
4167     }
4168 }
4169 #[cfg(feature = "Win32_Foundation")]
4170 impl ::std::cmp::PartialEq for WSD_ENDPOINT_REFERENCE {
eq(&self, other: &Self) -> bool4171     fn eq(&self, other: &Self) -> bool {
4172         self.Address == other.Address && self.ReferenceProperties == other.ReferenceProperties && self.ReferenceParameters == other.ReferenceParameters && self.PortType == other.PortType && self.ServiceName == other.ServiceName && self.Any == other.Any
4173     }
4174 }
4175 #[cfg(feature = "Win32_Foundation")]
4176 impl ::std::cmp::Eq for WSD_ENDPOINT_REFERENCE {}
4177 #[cfg(feature = "Win32_Foundation")]
4178 unsafe impl ::windows::runtime::Abi for WSD_ENDPOINT_REFERENCE {
4179     type Abi = Self;
4180     type DefaultType = Self;
4181 }
4182 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4183 #[repr(C)]
4184 #[cfg(feature = "Win32_Foundation")]
4185 pub struct WSD_ENDPOINT_REFERENCE_LIST {
4186     pub Next: *mut WSD_ENDPOINT_REFERENCE_LIST,
4187     pub Element: *mut WSD_ENDPOINT_REFERENCE,
4188 }
4189 #[cfg(feature = "Win32_Foundation")]
4190 impl WSD_ENDPOINT_REFERENCE_LIST {}
4191 #[cfg(feature = "Win32_Foundation")]
4192 impl ::std::default::Default for WSD_ENDPOINT_REFERENCE_LIST {
default() -> Self4193     fn default() -> Self {
4194         unsafe { ::std::mem::zeroed() }
4195     }
4196 }
4197 #[cfg(feature = "Win32_Foundation")]
4198 impl ::std::fmt::Debug for WSD_ENDPOINT_REFERENCE_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4199     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4200         fmt.debug_struct("WSD_ENDPOINT_REFERENCE_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
4201     }
4202 }
4203 #[cfg(feature = "Win32_Foundation")]
4204 impl ::std::cmp::PartialEq for WSD_ENDPOINT_REFERENCE_LIST {
eq(&self, other: &Self) -> bool4205     fn eq(&self, other: &Self) -> bool {
4206         self.Next == other.Next && self.Element == other.Element
4207     }
4208 }
4209 #[cfg(feature = "Win32_Foundation")]
4210 impl ::std::cmp::Eq for WSD_ENDPOINT_REFERENCE_LIST {}
4211 #[cfg(feature = "Win32_Foundation")]
4212 unsafe impl ::windows::runtime::Abi for WSD_ENDPOINT_REFERENCE_LIST {
4213     type Abi = Self;
4214     type DefaultType = Self;
4215 }
4216 #[derive(:: std :: clone :: Clone)]
4217 #[repr(C)]
4218 #[cfg(feature = "Win32_Foundation")]
4219 pub struct WSD_EVENT {
4220     pub Hr: ::windows::runtime::HRESULT,
4221     pub EventType: u32,
4222     pub DispatchTag: super::super::Foundation::PWSTR,
4223     pub HandlerContext: WSD_HANDLER_CONTEXT,
4224     pub Soap: *mut WSD_SOAP_MESSAGE,
4225     pub Operation: *mut WSD_OPERATION,
4226     pub MessageParameters: ::std::option::Option<IWSDMessageParameters>,
4227 }
4228 #[cfg(feature = "Win32_Foundation")]
4229 impl WSD_EVENT {}
4230 #[cfg(feature = "Win32_Foundation")]
4231 impl ::std::default::Default for WSD_EVENT {
default() -> Self4232     fn default() -> Self {
4233         unsafe { ::std::mem::zeroed() }
4234     }
4235 }
4236 #[cfg(feature = "Win32_Foundation")]
4237 impl ::std::fmt::Debug for WSD_EVENT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4238     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4239         fmt.debug_struct("WSD_EVENT").field("Hr", &self.Hr).field("EventType", &self.EventType).field("DispatchTag", &self.DispatchTag).field("HandlerContext", &self.HandlerContext).field("Soap", &self.Soap).field("Operation", &self.Operation).field("MessageParameters", &self.MessageParameters).finish()
4240     }
4241 }
4242 #[cfg(feature = "Win32_Foundation")]
4243 impl ::std::cmp::PartialEq for WSD_EVENT {
eq(&self, other: &Self) -> bool4244     fn eq(&self, other: &Self) -> bool {
4245         self.Hr == other.Hr && self.EventType == other.EventType && self.DispatchTag == other.DispatchTag && self.HandlerContext == other.HandlerContext && self.Soap == other.Soap && self.Operation == other.Operation && self.MessageParameters == other.MessageParameters
4246     }
4247 }
4248 #[cfg(feature = "Win32_Foundation")]
4249 impl ::std::cmp::Eq for WSD_EVENT {}
4250 #[cfg(feature = "Win32_Foundation")]
4251 unsafe impl ::windows::runtime::Abi for WSD_EVENT {
4252     type Abi = ::std::mem::ManuallyDrop<Self>;
4253     type DefaultType = Self;
4254 }
4255 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4256 #[repr(C)]
4257 #[cfg(feature = "Win32_Foundation")]
4258 pub struct WSD_EVENTING_DELIVERY_MODE {
4259     pub Mode: super::super::Foundation::PWSTR,
4260     pub Push: *mut WSD_EVENTING_DELIVERY_MODE_PUSH,
4261     pub Data: *mut ::std::ffi::c_void,
4262 }
4263 #[cfg(feature = "Win32_Foundation")]
4264 impl WSD_EVENTING_DELIVERY_MODE {}
4265 #[cfg(feature = "Win32_Foundation")]
4266 impl ::std::default::Default for WSD_EVENTING_DELIVERY_MODE {
default() -> Self4267     fn default() -> Self {
4268         unsafe { ::std::mem::zeroed() }
4269     }
4270 }
4271 #[cfg(feature = "Win32_Foundation")]
4272 impl ::std::fmt::Debug for WSD_EVENTING_DELIVERY_MODE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4273     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4274         fmt.debug_struct("WSD_EVENTING_DELIVERY_MODE").field("Mode", &self.Mode).field("Push", &self.Push).field("Data", &self.Data).finish()
4275     }
4276 }
4277 #[cfg(feature = "Win32_Foundation")]
4278 impl ::std::cmp::PartialEq for WSD_EVENTING_DELIVERY_MODE {
eq(&self, other: &Self) -> bool4279     fn eq(&self, other: &Self) -> bool {
4280         self.Mode == other.Mode && self.Push == other.Push && self.Data == other.Data
4281     }
4282 }
4283 #[cfg(feature = "Win32_Foundation")]
4284 impl ::std::cmp::Eq for WSD_EVENTING_DELIVERY_MODE {}
4285 #[cfg(feature = "Win32_Foundation")]
4286 unsafe impl ::windows::runtime::Abi for WSD_EVENTING_DELIVERY_MODE {
4287     type Abi = Self;
4288     type DefaultType = Self;
4289 }
4290 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4291 #[repr(C)]
4292 #[cfg(feature = "Win32_Foundation")]
4293 pub struct WSD_EVENTING_DELIVERY_MODE_PUSH {
4294     pub NotifyTo: *mut WSD_ENDPOINT_REFERENCE,
4295 }
4296 #[cfg(feature = "Win32_Foundation")]
4297 impl WSD_EVENTING_DELIVERY_MODE_PUSH {}
4298 #[cfg(feature = "Win32_Foundation")]
4299 impl ::std::default::Default for WSD_EVENTING_DELIVERY_MODE_PUSH {
default() -> Self4300     fn default() -> Self {
4301         unsafe { ::std::mem::zeroed() }
4302     }
4303 }
4304 #[cfg(feature = "Win32_Foundation")]
4305 impl ::std::fmt::Debug for WSD_EVENTING_DELIVERY_MODE_PUSH {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4306     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4307         fmt.debug_struct("WSD_EVENTING_DELIVERY_MODE_PUSH").field("NotifyTo", &self.NotifyTo).finish()
4308     }
4309 }
4310 #[cfg(feature = "Win32_Foundation")]
4311 impl ::std::cmp::PartialEq for WSD_EVENTING_DELIVERY_MODE_PUSH {
eq(&self, other: &Self) -> bool4312     fn eq(&self, other: &Self) -> bool {
4313         self.NotifyTo == other.NotifyTo
4314     }
4315 }
4316 #[cfg(feature = "Win32_Foundation")]
4317 impl ::std::cmp::Eq for WSD_EVENTING_DELIVERY_MODE_PUSH {}
4318 #[cfg(feature = "Win32_Foundation")]
4319 unsafe impl ::windows::runtime::Abi for WSD_EVENTING_DELIVERY_MODE_PUSH {
4320     type Abi = Self;
4321     type DefaultType = Self;
4322 }
4323 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4324 #[repr(C)]
4325 #[cfg(feature = "Win32_Foundation")]
4326 pub struct WSD_EVENTING_EXPIRES {
4327     pub Duration: *mut WSD_DURATION,
4328     pub DateTime: *mut WSD_DATETIME,
4329 }
4330 #[cfg(feature = "Win32_Foundation")]
4331 impl WSD_EVENTING_EXPIRES {}
4332 #[cfg(feature = "Win32_Foundation")]
4333 impl ::std::default::Default for WSD_EVENTING_EXPIRES {
default() -> Self4334     fn default() -> Self {
4335         unsafe { ::std::mem::zeroed() }
4336     }
4337 }
4338 #[cfg(feature = "Win32_Foundation")]
4339 impl ::std::fmt::Debug for WSD_EVENTING_EXPIRES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4340     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4341         fmt.debug_struct("WSD_EVENTING_EXPIRES").field("Duration", &self.Duration).field("DateTime", &self.DateTime).finish()
4342     }
4343 }
4344 #[cfg(feature = "Win32_Foundation")]
4345 impl ::std::cmp::PartialEq for WSD_EVENTING_EXPIRES {
eq(&self, other: &Self) -> bool4346     fn eq(&self, other: &Self) -> bool {
4347         self.Duration == other.Duration && self.DateTime == other.DateTime
4348     }
4349 }
4350 #[cfg(feature = "Win32_Foundation")]
4351 impl ::std::cmp::Eq for WSD_EVENTING_EXPIRES {}
4352 #[cfg(feature = "Win32_Foundation")]
4353 unsafe impl ::windows::runtime::Abi for WSD_EVENTING_EXPIRES {
4354     type Abi = Self;
4355     type DefaultType = Self;
4356 }
4357 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4358 #[repr(C)]
4359 #[cfg(feature = "Win32_Foundation")]
4360 pub struct WSD_EVENTING_FILTER {
4361     pub Dialect: super::super::Foundation::PWSTR,
4362     pub FilterAction: *mut WSD_EVENTING_FILTER_ACTION,
4363     pub Data: *mut ::std::ffi::c_void,
4364 }
4365 #[cfg(feature = "Win32_Foundation")]
4366 impl WSD_EVENTING_FILTER {}
4367 #[cfg(feature = "Win32_Foundation")]
4368 impl ::std::default::Default for WSD_EVENTING_FILTER {
default() -> Self4369     fn default() -> Self {
4370         unsafe { ::std::mem::zeroed() }
4371     }
4372 }
4373 #[cfg(feature = "Win32_Foundation")]
4374 impl ::std::fmt::Debug for WSD_EVENTING_FILTER {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4375     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4376         fmt.debug_struct("WSD_EVENTING_FILTER").field("Dialect", &self.Dialect).field("FilterAction", &self.FilterAction).field("Data", &self.Data).finish()
4377     }
4378 }
4379 #[cfg(feature = "Win32_Foundation")]
4380 impl ::std::cmp::PartialEq for WSD_EVENTING_FILTER {
eq(&self, other: &Self) -> bool4381     fn eq(&self, other: &Self) -> bool {
4382         self.Dialect == other.Dialect && self.FilterAction == other.FilterAction && self.Data == other.Data
4383     }
4384 }
4385 #[cfg(feature = "Win32_Foundation")]
4386 impl ::std::cmp::Eq for WSD_EVENTING_FILTER {}
4387 #[cfg(feature = "Win32_Foundation")]
4388 unsafe impl ::windows::runtime::Abi for WSD_EVENTING_FILTER {
4389     type Abi = Self;
4390     type DefaultType = Self;
4391 }
4392 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4393 #[repr(C)]
4394 #[cfg(feature = "Win32_Foundation")]
4395 pub struct WSD_EVENTING_FILTER_ACTION {
4396     pub Actions: *mut WSD_URI_LIST,
4397 }
4398 #[cfg(feature = "Win32_Foundation")]
4399 impl WSD_EVENTING_FILTER_ACTION {}
4400 #[cfg(feature = "Win32_Foundation")]
4401 impl ::std::default::Default for WSD_EVENTING_FILTER_ACTION {
default() -> Self4402     fn default() -> Self {
4403         unsafe { ::std::mem::zeroed() }
4404     }
4405 }
4406 #[cfg(feature = "Win32_Foundation")]
4407 impl ::std::fmt::Debug for WSD_EVENTING_FILTER_ACTION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4408     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4409         fmt.debug_struct("WSD_EVENTING_FILTER_ACTION").field("Actions", &self.Actions).finish()
4410     }
4411 }
4412 #[cfg(feature = "Win32_Foundation")]
4413 impl ::std::cmp::PartialEq for WSD_EVENTING_FILTER_ACTION {
eq(&self, other: &Self) -> bool4414     fn eq(&self, other: &Self) -> bool {
4415         self.Actions == other.Actions
4416     }
4417 }
4418 #[cfg(feature = "Win32_Foundation")]
4419 impl ::std::cmp::Eq for WSD_EVENTING_FILTER_ACTION {}
4420 #[cfg(feature = "Win32_Foundation")]
4421 unsafe impl ::windows::runtime::Abi for WSD_EVENTING_FILTER_ACTION {
4422     type Abi = Self;
4423     type DefaultType = Self;
4424 }
4425 #[derive(:: std :: clone :: Clone)]
4426 #[repr(C)]
4427 #[cfg(feature = "Win32_Foundation")]
4428 pub struct WSD_HANDLER_CONTEXT {
4429     pub Handler: ::std::option::Option<PWSD_SOAP_MESSAGE_HANDLER>,
4430     pub PVoid: *mut ::std::ffi::c_void,
4431     pub Unknown: ::std::option::Option<::windows::runtime::IUnknown>,
4432 }
4433 #[cfg(feature = "Win32_Foundation")]
4434 impl WSD_HANDLER_CONTEXT {}
4435 #[cfg(feature = "Win32_Foundation")]
4436 impl ::std::default::Default for WSD_HANDLER_CONTEXT {
default() -> Self4437     fn default() -> Self {
4438         unsafe { ::std::mem::zeroed() }
4439     }
4440 }
4441 #[cfg(feature = "Win32_Foundation")]
4442 impl ::std::fmt::Debug for WSD_HANDLER_CONTEXT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4443     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4444         fmt.debug_struct("WSD_HANDLER_CONTEXT").field("PVoid", &self.PVoid).field("Unknown", &self.Unknown).finish()
4445     }
4446 }
4447 #[cfg(feature = "Win32_Foundation")]
4448 impl ::std::cmp::PartialEq for WSD_HANDLER_CONTEXT {
eq(&self, other: &Self) -> bool4449     fn eq(&self, other: &Self) -> bool {
4450         self.Handler.map(|f| f as usize) == other.Handler.map(|f| f as usize) && self.PVoid == other.PVoid && self.Unknown == other.Unknown
4451     }
4452 }
4453 #[cfg(feature = "Win32_Foundation")]
4454 impl ::std::cmp::Eq for WSD_HANDLER_CONTEXT {}
4455 #[cfg(feature = "Win32_Foundation")]
4456 unsafe impl ::windows::runtime::Abi for WSD_HANDLER_CONTEXT {
4457     type Abi = ::std::mem::ManuallyDrop<Self>;
4458     type DefaultType = Self;
4459 }
4460 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4461 #[repr(C)]
4462 #[cfg(feature = "Win32_Foundation")]
4463 pub struct WSD_HEADER_RELATESTO {
4464     pub RelationshipType: *mut WSDXML_NAME,
4465     pub MessageID: super::super::Foundation::PWSTR,
4466 }
4467 #[cfg(feature = "Win32_Foundation")]
4468 impl WSD_HEADER_RELATESTO {}
4469 #[cfg(feature = "Win32_Foundation")]
4470 impl ::std::default::Default for WSD_HEADER_RELATESTO {
default() -> Self4471     fn default() -> Self {
4472         unsafe { ::std::mem::zeroed() }
4473     }
4474 }
4475 #[cfg(feature = "Win32_Foundation")]
4476 impl ::std::fmt::Debug for WSD_HEADER_RELATESTO {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4477     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4478         fmt.debug_struct("WSD_HEADER_RELATESTO").field("RelationshipType", &self.RelationshipType).field("MessageID", &self.MessageID).finish()
4479     }
4480 }
4481 #[cfg(feature = "Win32_Foundation")]
4482 impl ::std::cmp::PartialEq for WSD_HEADER_RELATESTO {
eq(&self, other: &Self) -> bool4483     fn eq(&self, other: &Self) -> bool {
4484         self.RelationshipType == other.RelationshipType && self.MessageID == other.MessageID
4485     }
4486 }
4487 #[cfg(feature = "Win32_Foundation")]
4488 impl ::std::cmp::Eq for WSD_HEADER_RELATESTO {}
4489 #[cfg(feature = "Win32_Foundation")]
4490 unsafe impl ::windows::runtime::Abi for WSD_HEADER_RELATESTO {
4491     type Abi = Self;
4492     type DefaultType = Self;
4493 }
4494 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4495 #[repr(C)]
4496 #[cfg(feature = "Win32_Foundation")]
4497 pub struct WSD_HELLO {
4498     pub EndpointReference: *mut WSD_ENDPOINT_REFERENCE,
4499     pub Types: *mut WSD_NAME_LIST,
4500     pub Scopes: *mut WSD_SCOPES,
4501     pub XAddrs: *mut WSD_URI_LIST,
4502     pub MetadataVersion: u64,
4503     pub Any: *mut WSDXML_ELEMENT,
4504 }
4505 #[cfg(feature = "Win32_Foundation")]
4506 impl WSD_HELLO {}
4507 #[cfg(feature = "Win32_Foundation")]
4508 impl ::std::default::Default for WSD_HELLO {
default() -> Self4509     fn default() -> Self {
4510         unsafe { ::std::mem::zeroed() }
4511     }
4512 }
4513 #[cfg(feature = "Win32_Foundation")]
4514 impl ::std::fmt::Debug for WSD_HELLO {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4515     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4516         fmt.debug_struct("WSD_HELLO").field("EndpointReference", &self.EndpointReference).field("Types", &self.Types).field("Scopes", &self.Scopes).field("XAddrs", &self.XAddrs).field("MetadataVersion", &self.MetadataVersion).field("Any", &self.Any).finish()
4517     }
4518 }
4519 #[cfg(feature = "Win32_Foundation")]
4520 impl ::std::cmp::PartialEq for WSD_HELLO {
eq(&self, other: &Self) -> bool4521     fn eq(&self, other: &Self) -> bool {
4522         self.EndpointReference == other.EndpointReference && self.Types == other.Types && self.Scopes == other.Scopes && self.XAddrs == other.XAddrs && self.MetadataVersion == other.MetadataVersion && self.Any == other.Any
4523     }
4524 }
4525 #[cfg(feature = "Win32_Foundation")]
4526 impl ::std::cmp::Eq for WSD_HELLO {}
4527 #[cfg(feature = "Win32_Foundation")]
4528 unsafe impl ::windows::runtime::Abi for WSD_HELLO {
4529     type Abi = Self;
4530     type DefaultType = Self;
4531 }
4532 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4533 #[repr(C)]
4534 #[cfg(feature = "Win32_Foundation")]
4535 pub struct WSD_HOST_METADATA {
4536     pub Host: *mut WSD_SERVICE_METADATA,
4537     pub Hosted: *mut WSD_SERVICE_METADATA_LIST,
4538 }
4539 #[cfg(feature = "Win32_Foundation")]
4540 impl WSD_HOST_METADATA {}
4541 #[cfg(feature = "Win32_Foundation")]
4542 impl ::std::default::Default for WSD_HOST_METADATA {
default() -> Self4543     fn default() -> Self {
4544         unsafe { ::std::mem::zeroed() }
4545     }
4546 }
4547 #[cfg(feature = "Win32_Foundation")]
4548 impl ::std::fmt::Debug for WSD_HOST_METADATA {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4549     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4550         fmt.debug_struct("WSD_HOST_METADATA").field("Host", &self.Host).field("Hosted", &self.Hosted).finish()
4551     }
4552 }
4553 #[cfg(feature = "Win32_Foundation")]
4554 impl ::std::cmp::PartialEq for WSD_HOST_METADATA {
eq(&self, other: &Self) -> bool4555     fn eq(&self, other: &Self) -> bool {
4556         self.Host == other.Host && self.Hosted == other.Hosted
4557     }
4558 }
4559 #[cfg(feature = "Win32_Foundation")]
4560 impl ::std::cmp::Eq for WSD_HOST_METADATA {}
4561 #[cfg(feature = "Win32_Foundation")]
4562 unsafe impl ::windows::runtime::Abi for WSD_HOST_METADATA {
4563     type Abi = Self;
4564     type DefaultType = Self;
4565 }
4566 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4567 #[repr(C)]
4568 #[cfg(feature = "Win32_Foundation")]
4569 pub struct WSD_LOCALIZED_STRING {
4570     pub lang: super::super::Foundation::PWSTR,
4571     pub String: super::super::Foundation::PWSTR,
4572 }
4573 #[cfg(feature = "Win32_Foundation")]
4574 impl WSD_LOCALIZED_STRING {}
4575 #[cfg(feature = "Win32_Foundation")]
4576 impl ::std::default::Default for WSD_LOCALIZED_STRING {
default() -> Self4577     fn default() -> Self {
4578         unsafe { ::std::mem::zeroed() }
4579     }
4580 }
4581 #[cfg(feature = "Win32_Foundation")]
4582 impl ::std::fmt::Debug for WSD_LOCALIZED_STRING {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4583     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4584         fmt.debug_struct("WSD_LOCALIZED_STRING").field("lang", &self.lang).field("String", &self.String).finish()
4585     }
4586 }
4587 #[cfg(feature = "Win32_Foundation")]
4588 impl ::std::cmp::PartialEq for WSD_LOCALIZED_STRING {
eq(&self, other: &Self) -> bool4589     fn eq(&self, other: &Self) -> bool {
4590         self.lang == other.lang && self.String == other.String
4591     }
4592 }
4593 #[cfg(feature = "Win32_Foundation")]
4594 impl ::std::cmp::Eq for WSD_LOCALIZED_STRING {}
4595 #[cfg(feature = "Win32_Foundation")]
4596 unsafe impl ::windows::runtime::Abi for WSD_LOCALIZED_STRING {
4597     type Abi = Self;
4598     type DefaultType = Self;
4599 }
4600 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4601 #[repr(C)]
4602 #[cfg(feature = "Win32_Foundation")]
4603 pub struct WSD_LOCALIZED_STRING_LIST {
4604     pub Next: *mut WSD_LOCALIZED_STRING_LIST,
4605     pub Element: *mut WSD_LOCALIZED_STRING,
4606 }
4607 #[cfg(feature = "Win32_Foundation")]
4608 impl WSD_LOCALIZED_STRING_LIST {}
4609 #[cfg(feature = "Win32_Foundation")]
4610 impl ::std::default::Default for WSD_LOCALIZED_STRING_LIST {
default() -> Self4611     fn default() -> Self {
4612         unsafe { ::std::mem::zeroed() }
4613     }
4614 }
4615 #[cfg(feature = "Win32_Foundation")]
4616 impl ::std::fmt::Debug for WSD_LOCALIZED_STRING_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4617     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4618         fmt.debug_struct("WSD_LOCALIZED_STRING_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
4619     }
4620 }
4621 #[cfg(feature = "Win32_Foundation")]
4622 impl ::std::cmp::PartialEq for WSD_LOCALIZED_STRING_LIST {
eq(&self, other: &Self) -> bool4623     fn eq(&self, other: &Self) -> bool {
4624         self.Next == other.Next && self.Element == other.Element
4625     }
4626 }
4627 #[cfg(feature = "Win32_Foundation")]
4628 impl ::std::cmp::Eq for WSD_LOCALIZED_STRING_LIST {}
4629 #[cfg(feature = "Win32_Foundation")]
4630 unsafe impl ::windows::runtime::Abi for WSD_LOCALIZED_STRING_LIST {
4631     type Abi = Self;
4632     type DefaultType = Self;
4633 }
4634 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4635 #[repr(C)]
4636 #[cfg(feature = "Win32_Foundation")]
4637 pub struct WSD_METADATA_SECTION {
4638     pub Dialect: super::super::Foundation::PWSTR,
4639     pub Identifier: super::super::Foundation::PWSTR,
4640     pub Data: *mut ::std::ffi::c_void,
4641     pub MetadataReference: *mut WSD_ENDPOINT_REFERENCE,
4642     pub Location: super::super::Foundation::PWSTR,
4643     pub Any: *mut WSDXML_ELEMENT,
4644 }
4645 #[cfg(feature = "Win32_Foundation")]
4646 impl WSD_METADATA_SECTION {}
4647 #[cfg(feature = "Win32_Foundation")]
4648 impl ::std::default::Default for WSD_METADATA_SECTION {
default() -> Self4649     fn default() -> Self {
4650         unsafe { ::std::mem::zeroed() }
4651     }
4652 }
4653 #[cfg(feature = "Win32_Foundation")]
4654 impl ::std::fmt::Debug for WSD_METADATA_SECTION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4655     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4656         fmt.debug_struct("WSD_METADATA_SECTION").field("Dialect", &self.Dialect).field("Identifier", &self.Identifier).field("Data", &self.Data).field("MetadataReference", &self.MetadataReference).field("Location", &self.Location).field("Any", &self.Any).finish()
4657     }
4658 }
4659 #[cfg(feature = "Win32_Foundation")]
4660 impl ::std::cmp::PartialEq for WSD_METADATA_SECTION {
eq(&self, other: &Self) -> bool4661     fn eq(&self, other: &Self) -> bool {
4662         self.Dialect == other.Dialect && self.Identifier == other.Identifier && self.Data == other.Data && self.MetadataReference == other.MetadataReference && self.Location == other.Location && self.Any == other.Any
4663     }
4664 }
4665 #[cfg(feature = "Win32_Foundation")]
4666 impl ::std::cmp::Eq for WSD_METADATA_SECTION {}
4667 #[cfg(feature = "Win32_Foundation")]
4668 unsafe impl ::windows::runtime::Abi for WSD_METADATA_SECTION {
4669     type Abi = Self;
4670     type DefaultType = Self;
4671 }
4672 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4673 #[repr(C)]
4674 #[cfg(feature = "Win32_Foundation")]
4675 pub struct WSD_METADATA_SECTION_LIST {
4676     pub Next: *mut WSD_METADATA_SECTION_LIST,
4677     pub Element: *mut WSD_METADATA_SECTION,
4678 }
4679 #[cfg(feature = "Win32_Foundation")]
4680 impl WSD_METADATA_SECTION_LIST {}
4681 #[cfg(feature = "Win32_Foundation")]
4682 impl ::std::default::Default for WSD_METADATA_SECTION_LIST {
default() -> Self4683     fn default() -> Self {
4684         unsafe { ::std::mem::zeroed() }
4685     }
4686 }
4687 #[cfg(feature = "Win32_Foundation")]
4688 impl ::std::fmt::Debug for WSD_METADATA_SECTION_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4689     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4690         fmt.debug_struct("WSD_METADATA_SECTION_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
4691     }
4692 }
4693 #[cfg(feature = "Win32_Foundation")]
4694 impl ::std::cmp::PartialEq for WSD_METADATA_SECTION_LIST {
eq(&self, other: &Self) -> bool4695     fn eq(&self, other: &Self) -> bool {
4696         self.Next == other.Next && self.Element == other.Element
4697     }
4698 }
4699 #[cfg(feature = "Win32_Foundation")]
4700 impl ::std::cmp::Eq for WSD_METADATA_SECTION_LIST {}
4701 #[cfg(feature = "Win32_Foundation")]
4702 unsafe impl ::windows::runtime::Abi for WSD_METADATA_SECTION_LIST {
4703     type Abi = Self;
4704     type DefaultType = Self;
4705 }
4706 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4707 #[repr(C)]
4708 #[cfg(feature = "Win32_Foundation")]
4709 pub struct WSD_NAME_LIST {
4710     pub Next: *mut WSD_NAME_LIST,
4711     pub Element: *mut WSDXML_NAME,
4712 }
4713 #[cfg(feature = "Win32_Foundation")]
4714 impl WSD_NAME_LIST {}
4715 #[cfg(feature = "Win32_Foundation")]
4716 impl ::std::default::Default for WSD_NAME_LIST {
default() -> Self4717     fn default() -> Self {
4718         unsafe { ::std::mem::zeroed() }
4719     }
4720 }
4721 #[cfg(feature = "Win32_Foundation")]
4722 impl ::std::fmt::Debug for WSD_NAME_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4723     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4724         fmt.debug_struct("WSD_NAME_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
4725     }
4726 }
4727 #[cfg(feature = "Win32_Foundation")]
4728 impl ::std::cmp::PartialEq for WSD_NAME_LIST {
eq(&self, other: &Self) -> bool4729     fn eq(&self, other: &Self) -> bool {
4730         self.Next == other.Next && self.Element == other.Element
4731     }
4732 }
4733 #[cfg(feature = "Win32_Foundation")]
4734 impl ::std::cmp::Eq for WSD_NAME_LIST {}
4735 #[cfg(feature = "Win32_Foundation")]
4736 unsafe impl ::windows::runtime::Abi for WSD_NAME_LIST {
4737     type Abi = Self;
4738     type DefaultType = Self;
4739 }
4740 #[derive(:: std :: clone :: Clone)]
4741 #[repr(C)]
4742 #[cfg(feature = "Win32_Foundation")]
4743 pub struct WSD_OPERATION {
4744     pub RequestType: *mut WSDXML_TYPE,
4745     pub ResponseType: *mut WSDXML_TYPE,
4746     pub RequestStubFunction: ::std::option::Option<WSD_STUB_FUNCTION>,
4747 }
4748 #[cfg(feature = "Win32_Foundation")]
4749 impl WSD_OPERATION {}
4750 #[cfg(feature = "Win32_Foundation")]
4751 impl ::std::default::Default for WSD_OPERATION {
default() -> Self4752     fn default() -> Self {
4753         unsafe { ::std::mem::zeroed() }
4754     }
4755 }
4756 #[cfg(feature = "Win32_Foundation")]
4757 impl ::std::fmt::Debug for WSD_OPERATION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4758     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4759         fmt.debug_struct("WSD_OPERATION").field("RequestType", &self.RequestType).field("ResponseType", &self.ResponseType).finish()
4760     }
4761 }
4762 #[cfg(feature = "Win32_Foundation")]
4763 impl ::std::cmp::PartialEq for WSD_OPERATION {
eq(&self, other: &Self) -> bool4764     fn eq(&self, other: &Self) -> bool {
4765         self.RequestType == other.RequestType && self.ResponseType == other.ResponseType && self.RequestStubFunction.map(|f| f as usize) == other.RequestStubFunction.map(|f| f as usize)
4766     }
4767 }
4768 #[cfg(feature = "Win32_Foundation")]
4769 impl ::std::cmp::Eq for WSD_OPERATION {}
4770 #[cfg(feature = "Win32_Foundation")]
4771 unsafe impl ::windows::runtime::Abi for WSD_OPERATION {
4772     type Abi = ::std::mem::ManuallyDrop<Self>;
4773     type DefaultType = Self;
4774 }
4775 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4776 #[repr(C)]
4777 #[cfg(feature = "Win32_Foundation")]
4778 pub struct WSD_PORT_TYPE {
4779     pub EncodedName: u32,
4780     pub OperationCount: u32,
4781     pub Operations: *mut WSD_OPERATION,
4782     pub ProtocolType: WSD_PROTOCOL_TYPE,
4783 }
4784 #[cfg(feature = "Win32_Foundation")]
4785 impl WSD_PORT_TYPE {}
4786 #[cfg(feature = "Win32_Foundation")]
4787 impl ::std::default::Default for WSD_PORT_TYPE {
default() -> Self4788     fn default() -> Self {
4789         unsafe { ::std::mem::zeroed() }
4790     }
4791 }
4792 #[cfg(feature = "Win32_Foundation")]
4793 impl ::std::fmt::Debug for WSD_PORT_TYPE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4794     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4795         fmt.debug_struct("WSD_PORT_TYPE").field("EncodedName", &self.EncodedName).field("OperationCount", &self.OperationCount).field("Operations", &self.Operations).field("ProtocolType", &self.ProtocolType).finish()
4796     }
4797 }
4798 #[cfg(feature = "Win32_Foundation")]
4799 impl ::std::cmp::PartialEq for WSD_PORT_TYPE {
eq(&self, other: &Self) -> bool4800     fn eq(&self, other: &Self) -> bool {
4801         self.EncodedName == other.EncodedName && self.OperationCount == other.OperationCount && self.Operations == other.Operations && self.ProtocolType == other.ProtocolType
4802     }
4803 }
4804 #[cfg(feature = "Win32_Foundation")]
4805 impl ::std::cmp::Eq for WSD_PORT_TYPE {}
4806 #[cfg(feature = "Win32_Foundation")]
4807 unsafe impl ::windows::runtime::Abi for WSD_PORT_TYPE {
4808     type Abi = Self;
4809     type DefaultType = Self;
4810 }
4811 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4812 #[repr(C)]
4813 #[cfg(feature = "Win32_Foundation")]
4814 pub struct WSD_PROBE {
4815     pub Types: *mut WSD_NAME_LIST,
4816     pub Scopes: *mut WSD_SCOPES,
4817     pub Any: *mut WSDXML_ELEMENT,
4818 }
4819 #[cfg(feature = "Win32_Foundation")]
4820 impl WSD_PROBE {}
4821 #[cfg(feature = "Win32_Foundation")]
4822 impl ::std::default::Default for WSD_PROBE {
default() -> Self4823     fn default() -> Self {
4824         unsafe { ::std::mem::zeroed() }
4825     }
4826 }
4827 #[cfg(feature = "Win32_Foundation")]
4828 impl ::std::fmt::Debug for WSD_PROBE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4829     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4830         fmt.debug_struct("WSD_PROBE").field("Types", &self.Types).field("Scopes", &self.Scopes).field("Any", &self.Any).finish()
4831     }
4832 }
4833 #[cfg(feature = "Win32_Foundation")]
4834 impl ::std::cmp::PartialEq for WSD_PROBE {
eq(&self, other: &Self) -> bool4835     fn eq(&self, other: &Self) -> bool {
4836         self.Types == other.Types && self.Scopes == other.Scopes && self.Any == other.Any
4837     }
4838 }
4839 #[cfg(feature = "Win32_Foundation")]
4840 impl ::std::cmp::Eq for WSD_PROBE {}
4841 #[cfg(feature = "Win32_Foundation")]
4842 unsafe impl ::windows::runtime::Abi for WSD_PROBE {
4843     type Abi = Self;
4844     type DefaultType = Self;
4845 }
4846 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4847 #[repr(C)]
4848 #[cfg(feature = "Win32_Foundation")]
4849 pub struct WSD_PROBE_MATCH {
4850     pub EndpointReference: *mut WSD_ENDPOINT_REFERENCE,
4851     pub Types: *mut WSD_NAME_LIST,
4852     pub Scopes: *mut WSD_SCOPES,
4853     pub XAddrs: *mut WSD_URI_LIST,
4854     pub MetadataVersion: u64,
4855     pub Any: *mut WSDXML_ELEMENT,
4856 }
4857 #[cfg(feature = "Win32_Foundation")]
4858 impl WSD_PROBE_MATCH {}
4859 #[cfg(feature = "Win32_Foundation")]
4860 impl ::std::default::Default for WSD_PROBE_MATCH {
default() -> Self4861     fn default() -> Self {
4862         unsafe { ::std::mem::zeroed() }
4863     }
4864 }
4865 #[cfg(feature = "Win32_Foundation")]
4866 impl ::std::fmt::Debug for WSD_PROBE_MATCH {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4867     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4868         fmt.debug_struct("WSD_PROBE_MATCH").field("EndpointReference", &self.EndpointReference).field("Types", &self.Types).field("Scopes", &self.Scopes).field("XAddrs", &self.XAddrs).field("MetadataVersion", &self.MetadataVersion).field("Any", &self.Any).finish()
4869     }
4870 }
4871 #[cfg(feature = "Win32_Foundation")]
4872 impl ::std::cmp::PartialEq for WSD_PROBE_MATCH {
eq(&self, other: &Self) -> bool4873     fn eq(&self, other: &Self) -> bool {
4874         self.EndpointReference == other.EndpointReference && self.Types == other.Types && self.Scopes == other.Scopes && self.XAddrs == other.XAddrs && self.MetadataVersion == other.MetadataVersion && self.Any == other.Any
4875     }
4876 }
4877 #[cfg(feature = "Win32_Foundation")]
4878 impl ::std::cmp::Eq for WSD_PROBE_MATCH {}
4879 #[cfg(feature = "Win32_Foundation")]
4880 unsafe impl ::windows::runtime::Abi for WSD_PROBE_MATCH {
4881     type Abi = Self;
4882     type DefaultType = Self;
4883 }
4884 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4885 #[repr(C)]
4886 #[cfg(feature = "Win32_Foundation")]
4887 pub struct WSD_PROBE_MATCHES {
4888     pub ProbeMatch: *mut WSD_PROBE_MATCH_LIST,
4889     pub Any: *mut WSDXML_ELEMENT,
4890 }
4891 #[cfg(feature = "Win32_Foundation")]
4892 impl WSD_PROBE_MATCHES {}
4893 #[cfg(feature = "Win32_Foundation")]
4894 impl ::std::default::Default for WSD_PROBE_MATCHES {
default() -> Self4895     fn default() -> Self {
4896         unsafe { ::std::mem::zeroed() }
4897     }
4898 }
4899 #[cfg(feature = "Win32_Foundation")]
4900 impl ::std::fmt::Debug for WSD_PROBE_MATCHES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4901     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4902         fmt.debug_struct("WSD_PROBE_MATCHES").field("ProbeMatch", &self.ProbeMatch).field("Any", &self.Any).finish()
4903     }
4904 }
4905 #[cfg(feature = "Win32_Foundation")]
4906 impl ::std::cmp::PartialEq for WSD_PROBE_MATCHES {
eq(&self, other: &Self) -> bool4907     fn eq(&self, other: &Self) -> bool {
4908         self.ProbeMatch == other.ProbeMatch && self.Any == other.Any
4909     }
4910 }
4911 #[cfg(feature = "Win32_Foundation")]
4912 impl ::std::cmp::Eq for WSD_PROBE_MATCHES {}
4913 #[cfg(feature = "Win32_Foundation")]
4914 unsafe impl ::windows::runtime::Abi for WSD_PROBE_MATCHES {
4915     type Abi = Self;
4916     type DefaultType = Self;
4917 }
4918 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4919 #[repr(C)]
4920 #[cfg(feature = "Win32_Foundation")]
4921 pub struct WSD_PROBE_MATCH_LIST {
4922     pub Next: *mut WSD_PROBE_MATCH_LIST,
4923     pub Element: *mut WSD_PROBE_MATCH,
4924 }
4925 #[cfg(feature = "Win32_Foundation")]
4926 impl WSD_PROBE_MATCH_LIST {}
4927 #[cfg(feature = "Win32_Foundation")]
4928 impl ::std::default::Default for WSD_PROBE_MATCH_LIST {
default() -> Self4929     fn default() -> Self {
4930         unsafe { ::std::mem::zeroed() }
4931     }
4932 }
4933 #[cfg(feature = "Win32_Foundation")]
4934 impl ::std::fmt::Debug for WSD_PROBE_MATCH_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4935     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4936         fmt.debug_struct("WSD_PROBE_MATCH_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
4937     }
4938 }
4939 #[cfg(feature = "Win32_Foundation")]
4940 impl ::std::cmp::PartialEq for WSD_PROBE_MATCH_LIST {
eq(&self, other: &Self) -> bool4941     fn eq(&self, other: &Self) -> bool {
4942         self.Next == other.Next && self.Element == other.Element
4943     }
4944 }
4945 #[cfg(feature = "Win32_Foundation")]
4946 impl ::std::cmp::Eq for WSD_PROBE_MATCH_LIST {}
4947 #[cfg(feature = "Win32_Foundation")]
4948 unsafe impl ::windows::runtime::Abi for WSD_PROBE_MATCH_LIST {
4949     type Abi = Self;
4950     type DefaultType = Self;
4951 }
4952 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4953 #[repr(transparent)]
4954 pub struct WSD_PROTOCOL_TYPE(pub i32);
4955 pub const WSD_PT_NONE: WSD_PROTOCOL_TYPE = WSD_PROTOCOL_TYPE(0i32);
4956 pub const WSD_PT_UDP: WSD_PROTOCOL_TYPE = WSD_PROTOCOL_TYPE(1i32);
4957 pub const WSD_PT_HTTP: WSD_PROTOCOL_TYPE = WSD_PROTOCOL_TYPE(2i32);
4958 pub const WSD_PT_HTTPS: WSD_PROTOCOL_TYPE = WSD_PROTOCOL_TYPE(4i32);
4959 pub const WSD_PT_ALL: WSD_PROTOCOL_TYPE = WSD_PROTOCOL_TYPE(255i32);
4960 impl ::std::convert::From<i32> for WSD_PROTOCOL_TYPE {
from(value: i32) -> Self4961     fn from(value: i32) -> Self {
4962         Self(value)
4963     }
4964 }
4965 unsafe impl ::windows::runtime::Abi for WSD_PROTOCOL_TYPE {
4966     type Abi = Self;
4967     type DefaultType = Self;
4968 }
4969 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
4970 #[repr(C)]
4971 #[cfg(feature = "Win32_Foundation")]
4972 pub struct WSD_REFERENCE_PARAMETERS {
4973     pub Any: *mut WSDXML_ELEMENT,
4974 }
4975 #[cfg(feature = "Win32_Foundation")]
4976 impl WSD_REFERENCE_PARAMETERS {}
4977 #[cfg(feature = "Win32_Foundation")]
4978 impl ::std::default::Default for WSD_REFERENCE_PARAMETERS {
default() -> Self4979     fn default() -> Self {
4980         unsafe { ::std::mem::zeroed() }
4981     }
4982 }
4983 #[cfg(feature = "Win32_Foundation")]
4984 impl ::std::fmt::Debug for WSD_REFERENCE_PARAMETERS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result4985     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4986         fmt.debug_struct("WSD_REFERENCE_PARAMETERS").field("Any", &self.Any).finish()
4987     }
4988 }
4989 #[cfg(feature = "Win32_Foundation")]
4990 impl ::std::cmp::PartialEq for WSD_REFERENCE_PARAMETERS {
eq(&self, other: &Self) -> bool4991     fn eq(&self, other: &Self) -> bool {
4992         self.Any == other.Any
4993     }
4994 }
4995 #[cfg(feature = "Win32_Foundation")]
4996 impl ::std::cmp::Eq for WSD_REFERENCE_PARAMETERS {}
4997 #[cfg(feature = "Win32_Foundation")]
4998 unsafe impl ::windows::runtime::Abi for WSD_REFERENCE_PARAMETERS {
4999     type Abi = Self;
5000     type DefaultType = Self;
5001 }
5002 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5003 #[repr(C)]
5004 #[cfg(feature = "Win32_Foundation")]
5005 pub struct WSD_REFERENCE_PROPERTIES {
5006     pub Any: *mut WSDXML_ELEMENT,
5007 }
5008 #[cfg(feature = "Win32_Foundation")]
5009 impl WSD_REFERENCE_PROPERTIES {}
5010 #[cfg(feature = "Win32_Foundation")]
5011 impl ::std::default::Default for WSD_REFERENCE_PROPERTIES {
default() -> Self5012     fn default() -> Self {
5013         unsafe { ::std::mem::zeroed() }
5014     }
5015 }
5016 #[cfg(feature = "Win32_Foundation")]
5017 impl ::std::fmt::Debug for WSD_REFERENCE_PROPERTIES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5018     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5019         fmt.debug_struct("WSD_REFERENCE_PROPERTIES").field("Any", &self.Any).finish()
5020     }
5021 }
5022 #[cfg(feature = "Win32_Foundation")]
5023 impl ::std::cmp::PartialEq for WSD_REFERENCE_PROPERTIES {
eq(&self, other: &Self) -> bool5024     fn eq(&self, other: &Self) -> bool {
5025         self.Any == other.Any
5026     }
5027 }
5028 #[cfg(feature = "Win32_Foundation")]
5029 impl ::std::cmp::Eq for WSD_REFERENCE_PROPERTIES {}
5030 #[cfg(feature = "Win32_Foundation")]
5031 unsafe impl ::windows::runtime::Abi for WSD_REFERENCE_PROPERTIES {
5032     type Abi = Self;
5033     type DefaultType = Self;
5034 }
5035 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5036 #[repr(C)]
5037 #[cfg(feature = "Win32_Foundation")]
5038 pub struct WSD_RELATIONSHIP_METADATA {
5039     pub Type: super::super::Foundation::PWSTR,
5040     pub Data: *mut WSD_HOST_METADATA,
5041     pub Any: *mut WSDXML_ELEMENT,
5042 }
5043 #[cfg(feature = "Win32_Foundation")]
5044 impl WSD_RELATIONSHIP_METADATA {}
5045 #[cfg(feature = "Win32_Foundation")]
5046 impl ::std::default::Default for WSD_RELATIONSHIP_METADATA {
default() -> Self5047     fn default() -> Self {
5048         unsafe { ::std::mem::zeroed() }
5049     }
5050 }
5051 #[cfg(feature = "Win32_Foundation")]
5052 impl ::std::fmt::Debug for WSD_RELATIONSHIP_METADATA {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5053     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5054         fmt.debug_struct("WSD_RELATIONSHIP_METADATA").field("Type", &self.Type).field("Data", &self.Data).field("Any", &self.Any).finish()
5055     }
5056 }
5057 #[cfg(feature = "Win32_Foundation")]
5058 impl ::std::cmp::PartialEq for WSD_RELATIONSHIP_METADATA {
eq(&self, other: &Self) -> bool5059     fn eq(&self, other: &Self) -> bool {
5060         self.Type == other.Type && self.Data == other.Data && self.Any == other.Any
5061     }
5062 }
5063 #[cfg(feature = "Win32_Foundation")]
5064 impl ::std::cmp::Eq for WSD_RELATIONSHIP_METADATA {}
5065 #[cfg(feature = "Win32_Foundation")]
5066 unsafe impl ::windows::runtime::Abi for WSD_RELATIONSHIP_METADATA {
5067     type Abi = Self;
5068     type DefaultType = Self;
5069 }
5070 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5071 #[repr(C)]
5072 #[cfg(feature = "Win32_Foundation")]
5073 pub struct WSD_RESOLVE {
5074     pub EndpointReference: *mut WSD_ENDPOINT_REFERENCE,
5075     pub Any: *mut WSDXML_ELEMENT,
5076 }
5077 #[cfg(feature = "Win32_Foundation")]
5078 impl WSD_RESOLVE {}
5079 #[cfg(feature = "Win32_Foundation")]
5080 impl ::std::default::Default for WSD_RESOLVE {
default() -> Self5081     fn default() -> Self {
5082         unsafe { ::std::mem::zeroed() }
5083     }
5084 }
5085 #[cfg(feature = "Win32_Foundation")]
5086 impl ::std::fmt::Debug for WSD_RESOLVE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5087     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5088         fmt.debug_struct("WSD_RESOLVE").field("EndpointReference", &self.EndpointReference).field("Any", &self.Any).finish()
5089     }
5090 }
5091 #[cfg(feature = "Win32_Foundation")]
5092 impl ::std::cmp::PartialEq for WSD_RESOLVE {
eq(&self, other: &Self) -> bool5093     fn eq(&self, other: &Self) -> bool {
5094         self.EndpointReference == other.EndpointReference && self.Any == other.Any
5095     }
5096 }
5097 #[cfg(feature = "Win32_Foundation")]
5098 impl ::std::cmp::Eq for WSD_RESOLVE {}
5099 #[cfg(feature = "Win32_Foundation")]
5100 unsafe impl ::windows::runtime::Abi for WSD_RESOLVE {
5101     type Abi = Self;
5102     type DefaultType = Self;
5103 }
5104 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5105 #[repr(C)]
5106 #[cfg(feature = "Win32_Foundation")]
5107 pub struct WSD_RESOLVE_MATCH {
5108     pub EndpointReference: *mut WSD_ENDPOINT_REFERENCE,
5109     pub Types: *mut WSD_NAME_LIST,
5110     pub Scopes: *mut WSD_SCOPES,
5111     pub XAddrs: *mut WSD_URI_LIST,
5112     pub MetadataVersion: u64,
5113     pub Any: *mut WSDXML_ELEMENT,
5114 }
5115 #[cfg(feature = "Win32_Foundation")]
5116 impl WSD_RESOLVE_MATCH {}
5117 #[cfg(feature = "Win32_Foundation")]
5118 impl ::std::default::Default for WSD_RESOLVE_MATCH {
default() -> Self5119     fn default() -> Self {
5120         unsafe { ::std::mem::zeroed() }
5121     }
5122 }
5123 #[cfg(feature = "Win32_Foundation")]
5124 impl ::std::fmt::Debug for WSD_RESOLVE_MATCH {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5125     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5126         fmt.debug_struct("WSD_RESOLVE_MATCH").field("EndpointReference", &self.EndpointReference).field("Types", &self.Types).field("Scopes", &self.Scopes).field("XAddrs", &self.XAddrs).field("MetadataVersion", &self.MetadataVersion).field("Any", &self.Any).finish()
5127     }
5128 }
5129 #[cfg(feature = "Win32_Foundation")]
5130 impl ::std::cmp::PartialEq for WSD_RESOLVE_MATCH {
eq(&self, other: &Self) -> bool5131     fn eq(&self, other: &Self) -> bool {
5132         self.EndpointReference == other.EndpointReference && self.Types == other.Types && self.Scopes == other.Scopes && self.XAddrs == other.XAddrs && self.MetadataVersion == other.MetadataVersion && self.Any == other.Any
5133     }
5134 }
5135 #[cfg(feature = "Win32_Foundation")]
5136 impl ::std::cmp::Eq for WSD_RESOLVE_MATCH {}
5137 #[cfg(feature = "Win32_Foundation")]
5138 unsafe impl ::windows::runtime::Abi for WSD_RESOLVE_MATCH {
5139     type Abi = Self;
5140     type DefaultType = Self;
5141 }
5142 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5143 #[repr(C)]
5144 #[cfg(feature = "Win32_Foundation")]
5145 pub struct WSD_RESOLVE_MATCHES {
5146     pub ResolveMatch: *mut WSD_RESOLVE_MATCH,
5147     pub Any: *mut WSDXML_ELEMENT,
5148 }
5149 #[cfg(feature = "Win32_Foundation")]
5150 impl WSD_RESOLVE_MATCHES {}
5151 #[cfg(feature = "Win32_Foundation")]
5152 impl ::std::default::Default for WSD_RESOLVE_MATCHES {
default() -> Self5153     fn default() -> Self {
5154         unsafe { ::std::mem::zeroed() }
5155     }
5156 }
5157 #[cfg(feature = "Win32_Foundation")]
5158 impl ::std::fmt::Debug for WSD_RESOLVE_MATCHES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5159     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5160         fmt.debug_struct("WSD_RESOLVE_MATCHES").field("ResolveMatch", &self.ResolveMatch).field("Any", &self.Any).finish()
5161     }
5162 }
5163 #[cfg(feature = "Win32_Foundation")]
5164 impl ::std::cmp::PartialEq for WSD_RESOLVE_MATCHES {
eq(&self, other: &Self) -> bool5165     fn eq(&self, other: &Self) -> bool {
5166         self.ResolveMatch == other.ResolveMatch && self.Any == other.Any
5167     }
5168 }
5169 #[cfg(feature = "Win32_Foundation")]
5170 impl ::std::cmp::Eq for WSD_RESOLVE_MATCHES {}
5171 #[cfg(feature = "Win32_Foundation")]
5172 unsafe impl ::windows::runtime::Abi for WSD_RESOLVE_MATCHES {
5173     type Abi = Self;
5174     type DefaultType = Self;
5175 }
5176 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5177 #[repr(C)]
5178 #[cfg(feature = "Win32_Foundation")]
5179 pub struct WSD_SCOPES {
5180     pub MatchBy: super::super::Foundation::PWSTR,
5181     pub Scopes: *mut WSD_URI_LIST,
5182 }
5183 #[cfg(feature = "Win32_Foundation")]
5184 impl WSD_SCOPES {}
5185 #[cfg(feature = "Win32_Foundation")]
5186 impl ::std::default::Default for WSD_SCOPES {
default() -> Self5187     fn default() -> Self {
5188         unsafe { ::std::mem::zeroed() }
5189     }
5190 }
5191 #[cfg(feature = "Win32_Foundation")]
5192 impl ::std::fmt::Debug for WSD_SCOPES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5193     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5194         fmt.debug_struct("WSD_SCOPES").field("MatchBy", &self.MatchBy).field("Scopes", &self.Scopes).finish()
5195     }
5196 }
5197 #[cfg(feature = "Win32_Foundation")]
5198 impl ::std::cmp::PartialEq for WSD_SCOPES {
eq(&self, other: &Self) -> bool5199     fn eq(&self, other: &Self) -> bool {
5200         self.MatchBy == other.MatchBy && self.Scopes == other.Scopes
5201     }
5202 }
5203 #[cfg(feature = "Win32_Foundation")]
5204 impl ::std::cmp::Eq for WSD_SCOPES {}
5205 #[cfg(feature = "Win32_Foundation")]
5206 unsafe impl ::windows::runtime::Abi for WSD_SCOPES {
5207     type Abi = Self;
5208     type DefaultType = Self;
5209 }
5210 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5211 #[repr(C)]
5212 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5213 pub struct WSD_SECURITY_CERT_VALIDATION {
5214     pub certMatchArray: *mut *mut super::super::Security::Cryptography::CERT_CONTEXT,
5215     pub dwCertMatchArrayCount: u32,
5216     pub hCertMatchStore: *mut ::std::ffi::c_void,
5217     pub hCertIssuerStore: *mut ::std::ffi::c_void,
5218     pub dwCertCheckOptions: u32,
5219     pub pszCNGHashAlgId: super::super::Foundation::PWSTR,
5220     pub pbCertHash: *mut u8,
5221     pub dwCertHashSize: u32,
5222 }
5223 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5224 impl WSD_SECURITY_CERT_VALIDATION {}
5225 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5226 impl ::std::default::Default for WSD_SECURITY_CERT_VALIDATION {
default() -> Self5227     fn default() -> Self {
5228         unsafe { ::std::mem::zeroed() }
5229     }
5230 }
5231 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5232 impl ::std::fmt::Debug for WSD_SECURITY_CERT_VALIDATION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5233     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5234         fmt.debug_struct("WSD_SECURITY_CERT_VALIDATION")
5235             .field("certMatchArray", &self.certMatchArray)
5236             .field("dwCertMatchArrayCount", &self.dwCertMatchArrayCount)
5237             .field("hCertMatchStore", &self.hCertMatchStore)
5238             .field("hCertIssuerStore", &self.hCertIssuerStore)
5239             .field("dwCertCheckOptions", &self.dwCertCheckOptions)
5240             .field("pszCNGHashAlgId", &self.pszCNGHashAlgId)
5241             .field("pbCertHash", &self.pbCertHash)
5242             .field("dwCertHashSize", &self.dwCertHashSize)
5243             .finish()
5244     }
5245 }
5246 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5247 impl ::std::cmp::PartialEq for WSD_SECURITY_CERT_VALIDATION {
eq(&self, other: &Self) -> bool5248     fn eq(&self, other: &Self) -> bool {
5249         self.certMatchArray == other.certMatchArray && self.dwCertMatchArrayCount == other.dwCertMatchArrayCount && self.hCertMatchStore == other.hCertMatchStore && self.hCertIssuerStore == other.hCertIssuerStore && self.dwCertCheckOptions == other.dwCertCheckOptions && self.pszCNGHashAlgId == other.pszCNGHashAlgId && self.pbCertHash == other.pbCertHash && self.dwCertHashSize == other.dwCertHashSize
5250     }
5251 }
5252 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5253 impl ::std::cmp::Eq for WSD_SECURITY_CERT_VALIDATION {}
5254 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5255 unsafe impl ::windows::runtime::Abi for WSD_SECURITY_CERT_VALIDATION {
5256     type Abi = Self;
5257     type DefaultType = Self;
5258 }
5259 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5260 #[repr(C)]
5261 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5262 pub struct WSD_SECURITY_CERT_VALIDATION_V1 {
5263     pub certMatchArray: *mut *mut super::super::Security::Cryptography::CERT_CONTEXT,
5264     pub dwCertMatchArrayCount: u32,
5265     pub hCertMatchStore: *mut ::std::ffi::c_void,
5266     pub hCertIssuerStore: *mut ::std::ffi::c_void,
5267     pub dwCertCheckOptions: u32,
5268 }
5269 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5270 impl WSD_SECURITY_CERT_VALIDATION_V1 {}
5271 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5272 impl ::std::default::Default for WSD_SECURITY_CERT_VALIDATION_V1 {
default() -> Self5273     fn default() -> Self {
5274         unsafe { ::std::mem::zeroed() }
5275     }
5276 }
5277 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5278 impl ::std::fmt::Debug for WSD_SECURITY_CERT_VALIDATION_V1 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5279     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5280         fmt.debug_struct("WSD_SECURITY_CERT_VALIDATION_V1")
5281             .field("certMatchArray", &self.certMatchArray)
5282             .field("dwCertMatchArrayCount", &self.dwCertMatchArrayCount)
5283             .field("hCertMatchStore", &self.hCertMatchStore)
5284             .field("hCertIssuerStore", &self.hCertIssuerStore)
5285             .field("dwCertCheckOptions", &self.dwCertCheckOptions)
5286             .finish()
5287     }
5288 }
5289 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5290 impl ::std::cmp::PartialEq for WSD_SECURITY_CERT_VALIDATION_V1 {
eq(&self, other: &Self) -> bool5291     fn eq(&self, other: &Self) -> bool {
5292         self.certMatchArray == other.certMatchArray && self.dwCertMatchArrayCount == other.dwCertMatchArrayCount && self.hCertMatchStore == other.hCertMatchStore && self.hCertIssuerStore == other.hCertIssuerStore && self.dwCertCheckOptions == other.dwCertCheckOptions
5293     }
5294 }
5295 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5296 impl ::std::cmp::Eq for WSD_SECURITY_CERT_VALIDATION_V1 {}
5297 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5298 unsafe impl ::windows::runtime::Abi for WSD_SECURITY_CERT_VALIDATION_V1 {
5299     type Abi = Self;
5300     type DefaultType = Self;
5301 }
5302 pub const WSD_SECURITY_HTTP_AUTH_SCHEME_NEGOTIATE: u32 = 1u32;
5303 pub const WSD_SECURITY_HTTP_AUTH_SCHEME_NTLM: u32 = 2u32;
5304 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5305 #[repr(C)]
5306 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5307 pub struct WSD_SECURITY_SIGNATURE_VALIDATION {
5308     pub signingCertArray: *mut *mut super::super::Security::Cryptography::CERT_CONTEXT,
5309     pub dwSigningCertArrayCount: u32,
5310     pub hSigningCertStore: *mut ::std::ffi::c_void,
5311     pub dwFlags: u32,
5312 }
5313 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5314 impl WSD_SECURITY_SIGNATURE_VALIDATION {}
5315 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5316 impl ::std::default::Default for WSD_SECURITY_SIGNATURE_VALIDATION {
default() -> Self5317     fn default() -> Self {
5318         unsafe { ::std::mem::zeroed() }
5319     }
5320 }
5321 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5322 impl ::std::fmt::Debug for WSD_SECURITY_SIGNATURE_VALIDATION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5323     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5324         fmt.debug_struct("WSD_SECURITY_SIGNATURE_VALIDATION").field("signingCertArray", &self.signingCertArray).field("dwSigningCertArrayCount", &self.dwSigningCertArrayCount).field("hSigningCertStore", &self.hSigningCertStore).field("dwFlags", &self.dwFlags).finish()
5325     }
5326 }
5327 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5328 impl ::std::cmp::PartialEq for WSD_SECURITY_SIGNATURE_VALIDATION {
eq(&self, other: &Self) -> bool5329     fn eq(&self, other: &Self) -> bool {
5330         self.signingCertArray == other.signingCertArray && self.dwSigningCertArrayCount == other.dwSigningCertArrayCount && self.hSigningCertStore == other.hSigningCertStore && self.dwFlags == other.dwFlags
5331     }
5332 }
5333 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5334 impl ::std::cmp::Eq for WSD_SECURITY_SIGNATURE_VALIDATION {}
5335 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_Cryptography"))]
5336 unsafe impl ::windows::runtime::Abi for WSD_SECURITY_SIGNATURE_VALIDATION {
5337     type Abi = Self;
5338     type DefaultType = Self;
5339 }
5340 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5341 #[repr(C)]
5342 #[cfg(feature = "Win32_Foundation")]
5343 pub struct WSD_SERVICE_METADATA {
5344     pub EndpointReference: *mut WSD_ENDPOINT_REFERENCE_LIST,
5345     pub Types: *mut WSD_NAME_LIST,
5346     pub ServiceId: super::super::Foundation::PWSTR,
5347     pub Any: *mut WSDXML_ELEMENT,
5348 }
5349 #[cfg(feature = "Win32_Foundation")]
5350 impl WSD_SERVICE_METADATA {}
5351 #[cfg(feature = "Win32_Foundation")]
5352 impl ::std::default::Default for WSD_SERVICE_METADATA {
default() -> Self5353     fn default() -> Self {
5354         unsafe { ::std::mem::zeroed() }
5355     }
5356 }
5357 #[cfg(feature = "Win32_Foundation")]
5358 impl ::std::fmt::Debug for WSD_SERVICE_METADATA {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5359     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5360         fmt.debug_struct("WSD_SERVICE_METADATA").field("EndpointReference", &self.EndpointReference).field("Types", &self.Types).field("ServiceId", &self.ServiceId).field("Any", &self.Any).finish()
5361     }
5362 }
5363 #[cfg(feature = "Win32_Foundation")]
5364 impl ::std::cmp::PartialEq for WSD_SERVICE_METADATA {
eq(&self, other: &Self) -> bool5365     fn eq(&self, other: &Self) -> bool {
5366         self.EndpointReference == other.EndpointReference && self.Types == other.Types && self.ServiceId == other.ServiceId && self.Any == other.Any
5367     }
5368 }
5369 #[cfg(feature = "Win32_Foundation")]
5370 impl ::std::cmp::Eq for WSD_SERVICE_METADATA {}
5371 #[cfg(feature = "Win32_Foundation")]
5372 unsafe impl ::windows::runtime::Abi for WSD_SERVICE_METADATA {
5373     type Abi = Self;
5374     type DefaultType = Self;
5375 }
5376 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5377 #[repr(C)]
5378 #[cfg(feature = "Win32_Foundation")]
5379 pub struct WSD_SERVICE_METADATA_LIST {
5380     pub Next: *mut WSD_SERVICE_METADATA_LIST,
5381     pub Element: *mut WSD_SERVICE_METADATA,
5382 }
5383 #[cfg(feature = "Win32_Foundation")]
5384 impl WSD_SERVICE_METADATA_LIST {}
5385 #[cfg(feature = "Win32_Foundation")]
5386 impl ::std::default::Default for WSD_SERVICE_METADATA_LIST {
default() -> Self5387     fn default() -> Self {
5388         unsafe { ::std::mem::zeroed() }
5389     }
5390 }
5391 #[cfg(feature = "Win32_Foundation")]
5392 impl ::std::fmt::Debug for WSD_SERVICE_METADATA_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5393     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5394         fmt.debug_struct("WSD_SERVICE_METADATA_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
5395     }
5396 }
5397 #[cfg(feature = "Win32_Foundation")]
5398 impl ::std::cmp::PartialEq for WSD_SERVICE_METADATA_LIST {
eq(&self, other: &Self) -> bool5399     fn eq(&self, other: &Self) -> bool {
5400         self.Next == other.Next && self.Element == other.Element
5401     }
5402 }
5403 #[cfg(feature = "Win32_Foundation")]
5404 impl ::std::cmp::Eq for WSD_SERVICE_METADATA_LIST {}
5405 #[cfg(feature = "Win32_Foundation")]
5406 unsafe impl ::windows::runtime::Abi for WSD_SERVICE_METADATA_LIST {
5407     type Abi = Self;
5408     type DefaultType = Self;
5409 }
5410 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5411 #[repr(C)]
5412 #[cfg(feature = "Win32_Foundation")]
5413 pub struct WSD_SOAP_FAULT {
5414     pub Code: *mut WSD_SOAP_FAULT_CODE,
5415     pub Reason: *mut WSD_SOAP_FAULT_REASON,
5416     pub Node: super::super::Foundation::PWSTR,
5417     pub Role: super::super::Foundation::PWSTR,
5418     pub Detail: *mut WSDXML_ELEMENT,
5419 }
5420 #[cfg(feature = "Win32_Foundation")]
5421 impl WSD_SOAP_FAULT {}
5422 #[cfg(feature = "Win32_Foundation")]
5423 impl ::std::default::Default for WSD_SOAP_FAULT {
default() -> Self5424     fn default() -> Self {
5425         unsafe { ::std::mem::zeroed() }
5426     }
5427 }
5428 #[cfg(feature = "Win32_Foundation")]
5429 impl ::std::fmt::Debug for WSD_SOAP_FAULT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5430     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5431         fmt.debug_struct("WSD_SOAP_FAULT").field("Code", &self.Code).field("Reason", &self.Reason).field("Node", &self.Node).field("Role", &self.Role).field("Detail", &self.Detail).finish()
5432     }
5433 }
5434 #[cfg(feature = "Win32_Foundation")]
5435 impl ::std::cmp::PartialEq for WSD_SOAP_FAULT {
eq(&self, other: &Self) -> bool5436     fn eq(&self, other: &Self) -> bool {
5437         self.Code == other.Code && self.Reason == other.Reason && self.Node == other.Node && self.Role == other.Role && self.Detail == other.Detail
5438     }
5439 }
5440 #[cfg(feature = "Win32_Foundation")]
5441 impl ::std::cmp::Eq for WSD_SOAP_FAULT {}
5442 #[cfg(feature = "Win32_Foundation")]
5443 unsafe impl ::windows::runtime::Abi for WSD_SOAP_FAULT {
5444     type Abi = Self;
5445     type DefaultType = Self;
5446 }
5447 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5448 #[repr(C)]
5449 #[cfg(feature = "Win32_Foundation")]
5450 pub struct WSD_SOAP_FAULT_CODE {
5451     pub Value: *mut WSDXML_NAME,
5452     pub Subcode: *mut WSD_SOAP_FAULT_SUBCODE,
5453 }
5454 #[cfg(feature = "Win32_Foundation")]
5455 impl WSD_SOAP_FAULT_CODE {}
5456 #[cfg(feature = "Win32_Foundation")]
5457 impl ::std::default::Default for WSD_SOAP_FAULT_CODE {
default() -> Self5458     fn default() -> Self {
5459         unsafe { ::std::mem::zeroed() }
5460     }
5461 }
5462 #[cfg(feature = "Win32_Foundation")]
5463 impl ::std::fmt::Debug for WSD_SOAP_FAULT_CODE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5464     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5465         fmt.debug_struct("WSD_SOAP_FAULT_CODE").field("Value", &self.Value).field("Subcode", &self.Subcode).finish()
5466     }
5467 }
5468 #[cfg(feature = "Win32_Foundation")]
5469 impl ::std::cmp::PartialEq for WSD_SOAP_FAULT_CODE {
eq(&self, other: &Self) -> bool5470     fn eq(&self, other: &Self) -> bool {
5471         self.Value == other.Value && self.Subcode == other.Subcode
5472     }
5473 }
5474 #[cfg(feature = "Win32_Foundation")]
5475 impl ::std::cmp::Eq for WSD_SOAP_FAULT_CODE {}
5476 #[cfg(feature = "Win32_Foundation")]
5477 unsafe impl ::windows::runtime::Abi for WSD_SOAP_FAULT_CODE {
5478     type Abi = Self;
5479     type DefaultType = Self;
5480 }
5481 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5482 #[repr(C)]
5483 #[cfg(feature = "Win32_Foundation")]
5484 pub struct WSD_SOAP_FAULT_REASON {
5485     pub Text: *mut WSD_LOCALIZED_STRING_LIST,
5486 }
5487 #[cfg(feature = "Win32_Foundation")]
5488 impl WSD_SOAP_FAULT_REASON {}
5489 #[cfg(feature = "Win32_Foundation")]
5490 impl ::std::default::Default for WSD_SOAP_FAULT_REASON {
default() -> Self5491     fn default() -> Self {
5492         unsafe { ::std::mem::zeroed() }
5493     }
5494 }
5495 #[cfg(feature = "Win32_Foundation")]
5496 impl ::std::fmt::Debug for WSD_SOAP_FAULT_REASON {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5497     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5498         fmt.debug_struct("WSD_SOAP_FAULT_REASON").field("Text", &self.Text).finish()
5499     }
5500 }
5501 #[cfg(feature = "Win32_Foundation")]
5502 impl ::std::cmp::PartialEq for WSD_SOAP_FAULT_REASON {
eq(&self, other: &Self) -> bool5503     fn eq(&self, other: &Self) -> bool {
5504         self.Text == other.Text
5505     }
5506 }
5507 #[cfg(feature = "Win32_Foundation")]
5508 impl ::std::cmp::Eq for WSD_SOAP_FAULT_REASON {}
5509 #[cfg(feature = "Win32_Foundation")]
5510 unsafe impl ::windows::runtime::Abi for WSD_SOAP_FAULT_REASON {
5511     type Abi = Self;
5512     type DefaultType = Self;
5513 }
5514 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5515 #[repr(C)]
5516 #[cfg(feature = "Win32_Foundation")]
5517 pub struct WSD_SOAP_FAULT_SUBCODE {
5518     pub Value: *mut WSDXML_NAME,
5519     pub Subcode: *mut WSD_SOAP_FAULT_SUBCODE,
5520 }
5521 #[cfg(feature = "Win32_Foundation")]
5522 impl WSD_SOAP_FAULT_SUBCODE {}
5523 #[cfg(feature = "Win32_Foundation")]
5524 impl ::std::default::Default for WSD_SOAP_FAULT_SUBCODE {
default() -> Self5525     fn default() -> Self {
5526         unsafe { ::std::mem::zeroed() }
5527     }
5528 }
5529 #[cfg(feature = "Win32_Foundation")]
5530 impl ::std::fmt::Debug for WSD_SOAP_FAULT_SUBCODE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5531     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5532         fmt.debug_struct("WSD_SOAP_FAULT_SUBCODE").field("Value", &self.Value).field("Subcode", &self.Subcode).finish()
5533     }
5534 }
5535 #[cfg(feature = "Win32_Foundation")]
5536 impl ::std::cmp::PartialEq for WSD_SOAP_FAULT_SUBCODE {
eq(&self, other: &Self) -> bool5537     fn eq(&self, other: &Self) -> bool {
5538         self.Value == other.Value && self.Subcode == other.Subcode
5539     }
5540 }
5541 #[cfg(feature = "Win32_Foundation")]
5542 impl ::std::cmp::Eq for WSD_SOAP_FAULT_SUBCODE {}
5543 #[cfg(feature = "Win32_Foundation")]
5544 unsafe impl ::windows::runtime::Abi for WSD_SOAP_FAULT_SUBCODE {
5545     type Abi = Self;
5546     type DefaultType = Self;
5547 }
5548 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5549 #[repr(C)]
5550 #[cfg(feature = "Win32_Foundation")]
5551 pub struct WSD_SOAP_HEADER {
5552     pub To: super::super::Foundation::PWSTR,
5553     pub Action: super::super::Foundation::PWSTR,
5554     pub MessageID: super::super::Foundation::PWSTR,
5555     pub RelatesTo: WSD_HEADER_RELATESTO,
5556     pub ReplyTo: *mut WSD_ENDPOINT_REFERENCE,
5557     pub From: *mut WSD_ENDPOINT_REFERENCE,
5558     pub FaultTo: *mut WSD_ENDPOINT_REFERENCE,
5559     pub AppSequence: *mut WSD_APP_SEQUENCE,
5560     pub AnyHeaders: *mut WSDXML_ELEMENT,
5561 }
5562 #[cfg(feature = "Win32_Foundation")]
5563 impl WSD_SOAP_HEADER {}
5564 #[cfg(feature = "Win32_Foundation")]
5565 impl ::std::default::Default for WSD_SOAP_HEADER {
default() -> Self5566     fn default() -> Self {
5567         unsafe { ::std::mem::zeroed() }
5568     }
5569 }
5570 #[cfg(feature = "Win32_Foundation")]
5571 impl ::std::fmt::Debug for WSD_SOAP_HEADER {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5572     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5573         fmt.debug_struct("WSD_SOAP_HEADER")
5574             .field("To", &self.To)
5575             .field("Action", &self.Action)
5576             .field("MessageID", &self.MessageID)
5577             .field("RelatesTo", &self.RelatesTo)
5578             .field("ReplyTo", &self.ReplyTo)
5579             .field("From", &self.From)
5580             .field("FaultTo", &self.FaultTo)
5581             .field("AppSequence", &self.AppSequence)
5582             .field("AnyHeaders", &self.AnyHeaders)
5583             .finish()
5584     }
5585 }
5586 #[cfg(feature = "Win32_Foundation")]
5587 impl ::std::cmp::PartialEq for WSD_SOAP_HEADER {
eq(&self, other: &Self) -> bool5588     fn eq(&self, other: &Self) -> bool {
5589         self.To == other.To && self.Action == other.Action && self.MessageID == other.MessageID && self.RelatesTo == other.RelatesTo && self.ReplyTo == other.ReplyTo && self.From == other.From && self.FaultTo == other.FaultTo && self.AppSequence == other.AppSequence && self.AnyHeaders == other.AnyHeaders
5590     }
5591 }
5592 #[cfg(feature = "Win32_Foundation")]
5593 impl ::std::cmp::Eq for WSD_SOAP_HEADER {}
5594 #[cfg(feature = "Win32_Foundation")]
5595 unsafe impl ::windows::runtime::Abi for WSD_SOAP_HEADER {
5596     type Abi = Self;
5597     type DefaultType = Self;
5598 }
5599 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5600 #[repr(C)]
5601 #[cfg(feature = "Win32_Foundation")]
5602 pub struct WSD_SOAP_MESSAGE {
5603     pub Header: WSD_SOAP_HEADER,
5604     pub Body: *mut ::std::ffi::c_void,
5605     pub BodyType: *mut WSDXML_TYPE,
5606 }
5607 #[cfg(feature = "Win32_Foundation")]
5608 impl WSD_SOAP_MESSAGE {}
5609 #[cfg(feature = "Win32_Foundation")]
5610 impl ::std::default::Default for WSD_SOAP_MESSAGE {
default() -> Self5611     fn default() -> Self {
5612         unsafe { ::std::mem::zeroed() }
5613     }
5614 }
5615 #[cfg(feature = "Win32_Foundation")]
5616 impl ::std::fmt::Debug for WSD_SOAP_MESSAGE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5617     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5618         fmt.debug_struct("WSD_SOAP_MESSAGE").field("Header", &self.Header).field("Body", &self.Body).field("BodyType", &self.BodyType).finish()
5619     }
5620 }
5621 #[cfg(feature = "Win32_Foundation")]
5622 impl ::std::cmp::PartialEq for WSD_SOAP_MESSAGE {
eq(&self, other: &Self) -> bool5623     fn eq(&self, other: &Self) -> bool {
5624         self.Header == other.Header && self.Body == other.Body && self.BodyType == other.BodyType
5625     }
5626 }
5627 #[cfg(feature = "Win32_Foundation")]
5628 impl ::std::cmp::Eq for WSD_SOAP_MESSAGE {}
5629 #[cfg(feature = "Win32_Foundation")]
5630 unsafe impl ::windows::runtime::Abi for WSD_SOAP_MESSAGE {
5631     type Abi = Self;
5632     type DefaultType = Self;
5633 }
5634 #[cfg(feature = "Win32_Foundation")]
5635 pub type WSD_STUB_FUNCTION = unsafe extern "system" fn(server: ::windows::runtime::RawPtr, session: ::windows::runtime::RawPtr, event: *mut ::std::mem::ManuallyDrop<WSD_EVENT>) -> ::windows::runtime::HRESULT;
5636 #[derive(:: std :: clone :: Clone)]
5637 #[repr(C)]
5638 #[cfg(feature = "Win32_Foundation")]
5639 pub struct WSD_SYNCHRONOUS_RESPONSE_CONTEXT {
5640     pub hr: ::windows::runtime::HRESULT,
5641     pub eventHandle: super::super::Foundation::HANDLE,
5642     pub messageParameters: ::std::option::Option<IWSDMessageParameters>,
5643     pub results: *mut ::std::ffi::c_void,
5644 }
5645 #[cfg(feature = "Win32_Foundation")]
5646 impl WSD_SYNCHRONOUS_RESPONSE_CONTEXT {}
5647 #[cfg(feature = "Win32_Foundation")]
5648 impl ::std::default::Default for WSD_SYNCHRONOUS_RESPONSE_CONTEXT {
default() -> Self5649     fn default() -> Self {
5650         unsafe { ::std::mem::zeroed() }
5651     }
5652 }
5653 #[cfg(feature = "Win32_Foundation")]
5654 impl ::std::fmt::Debug for WSD_SYNCHRONOUS_RESPONSE_CONTEXT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5655     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5656         fmt.debug_struct("WSD_SYNCHRONOUS_RESPONSE_CONTEXT").field("hr", &self.hr).field("eventHandle", &self.eventHandle).field("messageParameters", &self.messageParameters).field("results", &self.results).finish()
5657     }
5658 }
5659 #[cfg(feature = "Win32_Foundation")]
5660 impl ::std::cmp::PartialEq for WSD_SYNCHRONOUS_RESPONSE_CONTEXT {
eq(&self, other: &Self) -> bool5661     fn eq(&self, other: &Self) -> bool {
5662         self.hr == other.hr && self.eventHandle == other.eventHandle && self.messageParameters == other.messageParameters && self.results == other.results
5663     }
5664 }
5665 #[cfg(feature = "Win32_Foundation")]
5666 impl ::std::cmp::Eq for WSD_SYNCHRONOUS_RESPONSE_CONTEXT {}
5667 #[cfg(feature = "Win32_Foundation")]
5668 unsafe impl ::windows::runtime::Abi for WSD_SYNCHRONOUS_RESPONSE_CONTEXT {
5669     type Abi = ::std::mem::ManuallyDrop<Self>;
5670     type DefaultType = Self;
5671 }
5672 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5673 #[repr(C)]
5674 #[cfg(feature = "Win32_Foundation")]
5675 pub struct WSD_THIS_DEVICE_METADATA {
5676     pub FriendlyName: *mut WSD_LOCALIZED_STRING_LIST,
5677     pub FirmwareVersion: super::super::Foundation::PWSTR,
5678     pub SerialNumber: super::super::Foundation::PWSTR,
5679     pub Any: *mut WSDXML_ELEMENT,
5680 }
5681 #[cfg(feature = "Win32_Foundation")]
5682 impl WSD_THIS_DEVICE_METADATA {}
5683 #[cfg(feature = "Win32_Foundation")]
5684 impl ::std::default::Default for WSD_THIS_DEVICE_METADATA {
default() -> Self5685     fn default() -> Self {
5686         unsafe { ::std::mem::zeroed() }
5687     }
5688 }
5689 #[cfg(feature = "Win32_Foundation")]
5690 impl ::std::fmt::Debug for WSD_THIS_DEVICE_METADATA {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5691     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5692         fmt.debug_struct("WSD_THIS_DEVICE_METADATA").field("FriendlyName", &self.FriendlyName).field("FirmwareVersion", &self.FirmwareVersion).field("SerialNumber", &self.SerialNumber).field("Any", &self.Any).finish()
5693     }
5694 }
5695 #[cfg(feature = "Win32_Foundation")]
5696 impl ::std::cmp::PartialEq for WSD_THIS_DEVICE_METADATA {
eq(&self, other: &Self) -> bool5697     fn eq(&self, other: &Self) -> bool {
5698         self.FriendlyName == other.FriendlyName && self.FirmwareVersion == other.FirmwareVersion && self.SerialNumber == other.SerialNumber && self.Any == other.Any
5699     }
5700 }
5701 #[cfg(feature = "Win32_Foundation")]
5702 impl ::std::cmp::Eq for WSD_THIS_DEVICE_METADATA {}
5703 #[cfg(feature = "Win32_Foundation")]
5704 unsafe impl ::windows::runtime::Abi for WSD_THIS_DEVICE_METADATA {
5705     type Abi = Self;
5706     type DefaultType = Self;
5707 }
5708 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5709 #[repr(C)]
5710 #[cfg(feature = "Win32_Foundation")]
5711 pub struct WSD_THIS_MODEL_METADATA {
5712     pub Manufacturer: *mut WSD_LOCALIZED_STRING_LIST,
5713     pub ManufacturerUrl: super::super::Foundation::PWSTR,
5714     pub ModelName: *mut WSD_LOCALIZED_STRING_LIST,
5715     pub ModelNumber: super::super::Foundation::PWSTR,
5716     pub ModelUrl: super::super::Foundation::PWSTR,
5717     pub PresentationUrl: super::super::Foundation::PWSTR,
5718     pub Any: *mut WSDXML_ELEMENT,
5719 }
5720 #[cfg(feature = "Win32_Foundation")]
5721 impl WSD_THIS_MODEL_METADATA {}
5722 #[cfg(feature = "Win32_Foundation")]
5723 impl ::std::default::Default for WSD_THIS_MODEL_METADATA {
default() -> Self5724     fn default() -> Self {
5725         unsafe { ::std::mem::zeroed() }
5726     }
5727 }
5728 #[cfg(feature = "Win32_Foundation")]
5729 impl ::std::fmt::Debug for WSD_THIS_MODEL_METADATA {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5730     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5731         fmt.debug_struct("WSD_THIS_MODEL_METADATA")
5732             .field("Manufacturer", &self.Manufacturer)
5733             .field("ManufacturerUrl", &self.ManufacturerUrl)
5734             .field("ModelName", &self.ModelName)
5735             .field("ModelNumber", &self.ModelNumber)
5736             .field("ModelUrl", &self.ModelUrl)
5737             .field("PresentationUrl", &self.PresentationUrl)
5738             .field("Any", &self.Any)
5739             .finish()
5740     }
5741 }
5742 #[cfg(feature = "Win32_Foundation")]
5743 impl ::std::cmp::PartialEq for WSD_THIS_MODEL_METADATA {
eq(&self, other: &Self) -> bool5744     fn eq(&self, other: &Self) -> bool {
5745         self.Manufacturer == other.Manufacturer && self.ManufacturerUrl == other.ManufacturerUrl && self.ModelName == other.ModelName && self.ModelNumber == other.ModelNumber && self.ModelUrl == other.ModelUrl && self.PresentationUrl == other.PresentationUrl && self.Any == other.Any
5746     }
5747 }
5748 #[cfg(feature = "Win32_Foundation")]
5749 impl ::std::cmp::Eq for WSD_THIS_MODEL_METADATA {}
5750 #[cfg(feature = "Win32_Foundation")]
5751 unsafe impl ::windows::runtime::Abi for WSD_THIS_MODEL_METADATA {
5752     type Abi = Self;
5753     type DefaultType = Self;
5754 }
5755 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5756 #[repr(C)]
5757 #[cfg(feature = "Win32_Foundation")]
5758 pub struct WSD_UNKNOWN_LOOKUP {
5759     pub Any: *mut WSDXML_ELEMENT,
5760 }
5761 #[cfg(feature = "Win32_Foundation")]
5762 impl WSD_UNKNOWN_LOOKUP {}
5763 #[cfg(feature = "Win32_Foundation")]
5764 impl ::std::default::Default for WSD_UNKNOWN_LOOKUP {
default() -> Self5765     fn default() -> Self {
5766         unsafe { ::std::mem::zeroed() }
5767     }
5768 }
5769 #[cfg(feature = "Win32_Foundation")]
5770 impl ::std::fmt::Debug for WSD_UNKNOWN_LOOKUP {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5771     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5772         fmt.debug_struct("WSD_UNKNOWN_LOOKUP").field("Any", &self.Any).finish()
5773     }
5774 }
5775 #[cfg(feature = "Win32_Foundation")]
5776 impl ::std::cmp::PartialEq for WSD_UNKNOWN_LOOKUP {
eq(&self, other: &Self) -> bool5777     fn eq(&self, other: &Self) -> bool {
5778         self.Any == other.Any
5779     }
5780 }
5781 #[cfg(feature = "Win32_Foundation")]
5782 impl ::std::cmp::Eq for WSD_UNKNOWN_LOOKUP {}
5783 #[cfg(feature = "Win32_Foundation")]
5784 unsafe impl ::windows::runtime::Abi for WSD_UNKNOWN_LOOKUP {
5785     type Abi = Self;
5786     type DefaultType = Self;
5787 }
5788 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
5789 #[repr(C)]
5790 #[cfg(feature = "Win32_Foundation")]
5791 pub struct WSD_URI_LIST {
5792     pub Next: *mut WSD_URI_LIST,
5793     pub Element: super::super::Foundation::PWSTR,
5794 }
5795 #[cfg(feature = "Win32_Foundation")]
5796 impl WSD_URI_LIST {}
5797 #[cfg(feature = "Win32_Foundation")]
5798 impl ::std::default::Default for WSD_URI_LIST {
default() -> Self5799     fn default() -> Self {
5800         unsafe { ::std::mem::zeroed() }
5801     }
5802 }
5803 #[cfg(feature = "Win32_Foundation")]
5804 impl ::std::fmt::Debug for WSD_URI_LIST {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result5805     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5806         fmt.debug_struct("WSD_URI_LIST").field("Next", &self.Next).field("Element", &self.Element).finish()
5807     }
5808 }
5809 #[cfg(feature = "Win32_Foundation")]
5810 impl ::std::cmp::PartialEq for WSD_URI_LIST {
eq(&self, other: &Self) -> bool5811     fn eq(&self, other: &Self) -> bool {
5812         self.Next == other.Next && self.Element == other.Element
5813     }
5814 }
5815 #[cfg(feature = "Win32_Foundation")]
5816 impl ::std::cmp::Eq for WSD_URI_LIST {}
5817 #[cfg(feature = "Win32_Foundation")]
5818 unsafe impl ::windows::runtime::Abi for WSD_URI_LIST {
5819     type Abi = Self;
5820     type DefaultType = Self;
5821 }
5822