1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 pub struct ApiInformation {}
3 impl ApiInformation {
IsTypePresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0) -> ::windows::runtime::Result<bool>4     pub fn IsTypePresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0) -> ::windows::runtime::Result<bool> {
5         Self::IApiInformationStatics(|this| unsafe {
6             let mut result__: bool = ::std::mem::zeroed();
7             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), typename.into_param().abi(), &mut result__).from_abi::<bool>(result__)
8         })
9     }
IsMethodPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, methodname: Param1) -> ::windows::runtime::Result<bool>10     pub fn IsMethodPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, methodname: Param1) -> ::windows::runtime::Result<bool> {
11         Self::IApiInformationStatics(|this| unsafe {
12             let mut result__: bool = ::std::mem::zeroed();
13             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), typename.into_param().abi(), methodname.into_param().abi(), &mut result__).from_abi::<bool>(result__)
14         })
15     }
IsMethodPresentWithArity<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, methodname: Param1, inputparametercount: u32) -> ::windows::runtime::Result<bool>16     pub fn IsMethodPresentWithArity<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, methodname: Param1, inputparametercount: u32) -> ::windows::runtime::Result<bool> {
17         Self::IApiInformationStatics(|this| unsafe {
18             let mut result__: bool = ::std::mem::zeroed();
19             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), typename.into_param().abi(), methodname.into_param().abi(), inputparametercount, &mut result__).from_abi::<bool>(result__)
20         })
21     }
IsEventPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, eventname: Param1) -> ::windows::runtime::Result<bool>22     pub fn IsEventPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, eventname: Param1) -> ::windows::runtime::Result<bool> {
23         Self::IApiInformationStatics(|this| unsafe {
24             let mut result__: bool = ::std::mem::zeroed();
25             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), typename.into_param().abi(), eventname.into_param().abi(), &mut result__).from_abi::<bool>(result__)
26         })
27     }
IsPropertyPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, propertyname: Param1) -> ::windows::runtime::Result<bool>28     pub fn IsPropertyPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, propertyname: Param1) -> ::windows::runtime::Result<bool> {
29         Self::IApiInformationStatics(|this| unsafe {
30             let mut result__: bool = ::std::mem::zeroed();
31             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), typename.into_param().abi(), propertyname.into_param().abi(), &mut result__).from_abi::<bool>(result__)
32         })
33     }
IsReadOnlyPropertyPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, propertyname: Param1) -> ::windows::runtime::Result<bool>34     pub fn IsReadOnlyPropertyPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, propertyname: Param1) -> ::windows::runtime::Result<bool> {
35         Self::IApiInformationStatics(|this| unsafe {
36             let mut result__: bool = ::std::mem::zeroed();
37             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), typename.into_param().abi(), propertyname.into_param().abi(), &mut result__).from_abi::<bool>(result__)
38         })
39     }
IsWriteablePropertyPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, propertyname: Param1) -> ::windows::runtime::Result<bool>40     pub fn IsWriteablePropertyPresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(typename: Param0, propertyname: Param1) -> ::windows::runtime::Result<bool> {
41         Self::IApiInformationStatics(|this| unsafe {
42             let mut result__: bool = ::std::mem::zeroed();
43             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), typename.into_param().abi(), propertyname.into_param().abi(), &mut result__).from_abi::<bool>(result__)
44         })
45     }
IsEnumNamedValuePresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(enumtypename: Param0, valuename: Param1) -> ::windows::runtime::Result<bool>46     pub fn IsEnumNamedValuePresent<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(enumtypename: Param0, valuename: Param1) -> ::windows::runtime::Result<bool> {
47         Self::IApiInformationStatics(|this| unsafe {
48             let mut result__: bool = ::std::mem::zeroed();
49             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), enumtypename.into_param().abi(), valuename.into_param().abi(), &mut result__).from_abi::<bool>(result__)
50         })
51     }
IsApiContractPresentByMajor<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(contractname: Param0, majorversion: u16) -> ::windows::runtime::Result<bool>52     pub fn IsApiContractPresentByMajor<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(contractname: Param0, majorversion: u16) -> ::windows::runtime::Result<bool> {
53         Self::IApiInformationStatics(|this| unsafe {
54             let mut result__: bool = ::std::mem::zeroed();
55             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), contractname.into_param().abi(), majorversion, &mut result__).from_abi::<bool>(result__)
56         })
57     }
IsApiContractPresentByMajorAndMinor<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(contractname: Param0, majorversion: u16, minorversion: u16) -> ::windows::runtime::Result<bool>58     pub fn IsApiContractPresentByMajorAndMinor<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(contractname: Param0, majorversion: u16, minorversion: u16) -> ::windows::runtime::Result<bool> {
59         Self::IApiInformationStatics(|this| unsafe {
60             let mut result__: bool = ::std::mem::zeroed();
61             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), contractname.into_param().abi(), majorversion, minorversion, &mut result__).from_abi::<bool>(result__)
62         })
63     }
IApiInformationStatics<R, F: FnOnce(&IApiInformationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>64     pub fn IApiInformationStatics<R, F: FnOnce(&IApiInformationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
65         static mut SHARED: ::windows::runtime::FactoryCache<ApiInformation, IApiInformationStatics> = ::windows::runtime::FactoryCache::new();
66         unsafe { SHARED.call(callback) }
67     }
68 }
69 impl ::windows::runtime::RuntimeName for ApiInformation {
70     const NAME: &'static str = "Windows.Foundation.Metadata.ApiInformation";
71 }
72 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
73 #[repr(transparent)]
74 pub struct AttributeTargets(pub u32);
75 impl AttributeTargets {
76     pub const All: AttributeTargets = AttributeTargets(4294967295u32);
77     pub const Delegate: AttributeTargets = AttributeTargets(1u32);
78     pub const Enum: AttributeTargets = AttributeTargets(2u32);
79     pub const Event: AttributeTargets = AttributeTargets(4u32);
80     pub const Field: AttributeTargets = AttributeTargets(8u32);
81     pub const Interface: AttributeTargets = AttributeTargets(16u32);
82     pub const Method: AttributeTargets = AttributeTargets(64u32);
83     pub const Parameter: AttributeTargets = AttributeTargets(128u32);
84     pub const Property: AttributeTargets = AttributeTargets(256u32);
85     pub const RuntimeClass: AttributeTargets = AttributeTargets(512u32);
86     pub const Struct: AttributeTargets = AttributeTargets(1024u32);
87     pub const InterfaceImpl: AttributeTargets = AttributeTargets(2048u32);
88     pub const ApiContract: AttributeTargets = AttributeTargets(8192u32);
89 }
90 impl ::std::convert::From<u32> for AttributeTargets {
from(value: u32) -> Self91     fn from(value: u32) -> Self {
92         Self(value)
93     }
94 }
95 unsafe impl ::windows::runtime::Abi for AttributeTargets {
96     type Abi = Self;
97     type DefaultType = Self;
98 }
99 unsafe impl ::windows::runtime::RuntimeType for AttributeTargets {
100     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.AttributeTargets;u4)");
101 }
102 impl ::std::ops::BitOr for AttributeTargets {
103     type Output = Self;
bitor(self, rhs: Self) -> Self104     fn bitor(self, rhs: Self) -> Self {
105         Self(self.0 | rhs.0)
106     }
107 }
108 impl ::std::ops::BitAnd for AttributeTargets {
109     type Output = Self;
bitand(self, rhs: Self) -> Self110     fn bitand(self, rhs: Self) -> Self {
111         Self(self.0 & rhs.0)
112     }
113 }
114 impl ::std::ops::BitOrAssign for AttributeTargets {
bitor_assign(&mut self, rhs: Self)115     fn bitor_assign(&mut self, rhs: Self) {
116         self.0.bitor_assign(rhs.0)
117     }
118 }
119 impl ::std::ops::BitAndAssign for AttributeTargets {
bitand_assign(&mut self, rhs: Self)120     fn bitand_assign(&mut self, rhs: Self) {
121         self.0.bitand_assign(rhs.0)
122     }
123 }
124 impl ::std::ops::Not for AttributeTargets {
125     type Output = Self;
not(self) -> Self126     fn not(self) -> Self {
127         Self(self.0.not())
128     }
129 }
130 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
131 #[repr(transparent)]
132 pub struct CompositionType(pub i32);
133 impl CompositionType {
134     pub const Protected: CompositionType = CompositionType(1i32);
135     pub const Public: CompositionType = CompositionType(2i32);
136 }
137 impl ::std::convert::From<i32> for CompositionType {
from(value: i32) -> Self138     fn from(value: i32) -> Self {
139         Self(value)
140     }
141 }
142 unsafe impl ::windows::runtime::Abi for CompositionType {
143     type Abi = Self;
144     type DefaultType = Self;
145 }
146 unsafe impl ::windows::runtime::RuntimeType for CompositionType {
147     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.CompositionType;i4)");
148 }
149 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
150 #[repr(transparent)]
151 pub struct DeprecationType(pub i32);
152 impl DeprecationType {
153     pub const Deprecate: DeprecationType = DeprecationType(0i32);
154     pub const Remove: DeprecationType = DeprecationType(1i32);
155 }
156 impl ::std::convert::From<i32> for DeprecationType {
from(value: i32) -> Self157     fn from(value: i32) -> Self {
158         Self(value)
159     }
160 }
161 unsafe impl ::windows::runtime::Abi for DeprecationType {
162     type Abi = Self;
163     type DefaultType = Self;
164 }
165 unsafe impl ::windows::runtime::RuntimeType for DeprecationType {
166     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.DeprecationType;i4)");
167 }
168 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
169 #[repr(transparent)]
170 pub struct FeatureStage(pub i32);
171 impl FeatureStage {
172     pub const AlwaysDisabled: FeatureStage = FeatureStage(0i32);
173     pub const DisabledByDefault: FeatureStage = FeatureStage(1i32);
174     pub const EnabledByDefault: FeatureStage = FeatureStage(2i32);
175     pub const AlwaysEnabled: FeatureStage = FeatureStage(3i32);
176 }
177 impl ::std::convert::From<i32> for FeatureStage {
from(value: i32) -> Self178     fn from(value: i32) -> Self {
179         Self(value)
180     }
181 }
182 unsafe impl ::windows::runtime::Abi for FeatureStage {
183     type Abi = Self;
184     type DefaultType = Self;
185 }
186 unsafe impl ::windows::runtime::RuntimeType for FeatureStage {
187     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.FeatureStage;i4)");
188 }
189 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
190 #[repr(transparent)]
191 pub struct GCPressureAmount(pub i32);
192 impl GCPressureAmount {
193     pub const Low: GCPressureAmount = GCPressureAmount(0i32);
194     pub const Medium: GCPressureAmount = GCPressureAmount(1i32);
195     pub const High: GCPressureAmount = GCPressureAmount(2i32);
196 }
197 impl ::std::convert::From<i32> for GCPressureAmount {
from(value: i32) -> Self198     fn from(value: i32) -> Self {
199         Self(value)
200     }
201 }
202 unsafe impl ::windows::runtime::Abi for GCPressureAmount {
203     type Abi = Self;
204     type DefaultType = Self;
205 }
206 unsafe impl ::windows::runtime::RuntimeType for GCPressureAmount {
207     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.GCPressureAmount;i4)");
208 }
209 #[repr(transparent)]
210 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
211 #[doc(hidden)]
212 pub struct IApiInformationStatics(::windows::runtime::IInspectable);
213 unsafe impl ::windows::runtime::Interface for IApiInformationStatics {
214     type Vtable = IApiInformationStatics_abi;
215     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2574531070, 63105, 18961, [180, 22, 193, 58, 71, 232, 186, 54]);
216 }
217 #[repr(C)]
218 #[doc(hidden)]
219 pub struct IApiInformationStatics_abi(
220     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
221     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
222     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
223     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
224     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
225     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
226     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
227     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, methodname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
228     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, methodname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, inputparametercount: u32, result__: *mut bool) -> ::windows::runtime::HRESULT,
229     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, eventname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
230     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, propertyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
231     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, propertyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
232     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, propertyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
233     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, enumtypename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, valuename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
234     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, contractname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, majorversion: u16, result__: *mut bool) -> ::windows::runtime::HRESULT,
235     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, contractname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, majorversion: u16, minorversion: u16, result__: *mut bool) -> ::windows::runtime::HRESULT,
236 );
237 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
238 #[repr(transparent)]
239 pub struct MarshalingType(pub i32);
240 impl MarshalingType {
241     pub const None: MarshalingType = MarshalingType(1i32);
242     pub const Agile: MarshalingType = MarshalingType(2i32);
243     pub const Standard: MarshalingType = MarshalingType(3i32);
244     pub const InvalidMarshaling: MarshalingType = MarshalingType(0i32);
245 }
246 impl ::std::convert::From<i32> for MarshalingType {
from(value: i32) -> Self247     fn from(value: i32) -> Self {
248         Self(value)
249     }
250 }
251 unsafe impl ::windows::runtime::Abi for MarshalingType {
252     type Abi = Self;
253     type DefaultType = Self;
254 }
255 unsafe impl ::windows::runtime::RuntimeType for MarshalingType {
256     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.MarshalingType;i4)");
257 }
258 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
259 #[repr(transparent)]
260 pub struct Platform(pub i32);
261 impl Platform {
262     pub const Windows: Platform = Platform(0i32);
263     pub const WindowsPhone: Platform = Platform(1i32);
264 }
265 impl ::std::convert::From<i32> for Platform {
from(value: i32) -> Self266     fn from(value: i32) -> Self {
267         Self(value)
268     }
269 }
270 unsafe impl ::windows::runtime::Abi for Platform {
271     type Abi = Self;
272     type DefaultType = Self;
273 }
274 unsafe impl ::windows::runtime::RuntimeType for Platform {
275     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.Platform;i4)");
276 }
277 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
278 #[repr(transparent)]
279 pub struct ThreadingModel(pub i32);
280 impl ThreadingModel {
281     pub const STA: ThreadingModel = ThreadingModel(1i32);
282     pub const MTA: ThreadingModel = ThreadingModel(2i32);
283     pub const Both: ThreadingModel = ThreadingModel(3i32);
284     pub const InvalidThreading: ThreadingModel = ThreadingModel(0i32);
285 }
286 impl ::std::convert::From<i32> for ThreadingModel {
from(value: i32) -> Self287     fn from(value: i32) -> Self {
288         Self(value)
289     }
290 }
291 unsafe impl ::windows::runtime::Abi for ThreadingModel {
292     type Abi = Self;
293     type DefaultType = Self;
294 }
295 unsafe impl ::windows::runtime::RuntimeType for ThreadingModel {
296     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Foundation.Metadata.ThreadingModel;i4)");
297 }
298