1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 pub const CLSID_IITCmdInt: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883618, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
3 pub const CLSID_IITDatabase: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1718039634, 35875, 4560, [168, 78, 0, 170, 0, 108, 125, 1]);
4 pub const CLSID_IITDatabaseLocal: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883625, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
5 pub const CLSID_IITGroupUpdate: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883620, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
6 pub const CLSID_IITIndexBuild: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2409682346, 57055, 4560, [154, 97, 0, 192, 79, 182, 139, 247]);
7 pub const CLSID_IITPropList: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883630, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
8 pub const CLSID_IITResultSet: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883623, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
9 pub const CLSID_IITSvMgr: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883619, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
10 pub const CLSID_IITWWFilterBuild: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2409682347, 57055, 4560, [154, 97, 0, 192, 79, 182, 139, 247]);
11 pub const CLSID_IITWordWheel: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3610715586, 35858, 4560, [168, 78, 0, 170, 0, 108, 125, 1]);
12 pub const CLSID_IITWordWheelLocal: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883624, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
13 pub const CLSID_IITWordWheelUpdate: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883621, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
14 pub const CLSID_ITEngStemmer: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2409682344, 57055, 4560, [154, 97, 0, 192, 79, 182, 139, 247]);
15 pub const CLSID_ITStdBreaker: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1180883631, 54163, 4560, [154, 86, 0, 192, 79, 182, 139, 247]);
16 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
17 #[repr(C)]
18 pub struct COLUMNSTATUS {
19     pub cPropCount: i32,
20     pub cPropsLoaded: i32,
21 }
22 impl COLUMNSTATUS {}
23 impl ::std::default::Default for COLUMNSTATUS {
24     fn default() -> Self {
25         unsafe { ::std::mem::zeroed() }
26     }
27 }
28 impl ::std::fmt::Debug for COLUMNSTATUS {
29     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
30         fmt.debug_struct("COLUMNSTATUS").field("cPropCount", &self.cPropCount).field("cPropsLoaded", &self.cPropsLoaded).finish()
31     }
32 }
33 impl ::std::cmp::PartialEq for COLUMNSTATUS {
34     fn eq(&self, other: &Self) -> bool {
35         self.cPropCount == other.cPropCount && self.cPropsLoaded == other.cPropsLoaded
36     }
37 }
38 impl ::std::cmp::Eq for COLUMNSTATUS {}
39 unsafe impl ::windows::runtime::Abi for COLUMNSTATUS {
40     type Abi = Self;
41     type DefaultType = Self;
42 }
43 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
44 #[repr(C)]
45 #[cfg(feature = "Win32_Foundation")]
46 pub struct CProperty {
47     pub dwPropID: u32,
48     pub cbData: u32,
49     pub dwType: u32,
50     pub Anonymous: CProperty_0,
51     pub fPersist: super::super::Foundation::BOOL,
52 }
53 #[cfg(feature = "Win32_Foundation")]
54 impl CProperty {}
55 #[cfg(feature = "Win32_Foundation")]
56 impl ::std::default::Default for CProperty {
57     fn default() -> Self {
58         unsafe { ::std::mem::zeroed() }
59     }
60 }
61 #[cfg(feature = "Win32_Foundation")]
62 impl ::std::cmp::PartialEq for CProperty {
63     fn eq(&self, _other: &Self) -> bool {
64         unimplemented!()
65     }
66 }
67 #[cfg(feature = "Win32_Foundation")]
68 impl ::std::cmp::Eq for CProperty {}
69 #[cfg(feature = "Win32_Foundation")]
70 unsafe impl ::windows::runtime::Abi for CProperty {
71     type Abi = Self;
72     type DefaultType = Self;
73 }
74 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
75 #[repr(C)]
76 #[cfg(feature = "Win32_Foundation")]
77 pub union CProperty_0 {
78     pub lpszwData: super::super::Foundation::PWSTR,
79     pub lpvData: *mut ::std::ffi::c_void,
80     pub dwValue: u32,
81 }
82 #[cfg(feature = "Win32_Foundation")]
83 impl CProperty_0 {}
new(registry: &Registry, token: Token) -> io::Result<Waker>84 #[cfg(feature = "Win32_Foundation")]
85 impl ::std::default::Default for CProperty_0 {
86     fn default() -> Self {
87         unsafe { ::std::mem::zeroed() }
88     }
89 }
90 #[cfg(feature = "Win32_Foundation")]
91 impl ::std::cmp::PartialEq for CProperty_0 {
92     fn eq(&self, _other: &Self) -> bool {
wake(&self) -> io::Result<()>93         unimplemented!()
94     }
95 }
96 #[cfg(feature = "Win32_Foundation")]
97 impl ::std::cmp::Eq for CProperty_0 {}
98 #[cfg(feature = "Win32_Foundation")]
99 unsafe impl ::windows::runtime::Abi for CProperty_0 {
100     type Abi = Self;
101     type DefaultType = Self;
102 }
103 pub const E_ALL_WILD: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479467i32 as _);
104 pub const E_ALREADYINIT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479421i32 as _);
105 pub const E_ALREADYOPEN: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479533i32 as _);
106 pub const E_ASSERT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479546i32 as _);
107 pub const E_BADBREAKER: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479469i32 as _);
108 pub const E_BADFILE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479549i32 as _);
109 pub const E_BADFILTERSIZE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479528i32 as _);
110 pub const E_BADFORMAT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479548i32 as _);
111 pub const E_BADINDEXFLAGS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479456i32 as _);
112 pub const E_BADPARAM: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479535i32 as _);
113 pub const E_BADRANGEOP: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479459i32 as _);
114 pub const E_BADVALUE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479468i32 as _);
115 pub const E_BADVERSION: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479550i32 as _);
116 pub const E_CANTFINDDLL: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479538i32 as _);
117 pub const E_DISKFULL: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479496i32 as _);
118 pub const E_DUPLICATE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479551i32 as _);
119 pub const E_EXPECTEDTERM: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479465i32 as _);
120 pub const E_FILECLOSE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479503i32 as _);
121 pub const E_FILECREATE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479504i32 as _);
122 pub const E_FILEDELETE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479499i32 as _);
123 pub const E_FILEINVALID: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479498i32 as _);
124 pub const E_FILENOTFOUND: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479497i32 as _);
125 pub const E_FILEREAD: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479502i32 as _);
126 pub const E_FILESEEK: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479501i32 as _);
127 pub const E_FILEWRITE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479500i32 as _);
128 pub const E_GETLASTERROR: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479536i32 as _);
129 pub const E_GROUPIDTOOBIG: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479542i32 as _);
130 pub const E_INTERRUPT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479545i32 as _);
131 pub const E_INVALIDSTATE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479534i32 as _);
132 pub const E_MISSINGPROP: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479424i32 as _);
133 pub const E_MISSLPAREN: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479464i32 as _);
134 pub const E_MISSQUOTE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479462i32 as _);
135 pub const E_MISSRPAREN: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479463i32 as _);
136 pub const E_NAMETOOLONG: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479520i32 as _);
137 pub const E_NOHANDLE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479537i32 as _);
138 pub const E_NOKEYPROP: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479417i32 as _);
139 pub const E_NOMERGEDDATA: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479540i32 as _);
140 pub const E_NOPERMISSION: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479547i32 as _);
141 pub const E_NOSTEMMER: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479454i32 as _);
142 pub const E_NOTEXIST: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479552i32 as _);
143 pub const E_NOTFOUND: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479539i32 as _);
144 pub const E_NOTINIT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479420i32 as _);
145 pub const E_NOTOPEN: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479533i32 as _);
146 pub const E_NOTSUPPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479544i32 as _);
147 pub const E_NULLQUERY: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479461i32 as _);
148 pub const E_OUTOFRANGE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479543i32 as _);
149 pub const E_PROPLISTEMPTY: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479422i32 as _);
150 pub const E_PROPLISTNOTEMPTY: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479423i32 as _);
151 pub const E_RESULTSETEMPTY: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479419i32 as _);
152 pub const E_STOPWORD: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479460i32 as _);
153 pub const E_TOODEEP: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479466i32 as _);
154 pub const E_TOOMANYCOLUMNS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479418i32 as _);
155 pub const E_TOOMANYDUPS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479471i32 as _);
156 pub const E_TOOMANYOBJECTS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479527i32 as _);
157 pub const E_TOOMANYTITLES: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479541i32 as _);
158 pub const E_TOOMANYTOPICS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479472i32 as _);
159 pub const E_TREETOOBIG: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479470i32 as _);
160 pub const E_UNKNOWN_TRANSPORT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479530i32 as _);
161 pub const E_UNMATCHEDTYPE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479458i32 as _);
162 pub const E_UNSUPPORTED_TRANSPORT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479529i32 as _);
163 pub const E_WILD_IN_DTYPE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479455i32 as _);
164 pub const E_WORDTOOLONG: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147479457i32 as _);
165 pub const HHACT_BACK: i32 = 7i32;
166 pub const HHACT_CONTRACT: i32 = 6i32;
167 pub const HHACT_CUSTOMIZE: i32 = 16i32;
168 pub const HHACT_EXPAND: i32 = 5i32;
169 pub const HHACT_FORWARD: i32 = 8i32;
170 pub const HHACT_HIGHLIGHT: i32 = 15i32;
171 pub const HHACT_HOME: i32 = 11i32;
172 pub const HHACT_JUMP1: i32 = 17i32;
173 pub const HHACT_JUMP2: i32 = 18i32;
174 pub const HHACT_LAST_ENUM: i32 = 23i32;
175 pub const HHACT_NOTES: i32 = 22i32;
176 pub const HHACT_OPTIONS: i32 = 13i32;
177 pub const HHACT_PRINT: i32 = 14i32;
178 pub const HHACT_REFRESH: i32 = 10i32;
179 pub const HHACT_STOP: i32 = 9i32;
180 pub const HHACT_SYNC: i32 = 12i32;
181 pub const HHACT_TAB_CONTENTS: i32 = 0i32;
182 pub const HHACT_TAB_FAVORITES: i32 = 4i32;
183 pub const HHACT_TAB_HISTORY: i32 = 3i32;
184 pub const HHACT_TAB_INDEX: i32 = 1i32;
185 pub const HHACT_TAB_SEARCH: i32 = 2i32;
186 pub const HHACT_TOC_NEXT: i32 = 20i32;
187 pub const HHACT_TOC_PREV: i32 = 21i32;
188 pub const HHACT_ZOOM: i32 = 19i32;
189 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
190 #[repr(C)]
191 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
192 pub struct HHNTRACK {
193     pub hdr: super::super::UI::Controls::NMHDR,
194     pub pszCurUrl: super::super::Foundation::PSTR,
195     pub idAction: i32,
196     pub phhWinType: *mut HH_WINTYPE,
197 }
198 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
199 impl HHNTRACK {}
200 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
201 impl ::std::default::Default for HHNTRACK {
202     fn default() -> Self {
203         unsafe { ::std::mem::zeroed() }
204     }
205 }
206 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
207 impl ::std::fmt::Debug for HHNTRACK {
208     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
209         fmt.debug_struct("HHNTRACK").field("hdr", &self.hdr).field("pszCurUrl", &self.pszCurUrl).field("idAction", &self.idAction).field("phhWinType", &self.phhWinType).finish()
210     }
211 }
212 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
213 impl ::std::cmp::PartialEq for HHNTRACK {
214     fn eq(&self, other: &Self) -> bool {
215         self.hdr == other.hdr && self.pszCurUrl == other.pszCurUrl && self.idAction == other.idAction && self.phhWinType == other.phhWinType
216     }
217 }
218 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
219 impl ::std::cmp::Eq for HHNTRACK {}
220 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
221 unsafe impl ::windows::runtime::Abi for HHNTRACK {
222     type Abi = Self;
223     type DefaultType = Self;
224 }
225 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
226 #[repr(C)]
227 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
228 pub struct HHN_NOTIFY {
229     pub hdr: super::super::UI::Controls::NMHDR,
230     pub pszUrl: super::super::Foundation::PSTR,
231 }
232 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
233 impl HHN_NOTIFY {}
234 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
235 impl ::std::default::Default for HHN_NOTIFY {
236     fn default() -> Self {
237         unsafe { ::std::mem::zeroed() }
238     }
239 }
240 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
241 impl ::std::fmt::Debug for HHN_NOTIFY {
242     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
243         fmt.debug_struct("HHN_NOTIFY").field("hdr", &self.hdr).field("pszUrl", &self.pszUrl).finish()
244     }
245 }
246 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
247 impl ::std::cmp::PartialEq for HHN_NOTIFY {
248     fn eq(&self, other: &Self) -> bool {
249         self.hdr == other.hdr && self.pszUrl == other.pszUrl
250     }
251 }
252 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
253 impl ::std::cmp::Eq for HHN_NOTIFY {}
254 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
255 unsafe impl ::windows::runtime::Abi for HHN_NOTIFY {
256     type Abi = Self;
257     type DefaultType = Self;
258 }
259 pub const HHWIN_BUTTON_BACK: u32 = 4u32;
260 pub const HHWIN_BUTTON_BROWSE_BCK: u32 = 256u32;
261 pub const HHWIN_BUTTON_BROWSE_FWD: u32 = 128u32;
262 pub const HHWIN_BUTTON_CONTENTS: u32 = 1024u32;
263 pub const HHWIN_BUTTON_EXPAND: u32 = 2u32;
264 pub const HHWIN_BUTTON_FAVORITES: u32 = 131072u32;
265 pub const HHWIN_BUTTON_FORWARD: u32 = 8u32;
266 pub const HHWIN_BUTTON_HISTORY: u32 = 65536u32;
267 pub const HHWIN_BUTTON_HOME: u32 = 64u32;
268 pub const HHWIN_BUTTON_INDEX: u32 = 16384u32;
269 pub const HHWIN_BUTTON_JUMP1: u32 = 262144u32;
270 pub const HHWIN_BUTTON_JUMP2: u32 = 524288u32;
271 pub const HHWIN_BUTTON_NOTES: u32 = 512u32;
272 pub const HHWIN_BUTTON_OPTIONS: u32 = 4096u32;
273 pub const HHWIN_BUTTON_PRINT: u32 = 8192u32;
274 pub const HHWIN_BUTTON_REFRESH: u32 = 32u32;
275 pub const HHWIN_BUTTON_SEARCH: u32 = 32768u32;
276 pub const HHWIN_BUTTON_STOP: u32 = 16u32;
277 pub const HHWIN_BUTTON_SYNC: u32 = 2048u32;
278 pub const HHWIN_BUTTON_TOC_NEXT: u32 = 2097152u32;
279 pub const HHWIN_BUTTON_TOC_PREV: u32 = 4194304u32;
280 pub const HHWIN_BUTTON_ZOOM: u32 = 1048576u32;
281 pub const HHWIN_NAVTAB_BOTTOM: i32 = 2i32;
282 pub const HHWIN_NAVTAB_LEFT: i32 = 1i32;
283 pub const HHWIN_NAVTAB_TOP: i32 = 0i32;
284 pub const HHWIN_NAVTYPE_AUTHOR: i32 = 5i32;
285 pub const HHWIN_NAVTYPE_CUSTOM_FIRST: i32 = 11i32;
286 pub const HHWIN_NAVTYPE_FAVORITES: i32 = 3i32;
287 pub const HHWIN_NAVTYPE_HISTORY: i32 = 4i32;
288 pub const HHWIN_NAVTYPE_INDEX: i32 = 1i32;
289 pub const HHWIN_NAVTYPE_SEARCH: i32 = 2i32;
290 pub const HHWIN_NAVTYPE_TOC: i32 = 0i32;
291 pub const HHWIN_PARAM_CUR_TAB: u32 = 8192u32;
292 pub const HHWIN_PARAM_EXPANSION: u32 = 512u32;
293 pub const HHWIN_PARAM_EXSTYLES: u32 = 8u32;
294 pub const HHWIN_PARAM_HISTORY_COUNT: u32 = 4096u32;
295 pub const HHWIN_PARAM_INFOTYPES: u32 = 128u32;
296 pub const HHWIN_PARAM_NAV_WIDTH: u32 = 32u32;
297 pub const HHWIN_PARAM_PROPERTIES: u32 = 2u32;
298 pub const HHWIN_PARAM_RECT: u32 = 16u32;
299 pub const HHWIN_PARAM_SHOWSTATE: u32 = 64u32;
300 pub const HHWIN_PARAM_STYLES: u32 = 4u32;
301 pub const HHWIN_PARAM_TABORDER: u32 = 2048u32;
302 pub const HHWIN_PARAM_TABPOS: u32 = 1024u32;
303 pub const HHWIN_PARAM_TB_FLAGS: u32 = 256u32;
304 pub const HHWIN_PROP_AUTO_SYNC: u32 = 256u32;
305 pub const HHWIN_PROP_CHANGE_TITLE: u32 = 8192u32;
306 pub const HHWIN_PROP_MENU: u32 = 65536u32;
307 pub const HHWIN_PROP_NAV_ONLY_WIN: u32 = 16384u32;
308 pub const HHWIN_PROP_NODEF_EXSTYLES: u32 = 16u32;
309 pub const HHWIN_PROP_NODEF_STYLES: u32 = 8u32;
310 pub const HHWIN_PROP_NOTB_TEXT: u32 = 64u32;
311 pub const HHWIN_PROP_NOTITLEBAR: u32 = 4u32;
312 pub const HHWIN_PROP_NO_TOOLBAR: u32 = 32768u32;
313 pub const HHWIN_PROP_ONTOP: u32 = 2u32;
314 pub const HHWIN_PROP_POST_QUIT: u32 = 128u32;
315 pub const HHWIN_PROP_TAB_ADVSEARCH: u32 = 131072u32;
316 pub const HHWIN_PROP_TAB_AUTOHIDESHOW: u32 = 1u32;
317 pub const HHWIN_PROP_TAB_CUSTOM1: u32 = 524288u32;
318 pub const HHWIN_PROP_TAB_CUSTOM2: u32 = 1048576u32;
319 pub const HHWIN_PROP_TAB_CUSTOM3: u32 = 2097152u32;
320 pub const HHWIN_PROP_TAB_CUSTOM4: u32 = 4194304u32;
321 pub const HHWIN_PROP_TAB_CUSTOM5: u32 = 8388608u32;
322 pub const HHWIN_PROP_TAB_CUSTOM6: u32 = 16777216u32;
323 pub const HHWIN_PROP_TAB_CUSTOM7: u32 = 33554432u32;
324 pub const HHWIN_PROP_TAB_CUSTOM8: u32 = 67108864u32;
325 pub const HHWIN_PROP_TAB_CUSTOM9: u32 = 134217728u32;
326 pub const HHWIN_PROP_TAB_FAVORITES: u32 = 4096u32;
327 pub const HHWIN_PROP_TAB_HISTORY: u32 = 2048u32;
328 pub const HHWIN_PROP_TAB_SEARCH: u32 = 1024u32;
329 pub const HHWIN_PROP_TRACKING: u32 = 512u32;
330 pub const HHWIN_PROP_TRI_PANE: u32 = 32u32;
331 pub const HHWIN_PROP_USER_POS: u32 = 262144u32;
332 pub const HHWIN_TB_MARGIN: u32 = 268435456u32;
333 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
334 #[repr(C)]
335 #[cfg(feature = "Win32_Foundation")]
336 pub struct HH_AKLINK {
337     pub cbStruct: i32,
338     pub fReserved: super::super::Foundation::BOOL,
339     pub pszKeywords: *mut i8,
340     pub pszUrl: *mut i8,
341     pub pszMsgText: *mut i8,
342     pub pszMsgTitle: *mut i8,
343     pub pszWindow: *mut i8,
344     pub fIndexOnFail: super::super::Foundation::BOOL,
345 }
346 #[cfg(feature = "Win32_Foundation")]
347 impl HH_AKLINK {}
348 #[cfg(feature = "Win32_Foundation")]
349 impl ::std::default::Default for HH_AKLINK {
350     fn default() -> Self {
351         unsafe { ::std::mem::zeroed() }
352     }
353 }
354 #[cfg(feature = "Win32_Foundation")]
355 impl ::std::fmt::Debug for HH_AKLINK {
356     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
357         fmt.debug_struct("HH_AKLINK")
358             .field("cbStruct", &self.cbStruct)
359             .field("fReserved", &self.fReserved)
360             .field("pszKeywords", &self.pszKeywords)
361             .field("pszUrl", &self.pszUrl)
362             .field("pszMsgText", &self.pszMsgText)
363             .field("pszMsgTitle", &self.pszMsgTitle)
364             .field("pszWindow", &self.pszWindow)
365             .field("fIndexOnFail", &self.fIndexOnFail)
366             .finish()
367     }
368 }
369 #[cfg(feature = "Win32_Foundation")]
370 impl ::std::cmp::PartialEq for HH_AKLINK {
371     fn eq(&self, other: &Self) -> bool {
372         self.cbStruct == other.cbStruct && self.fReserved == other.fReserved && self.pszKeywords == other.pszKeywords && self.pszUrl == other.pszUrl && self.pszMsgText == other.pszMsgText && self.pszMsgTitle == other.pszMsgTitle && self.pszWindow == other.pszWindow && self.fIndexOnFail == other.fIndexOnFail
373     }
374 }
375 #[cfg(feature = "Win32_Foundation")]
376 impl ::std::cmp::Eq for HH_AKLINK {}
377 #[cfg(feature = "Win32_Foundation")]
378 unsafe impl ::windows::runtime::Abi for HH_AKLINK {
379     type Abi = Self;
380     type DefaultType = Self;
381 }
382 pub const HH_ALINK_LOOKUP: u32 = 19u32;
383 pub const HH_CLOSE_ALL: u32 = 18u32;
384 pub const HH_DISPLAY_INDEX: u32 = 2u32;
385 pub const HH_DISPLAY_SEARCH: u32 = 3u32;
386 pub const HH_DISPLAY_TEXT_POPUP: u32 = 14u32;
387 pub const HH_DISPLAY_TOC: u32 = 1u32;
388 pub const HH_DISPLAY_TOPIC: u32 = 0u32;
389 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
390 #[repr(C)]
391 #[cfg(feature = "Win32_Foundation")]
392 pub struct HH_ENUM_CAT {
393     pub cbStruct: i32,
394     pub pszCatName: super::super::Foundation::PSTR,
395     pub pszCatDescription: super::super::Foundation::PSTR,
396 }
397 #[cfg(feature = "Win32_Foundation")]
398 impl HH_ENUM_CAT {}
399 #[cfg(feature = "Win32_Foundation")]
400 impl ::std::default::Default for HH_ENUM_CAT {
401     fn default() -> Self {
402         unsafe { ::std::mem::zeroed() }
403     }
404 }
405 #[cfg(feature = "Win32_Foundation")]
406 impl ::std::fmt::Debug for HH_ENUM_CAT {
407     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
408         fmt.debug_struct("HH_ENUM_CAT").field("cbStruct", &self.cbStruct).field("pszCatName", &self.pszCatName).field("pszCatDescription", &self.pszCatDescription).finish()
409     }
410 }
411 #[cfg(feature = "Win32_Foundation")]
412 impl ::std::cmp::PartialEq for HH_ENUM_CAT {
413     fn eq(&self, other: &Self) -> bool {
414         self.cbStruct == other.cbStruct && self.pszCatName == other.pszCatName && self.pszCatDescription == other.pszCatDescription
415     }
416 }
417 #[cfg(feature = "Win32_Foundation")]
418 impl ::std::cmp::Eq for HH_ENUM_CAT {}
419 #[cfg(feature = "Win32_Foundation")]
420 unsafe impl ::windows::runtime::Abi for HH_ENUM_CAT {
421     type Abi = Self;
422     type DefaultType = Self;
423 }
424 pub const HH_ENUM_CATEGORY: u32 = 21u32;
425 pub const HH_ENUM_CATEGORY_IT: u32 = 22u32;
426 pub const HH_ENUM_INFO_TYPE: u32 = 7u32;
427 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
428 #[repr(C)]
429 #[cfg(feature = "Win32_Foundation")]
430 pub struct HH_ENUM_IT {
431     pub cbStruct: i32,
432     pub iType: i32,
433     pub pszCatName: super::super::Foundation::PSTR,
434     pub pszITName: super::super::Foundation::PSTR,
435     pub pszITDescription: super::super::Foundation::PSTR,
436 }
437 #[cfg(feature = "Win32_Foundation")]
438 impl HH_ENUM_IT {}
439 #[cfg(feature = "Win32_Foundation")]
440 impl ::std::default::Default for HH_ENUM_IT {
441     fn default() -> Self {
442         unsafe { ::std::mem::zeroed() }
443     }
444 }
445 #[cfg(feature = "Win32_Foundation")]
446 impl ::std::fmt::Debug for HH_ENUM_IT {
447     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
448         fmt.debug_struct("HH_ENUM_IT").field("cbStruct", &self.cbStruct).field("iType", &self.iType).field("pszCatName", &self.pszCatName).field("pszITName", &self.pszITName).field("pszITDescription", &self.pszITDescription).finish()
449     }
450 }
451 #[cfg(feature = "Win32_Foundation")]
452 impl ::std::cmp::PartialEq for HH_ENUM_IT {
453     fn eq(&self, other: &Self) -> bool {
454         self.cbStruct == other.cbStruct && self.iType == other.iType && self.pszCatName == other.pszCatName && self.pszITName == other.pszITName && self.pszITDescription == other.pszITDescription
455     }
456 }
457 #[cfg(feature = "Win32_Foundation")]
458 impl ::std::cmp::Eq for HH_ENUM_IT {}
459 #[cfg(feature = "Win32_Foundation")]
460 unsafe impl ::windows::runtime::Abi for HH_ENUM_IT {
461     type Abi = Self;
462     type DefaultType = Self;
463 }
464 pub const HH_FTS_DEFAULT_PROXIMITY: i32 = -1i32;
465 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
466 #[repr(C)]
467 #[cfg(feature = "Win32_Foundation")]
468 pub struct HH_FTS_QUERY {
469     pub cbStruct: i32,
470     pub fUniCodeStrings: super::super::Foundation::BOOL,
471     pub pszSearchQuery: *mut i8,
472     pub iProximity: i32,
473     pub fStemmedSearch: super::super::Foundation::BOOL,
474     pub fTitleOnly: super::super::Foundation::BOOL,
475     pub fExecute: super::super::Foundation::BOOL,
476     pub pszWindow: *mut i8,
477 }
478 #[cfg(feature = "Win32_Foundation")]
479 impl HH_FTS_QUERY {}
480 #[cfg(feature = "Win32_Foundation")]
481 impl ::std::default::Default for HH_FTS_QUERY {
482     fn default() -> Self {
483         unsafe { ::std::mem::zeroed() }
484     }
485 }
486 #[cfg(feature = "Win32_Foundation")]
487 impl ::std::fmt::Debug for HH_FTS_QUERY {
488     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
489         fmt.debug_struct("HH_FTS_QUERY")
490             .field("cbStruct", &self.cbStruct)
491             .field("fUniCodeStrings", &self.fUniCodeStrings)
492             .field("pszSearchQuery", &self.pszSearchQuery)
493             .field("iProximity", &self.iProximity)
494             .field("fStemmedSearch", &self.fStemmedSearch)
495             .field("fTitleOnly", &self.fTitleOnly)
496             .field("fExecute", &self.fExecute)
497             .field("pszWindow", &self.pszWindow)
498             .finish()
499     }
500 }
501 #[cfg(feature = "Win32_Foundation")]
502 impl ::std::cmp::PartialEq for HH_FTS_QUERY {
503     fn eq(&self, other: &Self) -> bool {
504         self.cbStruct == other.cbStruct && self.fUniCodeStrings == other.fUniCodeStrings && self.pszSearchQuery == other.pszSearchQuery && self.iProximity == other.iProximity && self.fStemmedSearch == other.fStemmedSearch && self.fTitleOnly == other.fTitleOnly && self.fExecute == other.fExecute && self.pszWindow == other.pszWindow
505     }
506 }
507 #[cfg(feature = "Win32_Foundation")]
508 impl ::std::cmp::Eq for HH_FTS_QUERY {}
509 #[cfg(feature = "Win32_Foundation")]
510 unsafe impl ::windows::runtime::Abi for HH_FTS_QUERY {
511     type Abi = Self;
512     type DefaultType = Self;
513 }
514 pub const HH_GET_LAST_ERROR: u32 = 20u32;
515 pub const HH_GET_WIN_HANDLE: u32 = 6u32;
516 pub const HH_GET_WIN_TYPE: u32 = 5u32;
517 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
518 impl ::std::clone::Clone for HH_GLOBAL_PROPERTY {
519     fn clone(&self) -> Self {
520         unimplemented!()
521     }
522 }
523 #[repr(C)]
524 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
525 pub struct HH_GLOBAL_PROPERTY {
526     pub id: HH_GPROPID,
527     pub var: super::super::System::Com::VARIANT,
528 }
529 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
530 impl HH_GLOBAL_PROPERTY {}
531 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
532 impl ::std::default::Default for HH_GLOBAL_PROPERTY {
533     fn default() -> Self {
534         unsafe { ::std::mem::zeroed() }
535     }
536 }
537 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
538 impl ::std::cmp::PartialEq for HH_GLOBAL_PROPERTY {
539     fn eq(&self, _other: &Self) -> bool {
540         unimplemented!()
541     }
542 }
543 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
544 impl ::std::cmp::Eq for HH_GLOBAL_PROPERTY {}
545 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
546 unsafe impl ::windows::runtime::Abi for HH_GLOBAL_PROPERTY {
547     type Abi = ::std::mem::ManuallyDrop<Self>;
548     type DefaultType = Self;
549 }
550 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
551 #[repr(transparent)]
552 pub struct HH_GPROPID(pub i32);
553 pub const HH_GPROPID_SINGLETHREAD: HH_GPROPID = HH_GPROPID(1i32);
554 pub const HH_GPROPID_TOOLBAR_MARGIN: HH_GPROPID = HH_GPROPID(2i32);
555 pub const HH_GPROPID_UI_LANGUAGE: HH_GPROPID = HH_GPROPID(3i32);
556 pub const HH_GPROPID_CURRENT_SUBSET: HH_GPROPID = HH_GPROPID(4i32);
557 pub const HH_GPROPID_CONTENT_LANGUAGE: HH_GPROPID = HH_GPROPID(5i32);
558 impl ::std::convert::From<i32> for HH_GPROPID {
559     fn from(value: i32) -> Self {
560         Self(value)
561     }
562 }
563 unsafe impl ::windows::runtime::Abi for HH_GPROPID {
564     type Abi = Self;
565     type DefaultType = Self;
566 }
567 pub const HH_HELP_CONTEXT: u32 = 15u32;
568 pub const HH_HELP_FINDER: u32 = 0u32;
569 pub const HH_INITIALIZE: u32 = 28u32;
570 pub const HH_KEYWORD_LOOKUP: u32 = 13u32;
571 pub const HH_MAX_TABS: u32 = 19u32;
572 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
573 #[repr(C)]
574 #[cfg(feature = "Win32_Foundation")]
575 pub struct HH_POPUP {
576     pub cbStruct: i32,
577     pub hinst: super::super::Foundation::HINSTANCE,
578     pub idString: u32,
579     pub pszText: *mut i8,
580     pub pt: super::super::Foundation::POINT,
581     pub clrForeground: u32,
582     pub clrBackground: u32,
583     pub rcMargins: super::super::Foundation::RECT,
584     pub pszFont: *mut i8,
585 }
586 #[cfg(feature = "Win32_Foundation")]
587 impl HH_POPUP {}
588 #[cfg(feature = "Win32_Foundation")]
589 impl ::std::default::Default for HH_POPUP {
590     fn default() -> Self {
591         unsafe { ::std::mem::zeroed() }
592     }
593 }
594 #[cfg(feature = "Win32_Foundation")]
595 impl ::std::fmt::Debug for HH_POPUP {
596     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
597         fmt.debug_struct("HH_POPUP")
598             .field("cbStruct", &self.cbStruct)
599             .field("hinst", &self.hinst)
600             .field("idString", &self.idString)
601             .field("pszText", &self.pszText)
602             .field("pt", &self.pt)
603             .field("clrForeground", &self.clrForeground)
604             .field("clrBackground", &self.clrBackground)
605             .field("rcMargins", &self.rcMargins)
606             .field("pszFont", &self.pszFont)
607             .finish()
608     }
609 }
610 #[cfg(feature = "Win32_Foundation")]
611 impl ::std::cmp::PartialEq for HH_POPUP {
612     fn eq(&self, other: &Self) -> bool {
613         self.cbStruct == other.cbStruct && self.hinst == other.hinst && self.idString == other.idString && self.pszText == other.pszText && self.pt == other.pt && self.clrForeground == other.clrForeground && self.clrBackground == other.clrBackground && self.rcMargins == other.rcMargins && self.pszFont == other.pszFont
614     }
615 }
616 #[cfg(feature = "Win32_Foundation")]
617 impl ::std::cmp::Eq for HH_POPUP {}
618 #[cfg(feature = "Win32_Foundation")]
619 unsafe impl ::windows::runtime::Abi for HH_POPUP {
620     type Abi = Self;
621     type DefaultType = Self;
622 }
623 pub const HH_PRETRANSLATEMESSAGE: u32 = 253u32;
624 pub const HH_RESERVED1: u32 = 10u32;
625 pub const HH_RESERVED2: u32 = 11u32;
626 pub const HH_RESERVED3: u32 = 12u32;
627 pub const HH_RESET_IT_FILTER: u32 = 23u32;
628 pub const HH_SAFE_DISPLAY_TOPIC: u32 = 32u32;
629 pub const HH_SET_EXCLUSIVE_FILTER: u32 = 25u32;
630 pub const HH_SET_GLOBAL_PROPERTY: u32 = 252u32;
631 pub const HH_SET_INCLUSIVE_FILTER: u32 = 24u32;
632 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
633 #[repr(C)]
634 #[cfg(feature = "Win32_Foundation")]
635 pub struct HH_SET_INFOTYPE {
636     pub cbStruct: i32,
637     pub pszCatName: super::super::Foundation::PSTR,
638     pub pszInfoTypeName: super::super::Foundation::PSTR,
639 }
640 #[cfg(feature = "Win32_Foundation")]
641 impl HH_SET_INFOTYPE {}
642 #[cfg(feature = "Win32_Foundation")]
643 impl ::std::default::Default for HH_SET_INFOTYPE {
644     fn default() -> Self {
645         unsafe { ::std::mem::zeroed() }
646     }
647 }
648 #[cfg(feature = "Win32_Foundation")]
649 impl ::std::fmt::Debug for HH_SET_INFOTYPE {
650     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
651         fmt.debug_struct("HH_SET_INFOTYPE").field("cbStruct", &self.cbStruct).field("pszCatName", &self.pszCatName).field("pszInfoTypeName", &self.pszInfoTypeName).finish()
652     }
653 }
654 #[cfg(feature = "Win32_Foundation")]
655 impl ::std::cmp::PartialEq for HH_SET_INFOTYPE {
656     fn eq(&self, other: &Self) -> bool {
657         self.cbStruct == other.cbStruct && self.pszCatName == other.pszCatName && self.pszInfoTypeName == other.pszInfoTypeName
658     }
659 }
660 #[cfg(feature = "Win32_Foundation")]
661 impl ::std::cmp::Eq for HH_SET_INFOTYPE {}
662 #[cfg(feature = "Win32_Foundation")]
663 unsafe impl ::windows::runtime::Abi for HH_SET_INFOTYPE {
664     type Abi = Self;
665     type DefaultType = Self;
666 }
667 pub const HH_SET_INFO_TYPE: u32 = 8u32;
668 pub const HH_SET_QUERYSERVICE: u32 = 30u32;
669 pub const HH_SET_WIN_TYPE: u32 = 4u32;
670 pub const HH_SYNC: u32 = 9u32;
671 pub const HH_TAB_AUTHOR: i32 = 5i32;
672 pub const HH_TAB_CONTENTS: i32 = 0i32;
673 pub const HH_TAB_CUSTOM_FIRST: i32 = 11i32;
674 pub const HH_TAB_CUSTOM_LAST: i32 = 19i32;
675 pub const HH_TAB_FAVORITES: i32 = 3i32;
676 pub const HH_TAB_HISTORY: i32 = 4i32;
677 pub const HH_TAB_INDEX: i32 = 1i32;
678 pub const HH_TAB_SEARCH: i32 = 2i32;
679 pub const HH_TP_HELP_CONTEXTMENU: u32 = 16u32;
680 pub const HH_TP_HELP_WM_HELP: u32 = 17u32;
681 pub const HH_UNINITIALIZE: u32 = 29u32;
682 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
683 #[repr(C)]
684 #[cfg(feature = "Win32_Foundation")]
685 pub struct HH_WINTYPE {
686     pub cbStruct: i32,
687     pub fUniCodeStrings: super::super::Foundation::BOOL,
688     pub pszType: *mut i8,
689     pub fsValidMembers: u32,
690     pub fsWinProperties: u32,
691     pub pszCaption: *mut i8,
692     pub dwStyles: u32,
693     pub dwExStyles: u32,
694     pub rcWindowPos: super::super::Foundation::RECT,
695     pub nShowState: i32,
696     pub hwndHelp: super::super::Foundation::HWND,
697     pub hwndCaller: super::super::Foundation::HWND,
698     pub paInfoTypes: *mut u32,
699     pub hwndToolBar: super::super::Foundation::HWND,
700     pub hwndNavigation: super::super::Foundation::HWND,
701     pub hwndHTML: super::super::Foundation::HWND,
702     pub iNavWidth: i32,
703     pub rcHTML: super::super::Foundation::RECT,
704     pub pszToc: *mut i8,
705     pub pszIndex: *mut i8,
706     pub pszFile: *mut i8,
707     pub pszHome: *mut i8,
708     pub fsToolBarFlags: u32,
709     pub fNotExpanded: super::super::Foundation::BOOL,
710     pub curNavType: i32,
711     pub tabpos: i32,
712     pub idNotify: i32,
713     pub tabOrder: [u8; 20],
714     pub cHistory: i32,
715     pub pszJump1: *mut i8,
716     pub pszJump2: *mut i8,
717     pub pszUrlJump1: *mut i8,
718     pub pszUrlJump2: *mut i8,
719     pub rcMinSize: super::super::Foundation::RECT,
720     pub cbInfoTypes: i32,
721     pub pszCustomTabs: *mut i8,
722 }
723 #[cfg(feature = "Win32_Foundation")]
724 impl HH_WINTYPE {}
725 #[cfg(feature = "Win32_Foundation")]
726 impl ::std::default::Default for HH_WINTYPE {
727     fn default() -> Self {
728         unsafe { ::std::mem::zeroed() }
729     }
730 }
731 #[cfg(feature = "Win32_Foundation")]
732 impl ::std::fmt::Debug for HH_WINTYPE {
733     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
734         fmt.debug_struct("HH_WINTYPE")
735             .field("cbStruct", &self.cbStruct)
736             .field("fUniCodeStrings", &self.fUniCodeStrings)
737             .field("pszType", &self.pszType)
738             .field("fsValidMembers", &self.fsValidMembers)
739             .field("fsWinProperties", &self.fsWinProperties)
740             .field("pszCaption", &self.pszCaption)
741             .field("dwStyles", &self.dwStyles)
742             .field("dwExStyles", &self.dwExStyles)
743             .field("rcWindowPos", &self.rcWindowPos)
744             .field("nShowState", &self.nShowState)
745             .field("hwndHelp", &self.hwndHelp)
746             .field("hwndCaller", &self.hwndCaller)
747             .field("paInfoTypes", &self.paInfoTypes)
748             .field("hwndToolBar", &self.hwndToolBar)
749             .field("hwndNavigation", &self.hwndNavigation)
750             .field("hwndHTML", &self.hwndHTML)
751             .field("iNavWidth", &self.iNavWidth)
752             .field("rcHTML", &self.rcHTML)
753             .field("pszToc", &self.pszToc)
754             .field("pszIndex", &self.pszIndex)
755             .field("pszFile", &self.pszFile)
756             .field("pszHome", &self.pszHome)
757             .field("fsToolBarFlags", &self.fsToolBarFlags)
758             .field("fNotExpanded", &self.fNotExpanded)
759             .field("curNavType", &self.curNavType)
760             .field("tabpos", &self.tabpos)
761             .field("idNotify", &self.idNotify)
762             .field("tabOrder", &self.tabOrder)
763             .field("cHistory", &self.cHistory)
764             .field("pszJump1", &self.pszJump1)
765             .field("pszJump2", &self.pszJump2)
766             .field("pszUrlJump1", &self.pszUrlJump1)
767             .field("pszUrlJump2", &self.pszUrlJump2)
768             .field("rcMinSize", &self.rcMinSize)
769             .field("cbInfoTypes", &self.cbInfoTypes)
770             .field("pszCustomTabs", &self.pszCustomTabs)
771             .finish()
772     }
773 }
774 #[cfg(feature = "Win32_Foundation")]
775 impl ::std::cmp::PartialEq for HH_WINTYPE {
776     fn eq(&self, other: &Self) -> bool {
777         self.cbStruct == other.cbStruct
778             && self.fUniCodeStrings == other.fUniCodeStrings
779             && self.pszType == other.pszType
780             && self.fsValidMembers == other.fsValidMembers
781             && self.fsWinProperties == other.fsWinProperties
782             && self.pszCaption == other.pszCaption
783             && self.dwStyles == other.dwStyles
784             && self.dwExStyles == other.dwExStyles
785             && self.rcWindowPos == other.rcWindowPos
786             && self.nShowState == other.nShowState
787             && self.hwndHelp == other.hwndHelp
788             && self.hwndCaller == other.hwndCaller
789             && self.paInfoTypes == other.paInfoTypes
790             && self.hwndToolBar == other.hwndToolBar
791             && self.hwndNavigation == other.hwndNavigation
792             && self.hwndHTML == other.hwndHTML
793             && self.iNavWidth == other.iNavWidth
794             && self.rcHTML == other.rcHTML
795             && self.pszToc == other.pszToc
796             && self.pszIndex == other.pszIndex
797             && self.pszFile == other.pszFile
798             && self.pszHome == other.pszHome
799             && self.fsToolBarFlags == other.fsToolBarFlags
800             && self.fNotExpanded == other.fNotExpanded
801             && self.curNavType == other.curNavType
802             && self.tabpos == other.tabpos
803             && self.idNotify == other.idNotify
804             && self.tabOrder == other.tabOrder
805             && self.cHistory == other.cHistory
806             && self.pszJump1 == other.pszJump1
807             && self.pszJump2 == other.pszJump2
808             && self.pszUrlJump1 == other.pszUrlJump1
809             && self.pszUrlJump2 == other.pszUrlJump2
810             && self.rcMinSize == other.rcMinSize
811             && self.cbInfoTypes == other.cbInfoTypes
812             && self.pszCustomTabs == other.pszCustomTabs
813     }
814 }
815 #[cfg(feature = "Win32_Foundation")]
816 impl ::std::cmp::Eq for HH_WINTYPE {}
817 #[cfg(feature = "Win32_Foundation")]
818 unsafe impl ::windows::runtime::Abi for HH_WINTYPE {
819     type Abi = Self;
820     type DefaultType = Self;
821 }
822 pub const IDTB_BACK: u32 = 204u32;
823 pub const IDTB_BROWSE_BACK: u32 = 212u32;
824 pub const IDTB_BROWSE_FWD: u32 = 211u32;
825 pub const IDTB_CONTENTS: u32 = 213u32;
826 pub const IDTB_CONTRACT: u32 = 201u32;
827 pub const IDTB_CUSTOMIZE: u32 = 221u32;
828 pub const IDTB_EXPAND: u32 = 200u32;
829 pub const IDTB_FAVORITES: u32 = 217u32;
830 pub const IDTB_FORWARD: u32 = 209u32;
831 pub const IDTB_HISTORY: u32 = 216u32;
832 pub const IDTB_HOME: u32 = 205u32;
833 pub const IDTB_INDEX: u32 = 214u32;
834 pub const IDTB_JUMP1: u32 = 218u32;
835 pub const IDTB_JUMP2: u32 = 219u32;
836 pub const IDTB_NOTES: u32 = 210u32;
837 pub const IDTB_OPTIONS: u32 = 208u32;
838 pub const IDTB_PRINT: u32 = 207u32;
839 pub const IDTB_REFRESH: u32 = 203u32;
840 pub const IDTB_SEARCH: u32 = 215u32;
841 pub const IDTB_STOP: u32 = 202u32;
842 pub const IDTB_SYNC: u32 = 206u32;
843 pub const IDTB_TOC_NEXT: u32 = 223u32;
844 pub const IDTB_TOC_PREV: u32 = 224u32;
845 pub const IDTB_ZOOM: u32 = 222u32;
846 #[repr(transparent)]
847 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
848 pub struct IITDatabase(::windows::runtime::IUnknown);
849 impl IITDatabase {
850     #[cfg(feature = "Win32_Foundation")]
851     pub unsafe fn Open<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, lpszhost: Param0, lpszmoniker: Param1, dwflags: u32) -> ::windows::runtime::Result<()> {
852         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), lpszhost.into_param().abi(), lpszmoniker.into_param().abi(), ::std::mem::transmute(dwflags)).ok()
853     }
854     pub unsafe fn Close(&self) -> ::windows::runtime::Result<()> {
855         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)).ok()
856     }
857     pub unsafe fn CreateObject(&self, rclsid: *const ::windows::runtime::GUID, pdwobjinstance: *mut u32) -> ::windows::runtime::Result<()> {
858         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(rclsid), ::std::mem::transmute(pdwobjinstance)).ok()
859     }
860     pub unsafe fn GetObject(&self, dwobjinstance: u32, riid: *const ::windows::runtime::GUID, ppvobj: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
861         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwobjinstance), ::std::mem::transmute(riid), ::std::mem::transmute(ppvobj)).ok()
862     }
863     #[cfg(feature = "Win32_Foundation")]
864     pub unsafe fn GetObjectPersistence<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, lpwszobject: Param0, dwobjinstance: u32, ppvpersistence: *mut *mut ::std::ffi::c_void, fstream: Param3) -> ::windows::runtime::Result<()> {
865         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), lpwszobject.into_param().abi(), ::std::mem::transmute(dwobjinstance), ::std::mem::transmute(ppvpersistence), fstream.into_param().abi()).ok()
866     }
867 }
868 unsafe impl ::windows::runtime::Interface for IITDatabase {
869     type Vtable = IITDatabase_abi;
870     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2409682338, 57055, 4560, [154, 97, 0, 192, 79, 182, 139, 247]);
871 }
872 impl ::std::convert::From<IITDatabase> for ::windows::runtime::IUnknown {
873     fn from(value: IITDatabase) -> Self {
874         unsafe { ::std::mem::transmute(value) }
875     }
876 }
877 impl ::std::convert::From<&IITDatabase> for ::windows::runtime::IUnknown {
878     fn from(value: &IITDatabase) -> Self {
879         ::std::convert::From::from(::std::clone::Clone::clone(value))
880     }
881 }
882 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IITDatabase {
883     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
884         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
885     }
886 }
887 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IITDatabase {
888     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
889         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
890     }
891 }
892 #[repr(C)]
893 #[doc(hidden)]
894 pub struct IITDatabase_abi(
895     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
896     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
897     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
898     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpszhost: super::super::Foundation::PWSTR, lpszmoniker: super::super::Foundation::PWSTR, dwflags: u32) -> ::windows::runtime::HRESULT,
899     #[cfg(not(feature = "Win32_Foundation"))] usize,
900     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
901     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, rclsid: *const ::windows::runtime::GUID, pdwobjinstance: *mut u32) -> ::windows::runtime::HRESULT,
902     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwobjinstance: u32, riid: *const ::windows::runtime::GUID, ppvobj: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
903     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpwszobject: super::super::Foundation::PWSTR, dwobjinstance: u32, ppvpersistence: *mut *mut ::std::ffi::c_void, fstream: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
904     #[cfg(not(feature = "Win32_Foundation"))] usize,
905 );
906 #[repr(C)]
907 #[derive(:: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug, :: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy)]
908 pub struct IITGroup(pub u8);
909 #[repr(transparent)]
910 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
911 pub struct IITPropList(::windows::runtime::IUnknown);
912 impl IITPropList {
913     pub unsafe fn GetClassID(&self) -> ::windows::runtime::Result<::windows::runtime::GUID> {
914         let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
915         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
916     }
917     pub unsafe fn IsDirty(&self) -> ::windows::runtime::Result<()> {
918         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)).ok()
919     }
920     #[cfg(feature = "Win32_System_Com")]
921     pub unsafe fn Load<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::System::Com::IStream>>(&self, pstm: Param0) -> ::windows::runtime::Result<()> {
922         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), pstm.into_param().abi()).ok()
923     }
924     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
925     pub unsafe fn Save<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::System::Com::IStream>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pstm: Param0, fcleardirty: Param1) -> ::windows::runtime::Result<()> {
926         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), pstm.into_param().abi(), fcleardirty.into_param().abi()).ok()
927     }
928     pub unsafe fn GetSizeMax(&self) -> ::windows::runtime::Result<u64> {
929         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
930         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u64>(result__)
931     }
932     pub unsafe fn InitNew(&self) -> ::windows::runtime::Result<()> {
933         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self)).ok()
934     }
935     #[cfg(feature = "Win32_Foundation")]
936     pub unsafe fn Set<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, propid: u32, lpszwstring: Param1, dwoperation: u32) -> ::windows::runtime::Result<()> {
937         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), lpszwstring.into_param().abi(), ::std::mem::transmute(dwoperation)).ok()
938     }
939     pub unsafe fn Set2(&self, propid: u32, lpvdata: *mut ::std::ffi::c_void, cbdata: u32, dwoperation: u32) -> ::windows::runtime::Result<()> {
940         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), ::std::mem::transmute(lpvdata), ::std::mem::transmute(cbdata), ::std::mem::transmute(dwoperation)).ok()
941     }
942     pub unsafe fn Set3(&self, propid: u32, dwdata: u32, dwoperation: u32) -> ::windows::runtime::Result<()> {
943         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), ::std::mem::transmute(dwdata), ::std::mem::transmute(dwoperation)).ok()
944     }
945     #[cfg(feature = "Win32_Foundation")]
946     pub unsafe fn Add(&self, prop: *mut CProperty) -> ::windows::runtime::Result<()> {
947         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(prop)).ok()
948     }
949     #[cfg(feature = "Win32_Foundation")]
950     pub unsafe fn Get(&self, propid: u32, property: *mut CProperty) -> ::windows::runtime::Result<()> {
951         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), ::std::mem::transmute(property)).ok()
952     }
953     pub unsafe fn Clear(&self) -> ::windows::runtime::Result<()> {
954         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self)).ok()
955     }
956     #[cfg(feature = "Win32_Foundation")]
957     pub unsafe fn SetPersist<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fpersist: Param0) -> ::windows::runtime::Result<()> {
958         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fpersist.into_param().abi()).ok()
959     }
960     #[cfg(feature = "Win32_Foundation")]
961     pub unsafe fn SetPersist2<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, propid: u32, fpersist: Param1) -> ::windows::runtime::Result<()> {
962         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), fpersist.into_param().abi()).ok()
963     }
964     #[cfg(feature = "Win32_Foundation")]
965     pub unsafe fn GetFirst(&self, property: *mut CProperty) -> ::windows::runtime::Result<()> {
966         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), ::std::mem::transmute(property)).ok()
967     }
968     #[cfg(feature = "Win32_Foundation")]
969     pub unsafe fn GetNext(&self, property: *mut CProperty) -> ::windows::runtime::Result<()> {
970         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), ::std::mem::transmute(property)).ok()
971     }
972     pub unsafe fn GetPropCount(&self, cprop: *mut i32) -> ::windows::runtime::Result<()> {
973         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(cprop)).ok()
974     }
975     pub unsafe fn SaveHeader(&self, lpvdata: *mut ::std::ffi::c_void, dwhdrsize: u32) -> ::windows::runtime::Result<()> {
976         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvdata), ::std::mem::transmute(dwhdrsize)).ok()
977     }
978     pub unsafe fn SaveData(&self, lpvheader: *mut ::std::ffi::c_void, dwhdrsize: u32, lpvdata: *mut ::std::ffi::c_void, dwbufsize: u32) -> ::windows::runtime::Result<()> {
979         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvheader), ::std::mem::transmute(dwhdrsize), ::std::mem::transmute(lpvdata), ::std::mem::transmute(dwbufsize)).ok()
980     }
981     pub unsafe fn GetHeaderSize(&self, dwhdrsize: *mut u32) -> ::windows::runtime::Result<()> {
982         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwhdrsize)).ok()
983     }
984     pub unsafe fn GetDataSize(&self, lpvheader: *mut ::std::ffi::c_void, dwhdrsize: u32, dwdatasize: *mut u32) -> ::windows::runtime::Result<()> {
985         (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvheader), ::std::mem::transmute(dwhdrsize), ::std::mem::transmute(dwdatasize)).ok()
986     }
987     #[cfg(feature = "Win32_System_Com")]
988     pub unsafe fn SaveDataToStream<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::System::Com::IStream>>(&self, lpvheader: *mut ::std::ffi::c_void, dwhdrsize: u32, pstream: Param2) -> ::windows::runtime::Result<()> {
989         (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvheader), ::std::mem::transmute(dwhdrsize), pstream.into_param().abi()).ok()
990     }
991     pub unsafe fn LoadFromMem(&self, lpvdata: *mut ::std::ffi::c_void, dwbufsize: u32) -> ::windows::runtime::Result<()> {
992         (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvdata), ::std::mem::transmute(dwbufsize)).ok()
993     }
994     pub unsafe fn SaveToMem(&self, lpvdata: *mut ::std::ffi::c_void, dwbufsize: u32) -> ::windows::runtime::Result<()> {
995         (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvdata), ::std::mem::transmute(dwbufsize)).ok()
996     }
997 }
998 unsafe impl ::windows::runtime::Interface for IITPropList {
999     type Vtable = IITPropList_abi;
1000     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(524303281, 39319, 4560, [168, 80, 0, 170, 0, 108, 125, 1]);
1001 }
1002 impl ::std::convert::From<IITPropList> for ::windows::runtime::IUnknown {
1003     fn from(value: IITPropList) -> Self {
1004         unsafe { ::std::mem::transmute(value) }
1005     }
1006 }
1007 impl ::std::convert::From<&IITPropList> for ::windows::runtime::IUnknown {
1008     fn from(value: &IITPropList) -> Self {
1009         ::std::convert::From::from(::std::clone::Clone::clone(value))
1010     }
1011 }
1012 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IITPropList {
1013     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1014         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1015     }
1016 }
1017 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IITPropList {
1018     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1019         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1020     }
1021 }
1022 #[cfg(feature = "Win32_System_Ole")]
1023 impl ::std::convert::From<IITPropList> for super::super::System::Ole::IPersistStreamInit {
1024     fn from(value: IITPropList) -> Self {
1025         unsafe { ::std::mem::transmute(value) }
1026     }
1027 }
1028 #[cfg(feature = "Win32_System_Ole")]
1029 impl ::std::convert::From<&IITPropList> for super::super::System::Ole::IPersistStreamInit {
1030     fn from(value: &IITPropList) -> Self {
1031         ::std::convert::From::from(::std::clone::Clone::clone(value))
1032     }
1033 }
1034 #[cfg(feature = "Win32_System_Ole")]
1035 impl<'a> ::windows::runtime::IntoParam<'a, super::super::System::Ole::IPersistStreamInit> for IITPropList {
1036     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::System::Ole::IPersistStreamInit> {
1037         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::System::Ole::IPersistStreamInit>::into(self))
1038     }
1039 }
1040 #[cfg(feature = "Win32_System_Ole")]
1041 impl<'a> ::windows::runtime::IntoParam<'a, super::super::System::Ole::IPersistStreamInit> for &IITPropList {
1042     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::System::Ole::IPersistStreamInit> {
1043         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::System::Ole::IPersistStreamInit>::into(::std::clone::Clone::clone(self)))
1044     }
1045 }
1046 #[cfg(feature = "Win32_System_Com")]
1047 impl ::std::convert::From<IITPropList> for super::super::System::Com::IPersist {
1048     fn from(value: IITPropList) -> Self {
1049         unsafe { ::std::mem::transmute(value) }
1050     }
1051 }
1052 #[cfg(feature = "Win32_System_Com")]
1053 impl ::std::convert::From<&IITPropList> for super::super::System::Com::IPersist {
1054     fn from(value: &IITPropList) -> Self {
1055         ::std::convert::From::from(::std::clone::Clone::clone(value))
1056     }
1057 }
1058 #[cfg(feature = "Win32_System_Com")]
1059 impl<'a> ::windows::runtime::IntoParam<'a, super::super::System::Com::IPersist> for IITPropList {
1060     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::System::Com::IPersist> {
1061         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::System::Com::IPersist>::into(self))
1062     }
1063 }
1064 #[cfg(feature = "Win32_System_Com")]
1065 impl<'a> ::windows::runtime::IntoParam<'a, super::super::System::Com::IPersist> for &IITPropList {
1066     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::System::Com::IPersist> {
1067         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::System::Com::IPersist>::into(::std::clone::Clone::clone(self)))
1068     }
1069 }
1070 #[repr(C)]
1071 #[doc(hidden)]
1072 pub struct IITPropList_abi(
1073     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1074     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1075     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1076     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pclassid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1077     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1078     #[cfg(feature = "Win32_System_Com")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstm: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1079     #[cfg(not(feature = "Win32_System_Com"))] usize,
1080     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstm: ::windows::runtime::RawPtr, fcleardirty: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1081     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))] usize,
1082     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcbsize: *mut u64) -> ::windows::runtime::HRESULT,
1083     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1084     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, lpszwstring: super::super::Foundation::PWSTR, dwoperation: u32) -> ::windows::runtime::HRESULT,
1085     #[cfg(not(feature = "Win32_Foundation"))] usize,
1086     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, lpvdata: *mut ::std::ffi::c_void, cbdata: u32, dwoperation: u32) -> ::windows::runtime::HRESULT,
1087     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, dwdata: u32, dwoperation: u32) -> ::windows::runtime::HRESULT,
1088     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prop: *mut CProperty) -> ::windows::runtime::HRESULT,
1089     #[cfg(not(feature = "Win32_Foundation"))] usize,
1090     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, property: *mut CProperty) -> ::windows::runtime::HRESULT,
1091     #[cfg(not(feature = "Win32_Foundation"))] usize,
1092     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1093     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fpersist: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1094     #[cfg(not(feature = "Win32_Foundation"))] usize,
1095     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, fpersist: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1096     #[cfg(not(feature = "Win32_Foundation"))] usize,
1097     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, property: *mut CProperty) -> ::windows::runtime::HRESULT,
1098     #[cfg(not(feature = "Win32_Foundation"))] usize,
1099     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, property: *mut CProperty) -> ::windows::runtime::HRESULT,
1100     #[cfg(not(feature = "Win32_Foundation"))] usize,
1101     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, cprop: *mut i32) -> ::windows::runtime::HRESULT,
1102     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvdata: *mut ::std::ffi::c_void, dwhdrsize: u32) -> ::windows::runtime::HRESULT,
1103     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvheader: *mut ::std::ffi::c_void, dwhdrsize: u32, lpvdata: *mut ::std::ffi::c_void, dwbufsize: u32) -> ::windows::runtime::HRESULT,
1104     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwhdrsize: *mut u32) -> ::windows::runtime::HRESULT,
1105     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvheader: *mut ::std::ffi::c_void, dwhdrsize: u32, dwdatasize: *mut u32) -> ::windows::runtime::HRESULT,
1106     #[cfg(feature = "Win32_System_Com")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvheader: *mut ::std::ffi::c_void, dwhdrsize: u32, pstream: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1107     #[cfg(not(feature = "Win32_System_Com"))] usize,
1108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvdata: *mut ::std::ffi::c_void, dwbufsize: u32) -> ::windows::runtime::HRESULT,
1109     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvdata: *mut ::std::ffi::c_void, dwbufsize: u32) -> ::windows::runtime::HRESULT,
1110 );
1111 #[repr(C)]
1112 #[derive(:: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug, :: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy)]
1113 pub struct IITQuery(pub u8);
1114 #[repr(transparent)]
1115 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1116 pub struct IITResultSet(::windows::runtime::IUnknown);
1117 impl IITResultSet {
1118     pub unsafe fn SetColumnPriority(&self, lcolumnindex: i32, columnpriority: PRIORITY) -> ::windows::runtime::Result<()> {
1119         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(columnpriority)).ok()
1120     }
1121     pub unsafe fn SetColumnHeap(&self, lcolumnindex: i32, lpvheap: *mut ::std::ffi::c_void, pfncolheapfree: ::std::option::Option<PFNCOLHEAPFREE>) -> ::windows::runtime::Result<()> {
1122         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(lpvheap), ::std::mem::transmute(pfncolheapfree)).ok()
1123     }
1124     pub unsafe fn SetKeyProp(&self, propid: u32) -> ::windows::runtime::Result<()> {
1125         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid)).ok()
1126     }
1127     pub unsafe fn Add(&self, propid: u32, dwdefaultdata: u32, priority: PRIORITY) -> ::windows::runtime::Result<()> {
1128         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), ::std::mem::transmute(dwdefaultdata), ::std::mem::transmute(priority)).ok()
1129     }
1130     #[cfg(feature = "Win32_Foundation")]
1131     pub unsafe fn Add2<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, propid: u32, lpszwdefault: Param1, priority: PRIORITY) -> ::windows::runtime::Result<()> {
1132         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), lpszwdefault.into_param().abi(), ::std::mem::transmute(priority)).ok()
1133     }
1134     pub unsafe fn Add3(&self, propid: u32, lpvdefaultdata: *mut ::std::ffi::c_void, cbdata: u32, priority: PRIORITY) -> ::windows::runtime::Result<()> {
1135         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), ::std::mem::transmute(lpvdefaultdata), ::std::mem::transmute(cbdata), ::std::mem::transmute(priority)).ok()
1136     }
1137     pub unsafe fn Add4(&self, lpvhdr: *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1138         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvhdr)).ok()
1139     }
1140     pub unsafe fn Append(&self, lpvhdr: *mut ::std::ffi::c_void, lpvdata: *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1141         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpvhdr), ::std::mem::transmute(lpvdata)).ok()
1142     }
1143     pub unsafe fn Set(&self, lrowindex: i32, lcolumnindex: i32, lpvdata: *mut ::std::ffi::c_void, cbdata: u32) -> ::windows::runtime::Result<()> {
1144         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(lrowindex), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(lpvdata), ::std::mem::transmute(cbdata)).ok()
1145     }
1146     #[cfg(feature = "Win32_Foundation")]
1147     pub unsafe fn Set2<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, lrowindex: i32, lcolumnindex: i32, lpwstr: Param2) -> ::windows::runtime::Result<()> {
1148         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(lrowindex), ::std::mem::transmute(lcolumnindex), lpwstr.into_param().abi()).ok()
1149     }
1150     pub unsafe fn Set3(&self, lrowindex: i32, lcolumnindex: i32, dwdata: usize) -> ::windows::runtime::Result<()> {
1151         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(lrowindex), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(dwdata)).ok()
1152     }
1153     pub unsafe fn Set4(&self, lrowindex: i32, lpvhdr: *mut ::std::ffi::c_void, lpvdata: *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1154         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(lrowindex), ::std::mem::transmute(lpvhdr), ::std::mem::transmute(lpvdata)).ok()
1155     }
1156     pub unsafe fn Copy<'a, Param0: ::windows::runtime::IntoParam<'a, IITResultSet>>(&self, prscopy: Param0) -> ::windows::runtime::Result<()> {
1157         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), prscopy.into_param().abi()).ok()
1158     }
1159     pub unsafe fn AppendRows<'a, Param0: ::windows::runtime::IntoParam<'a, IITResultSet>>(&self, pressrc: Param0, lrowsrcfirst: i32, csrcrows: i32, lrowfirstdest: *mut i32) -> ::windows::runtime::Result<()> {
1160         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), pressrc.into_param().abi(), ::std::mem::transmute(lrowsrcfirst), ::std::mem::transmute(csrcrows), ::std::mem::transmute(lrowfirstdest)).ok()
1161     }
1162     #[cfg(feature = "Win32_Foundation")]
1163     pub unsafe fn Get(&self, lrowindex: i32, lcolumnindex: i32, prop: *mut CProperty) -> ::windows::runtime::Result<()> {
1164         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), ::std::mem::transmute(lrowindex), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(prop)).ok()
1165     }
1166     pub unsafe fn GetKeyProp(&self, keypropid: *mut u32) -> ::windows::runtime::Result<()> {
1167         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), ::std::mem::transmute(keypropid)).ok()
1168     }
1169     pub unsafe fn GetColumnPriority(&self, lcolumnindex: i32, columnpriority: *mut PRIORITY) -> ::windows::runtime::Result<()> {
1170         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(columnpriority)).ok()
1171     }
1172     pub unsafe fn GetRowCount(&self, lnumberofrows: *mut i32) -> ::windows::runtime::Result<()> {
1173         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), ::std::mem::transmute(lnumberofrows)).ok()
1174     }
1175     pub unsafe fn GetColumnCount(&self, lnumberofcolumns: *mut i32) -> ::windows::runtime::Result<()> {
1176         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(lnumberofcolumns)).ok()
1177     }
1178     pub unsafe fn GetColumn(&self, lcolumnindex: i32, propid: *mut u32, dwtype: *mut u32, lpvdefaultvalue: *mut *mut ::std::ffi::c_void, cbsize: *mut u32, columnpriority: *mut PRIORITY) -> ::windows::runtime::Result<()> {
1179         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(propid), ::std::mem::transmute(dwtype), ::std::mem::transmute(lpvdefaultvalue), ::std::mem::transmute(cbsize), ::std::mem::transmute(columnpriority)).ok()
1180     }
1181     pub unsafe fn GetColumn2(&self, lcolumnindex: i32, propid: *mut u32) -> ::windows::runtime::Result<()> {
1182         (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(lcolumnindex), ::std::mem::transmute(propid)).ok()
1183     }
1184     pub unsafe fn GetColumnFromPropID(&self, propid: u32, lcolumnindex: *mut i32) -> ::windows::runtime::Result<()> {
1185         (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(propid), ::std::mem::transmute(lcolumnindex)).ok()
1186     }
1187     pub unsafe fn Clear(&self) -> ::windows::runtime::Result<()> {
1188         (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self)).ok()
1189     }
1190     pub unsafe fn ClearRows(&self) -> ::windows::runtime::Result<()> {
1191         (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self)).ok()
1192     }
1193     pub unsafe fn Free(&self) -> ::windows::runtime::Result<()> {
1194         (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self)).ok()
1195     }
1196     pub unsafe fn IsCompleted(&self) -> ::windows::runtime::Result<()> {
1197         (::windows::runtime::Interface::vtable(self).28)(::std::mem::transmute_copy(self)).ok()
1198     }
1199     pub unsafe fn Cancel(&self) -> ::windows::runtime::Result<()> {
1200         (::windows::runtime::Interface::vtable(self).29)(::std::mem::transmute_copy(self)).ok()
1201     }
1202     #[cfg(feature = "Win32_Foundation")]
1203     pub unsafe fn Pause<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fpause: Param0) -> ::windows::runtime::Result<()> {
1204         (::windows::runtime::Interface::vtable(self).30)(::std::mem::transmute_copy(self), fpause.into_param().abi()).ok()
1205     }
1206     pub unsafe fn GetRowStatus(&self, lrowfirst: i32, crows: i32, lprowstatus: *mut ROWSTATUS) -> ::windows::runtime::Result<()> {
1207         (::windows::runtime::Interface::vtable(self).31)(::std::mem::transmute_copy(self), ::std::mem::transmute(lrowfirst), ::std::mem::transmute(crows), ::std::mem::transmute(lprowstatus)).ok()
1208     }
1209     pub unsafe fn GetColumnStatus(&self, lpcolstatus: *mut COLUMNSTATUS) -> ::windows::runtime::Result<()> {
1210         (::windows::runtime::Interface::vtable(self).32)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpcolstatus)).ok()
1211     }
1212 }
1213 unsafe impl ::windows::runtime::Interface for IITResultSet {
1214     type Vtable = IITResultSet_abi;
1215     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1001987393, 39307, 4560, [168, 80, 0, 170, 0, 108, 125, 1]);
1216 }
1217 impl ::std::convert::From<IITResultSet> for ::windows::runtime::IUnknown {
1218     fn from(value: IITResultSet) -> Self {
1219         unsafe { ::std::mem::transmute(value) }
1220     }
1221 }
1222 impl ::std::convert::From<&IITResultSet> for ::windows::runtime::IUnknown {
1223     fn from(value: &IITResultSet) -> Self {
1224         ::std::convert::From::from(::std::clone::Clone::clone(value))
1225     }
1226 }
1227 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IITResultSet {
1228     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1229         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1230     }
1231 }
1232 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IITResultSet {
1233     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1234         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1235     }
1236 }
1237 #[repr(C)]
1238 #[doc(hidden)]
1239 pub struct IITResultSet_abi(
1240     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1241     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1242     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1243     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lcolumnindex: i32, columnpriority: PRIORITY) -> ::windows::runtime::HRESULT,
1244     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lcolumnindex: i32, lpvheap: *mut ::std::ffi::c_void, pfncolheapfree: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1245     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32) -> ::windows::runtime::HRESULT,
1246     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, dwdefaultdata: u32, priority: PRIORITY) -> ::windows::runtime::HRESULT,
1247     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, lpszwdefault: super::super::Foundation::PWSTR, priority: PRIORITY) -> ::windows::runtime::HRESULT,
1248     #[cfg(not(feature = "Win32_Foundation"))] usize,
1249     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, lpvdefaultdata: *mut ::std::ffi::c_void, cbdata: u32, priority: PRIORITY) -> ::windows::runtime::HRESULT,
1250     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvhdr: *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1251     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpvhdr: *mut ::std::ffi::c_void, lpvdata: *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1252     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lrowindex: i32, lcolumnindex: i32, lpvdata: *mut ::std::ffi::c_void, cbdata: u32) -> ::windows::runtime::HRESULT,
1253     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lrowindex: i32, lcolumnindex: i32, lpwstr: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1254     #[cfg(not(feature = "Win32_Foundation"))] usize,
1255     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lrowindex: i32, lcolumnindex: i32, dwdata: usize) -> ::windows::runtime::HRESULT,
1256     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lrowindex: i32, lpvhdr: *mut ::std::ffi::c_void, lpvdata: *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1257     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prscopy: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1258     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pressrc: ::windows::runtime::RawPtr, lrowsrcfirst: i32, csrcrows: i32, lrowfirstdest: *mut i32) -> ::windows::runtime::HRESULT,
1259     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lrowindex: i32, lcolumnindex: i32, prop: *mut CProperty) -> ::windows::runtime::HRESULT,
1260     #[cfg(not(feature = "Win32_Foundation"))] usize,
1261     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, keypropid: *mut u32) -> ::windows::runtime::HRESULT,
1262     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lcolumnindex: i32, columnpriority: *mut PRIORITY) -> ::windows::runtime::HRESULT,
1263     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lnumberofrows: *mut i32) -> ::windows::runtime::HRESULT,
1264     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lnumberofcolumns: *mut i32) -> ::windows::runtime::HRESULT,
1265     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lcolumnindex: i32, propid: *mut u32, dwtype: *mut u32, lpvdefaultvalue: *mut *mut ::std::ffi::c_void, cbsize: *mut u32, columnpriority: *mut PRIORITY) -> ::windows::runtime::HRESULT,
1266     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lcolumnindex: i32, propid: *mut u32) -> ::windows::runtime::HRESULT,
1267     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propid: u32, lcolumnindex: *mut i32) -> ::windows::runtime::HRESULT,
1268     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1269     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1270     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1271     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1272     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1273     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fpause: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1274     #[cfg(not(feature = "Win32_Foundation"))] usize,
1275     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lrowfirst: i32, crows: i32, lprowstatus: *mut ROWSTATUS) -> ::windows::runtime::HRESULT,
1276     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpcolstatus: *mut COLUMNSTATUS) -> ::windows::runtime::HRESULT,
1277 );
1278 #[repr(C)]
1279 #[derive(:: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug, :: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy)]
1280 pub struct IITStopWordList(pub u8);
1281 pub const IITWBC_BREAK_ACCEPT_WILDCARDS: u32 = 1u32;
1282 pub const IITWBC_BREAK_AND_STEM: u32 = 2u32;
1283 #[repr(transparent)]
1284 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1285 pub struct IITWordWheel(::windows::runtime::IUnknown);
1286 impl IITWordWheel {
1287     #[cfg(feature = "Win32_Foundation")]
1288     pub unsafe fn Open<'a, Param0: ::windows::runtime::IntoParam<'a, IITDatabase>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, lpitdb: Param0, lpszmoniker: Param1, dwflags: WORD_WHEEL_OPEN_FLAGS) -> ::windows::runtime::Result<()> {
1289         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), lpitdb.into_param().abi(), lpszmoniker.into_param().abi(), ::std::mem::transmute(dwflags)).ok()
1290     }
1291     pub unsafe fn Close(&self) -> ::windows::runtime::Result<()> {
1292         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)).ok()
1293     }
1294     pub unsafe fn GetLocaleInfo(&self, pdwcodepageid: *mut u32, plcid: *mut u32) -> ::windows::runtime::Result<()> {
1295         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pdwcodepageid), ::std::mem::transmute(plcid)).ok()
1296     }
1297     pub unsafe fn GetSorterInstance(&self, pdwobjinstance: *mut u32) -> ::windows::runtime::Result<()> {
1298         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pdwobjinstance)).ok()
1299     }
1300     pub unsafe fn Count(&self, pcentries: *mut i32) -> ::windows::runtime::Result<()> {
1301         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcentries)).ok()
1302     }
1303     #[cfg(feature = "Win32_Foundation")]
1304     pub unsafe fn Lookup<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, lpcvprefix: *const ::std::ffi::c_void, fexactmatch: Param1, plentry: *mut i32) -> ::windows::runtime::Result<()> {
1305         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(lpcvprefix), fexactmatch.into_param().abi(), ::std::mem::transmute(plentry)).ok()
1306     }
1307     pub unsafe fn Lookup2<'a, Param1: ::windows::runtime::IntoParam<'a, IITResultSet>>(&self, lentry: i32, lpitresult: Param1, centries: i32) -> ::windows::runtime::Result<()> {
1308         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(lentry), lpitresult.into_param().abi(), ::std::mem::transmute(centries)).ok()
1309     }
1310     pub unsafe fn Lookup3(&self, lentry: i32, lpvkeybuf: *mut ::std::ffi::c_void, cbkeybuf: u32) -> ::windows::runtime::Result<()> {
1311         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(lentry), ::std::mem::transmute(lpvkeybuf), ::std::mem::transmute(cbkeybuf)).ok()
1312     }
1313     pub unsafe fn SetGroup(&self, piitgroup: *mut IITGroup) -> ::windows::runtime::Result<()> {
1314         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(piitgroup)).ok()
1315     }
1316     pub unsafe fn GetGroup(&self, ppiitgroup: *mut *mut IITGroup) -> ::windows::runtime::Result<()> {
1317         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppiitgroup)).ok()
1318     }
1319     pub unsafe fn GetDataCount(&self, lentry: i32, pdwcount: *mut u32) -> ::windows::runtime::Result<()> {
1320         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(lentry), ::std::mem::transmute(pdwcount)).ok()
1321     }
1322     pub unsafe fn GetData<'a, Param1: ::windows::runtime::IntoParam<'a, IITResultSet>>(&self, lentry: i32, lpitresult: Param1) -> ::windows::runtime::Result<()> {
1323         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(lentry), lpitresult.into_param().abi()).ok()
1324     }
1325     pub unsafe fn GetDataColumns<'a, Param0: ::windows::runtime::IntoParam<'a, IITResultSet>>(&self, prs: Param0) -> ::windows::runtime::Result<()> {
1326         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), prs.into_param().abi()).ok()
1327     }
1328 }
1329 unsafe impl ::windows::runtime::Interface for IITWordWheel {
1330     type Vtable = IITWordWheel_abi;
1331     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2409682340, 57055, 4560, [154, 97, 0, 192, 79, 182, 139, 247]);
1332 }
1333 impl ::std::convert::From<IITWordWheel> for ::windows::runtime::IUnknown {
1334     fn from(value: IITWordWheel) -> Self {
1335         unsafe { ::std::mem::transmute(value) }
1336     }
1337 }
1338 impl ::std::convert::From<&IITWordWheel> for ::windows::runtime::IUnknown {
1339     fn from(value: &IITWordWheel) -> Self {
1340         ::std::convert::From::from(::std::clone::Clone::clone(value))
1341     }
1342 }
1343 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IITWordWheel {
1344     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1345         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1346     }
1347 }
1348 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IITWordWheel {
1349     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1350         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1351     }
1352 }
1353 #[repr(C)]
1354 #[doc(hidden)]
1355 pub struct IITWordWheel_abi(
1356     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1357     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1358     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1359     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpitdb: ::windows::runtime::RawPtr, lpszmoniker: super::super::Foundation::PWSTR, dwflags: WORD_WHEEL_OPEN_FLAGS) -> ::windows::runtime::HRESULT,
1360     #[cfg(not(feature = "Win32_Foundation"))] usize,
1361     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1362     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwcodepageid: *mut u32, plcid: *mut u32) -> ::windows::runtime::HRESULT,
1363     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwobjinstance: *mut u32) -> ::windows::runtime::HRESULT,
1364     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcentries: *mut i32) -> ::windows::runtime::HRESULT,
1365     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lpcvprefix: *const ::std::ffi::c_void, fexactmatch: super::super::Foundation::BOOL, plentry: *mut i32) -> ::windows::runtime::HRESULT,
1366     #[cfg(not(feature = "Win32_Foundation"))] usize,
1367     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lentry: i32, lpitresult: ::windows::runtime::RawPtr, centries: i32) -> ::windows::runtime::HRESULT,
1368     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lentry: i32, lpvkeybuf: *mut ::std::ffi::c_void, cbkeybuf: u32) -> ::windows::runtime::HRESULT,
1369     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, piitgroup: *mut IITGroup) -> ::windows::runtime::HRESULT,
1370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppiitgroup: *mut *mut IITGroup) -> ::windows::runtime::HRESULT,
1371     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lentry: i32, pdwcount: *mut u32) -> ::windows::runtime::HRESULT,
1372     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lentry: i32, lpitresult: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1373     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prs: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1374 );
1375 #[repr(transparent)]
1376 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1377 pub struct IStemSink(::windows::runtime::IUnknown);
1378 impl IStemSink {
1379     #[cfg(feature = "Win32_Foundation")]
1380     pub unsafe fn PutAltWord<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pwcinbuf: Param0, cwc: u32) -> ::windows::runtime::Result<()> {
1381         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pwcinbuf.into_param().abi(), ::std::mem::transmute(cwc)).ok()
1382     }
1383     #[cfg(feature = "Win32_Foundation")]
1384     pub unsafe fn PutWord<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pwcinbuf: Param0, cwc: u32) -> ::windows::runtime::Result<()> {
1385         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pwcinbuf.into_param().abi(), ::std::mem::transmute(cwc)).ok()
1386     }
1387 }
1388 unsafe impl ::windows::runtime::Interface for IStemSink {
1389     type Vtable = IStemSink_abi;
1390     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4269261616, 32578, 4558, [190, 87, 0, 170, 0, 81, 254, 32]);
1391 }
1392 impl ::std::convert::From<IStemSink> for ::windows::runtime::IUnknown {
1393     fn from(value: IStemSink) -> Self {
1394         unsafe { ::std::mem::transmute(value) }
1395     }
1396 }
1397 impl ::std::convert::From<&IStemSink> for ::windows::runtime::IUnknown {
1398     fn from(value: &IStemSink) -> Self {
1399         ::std::convert::From::from(::std::clone::Clone::clone(value))
1400     }
1401 }
1402 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IStemSink {
1403     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1404         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1405     }
1406 }
1407 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IStemSink {
1408     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1409         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1410     }
1411 }
1412 #[repr(C)]
1413 #[doc(hidden)]
1414 pub struct IStemSink_abi(
1415     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1416     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1417     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1418     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwcinbuf: super::super::Foundation::PWSTR, cwc: u32) -> ::windows::runtime::HRESULT,
1419     #[cfg(not(feature = "Win32_Foundation"))] usize,
1420     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwcinbuf: super::super::Foundation::PWSTR, cwc: u32) -> ::windows::runtime::HRESULT,
1421     #[cfg(not(feature = "Win32_Foundation"))] usize,
1422 );
1423 #[repr(transparent)]
1424 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1425 pub struct IStemmerConfig(::windows::runtime::IUnknown);
1426 impl IStemmerConfig {
1427     pub unsafe fn SetLocaleInfo(&self, dwcodepageid: u32, lcid: u32) -> ::windows::runtime::Result<()> {
1428         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwcodepageid), ::std::mem::transmute(lcid)).ok()
1429     }
1430     pub unsafe fn GetLocaleInfo(&self, pdwcodepageid: *mut u32, plcid: *mut u32) -> ::windows::runtime::Result<()> {
1431         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pdwcodepageid), ::std::mem::transmute(plcid)).ok()
1432     }
1433     pub unsafe fn SetControlInfo(&self, grfstemflags: u32, dwreserved: u32) -> ::windows::runtime::Result<()> {
1434         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(grfstemflags), ::std::mem::transmute(dwreserved)).ok()
1435     }
1436     pub unsafe fn GetControlInfo(&self, pgrfstemflags: *mut u32, pdwreserved: *mut u32) -> ::windows::runtime::Result<()> {
1437         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pgrfstemflags), ::std::mem::transmute(pdwreserved)).ok()
1438     }
1439     #[cfg(feature = "Win32_System_Com")]
1440     pub unsafe fn LoadExternalStemmerData<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::System::Com::IStream>>(&self, pstream: Param0, dwextdatatype: u32) -> ::windows::runtime::Result<()> {
1441         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), pstream.into_param().abi(), ::std::mem::transmute(dwextdatatype)).ok()
1442     }
1443 }
1444 unsafe impl ::windows::runtime::Interface for IStemmerConfig {
1445     type Vtable = IStemmerConfig_abi;
1446     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2409682343, 57055, 4560, [154, 97, 0, 192, 79, 182, 139, 247]);
1447 }
1448 impl ::std::convert::From<IStemmerConfig> for ::windows::runtime::IUnknown {
1449     fn from(value: IStemmerConfig) -> Self {
1450         unsafe { ::std::mem::transmute(value) }
1451     }
1452 }
1453 impl ::std::convert::From<&IStemmerConfig> for ::windows::runtime::IUnknown {
1454     fn from(value: &IStemmerConfig) -> Self {
1455         ::std::convert::From::from(::std::clone::Clone::clone(value))
1456     }
1457 }
1458 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IStemmerConfig {
1459     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1460         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1461     }
1462 }
1463 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IStemmerConfig {
1464     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1465         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1466     }
1467 }
1468 #[repr(C)]
1469 #[doc(hidden)]
1470 pub struct IStemmerConfig_abi(
1471     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1472     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1473     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1474     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwcodepageid: u32, lcid: u32) -> ::windows::runtime::HRESULT,
1475     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwcodepageid: *mut u32, plcid: *mut u32) -> ::windows::runtime::HRESULT,
1476     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, grfstemflags: u32, dwreserved: u32) -> ::windows::runtime::HRESULT,
1477     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pgrfstemflags: *mut u32, pdwreserved: *mut u32) -> ::windows::runtime::HRESULT,
1478     #[cfg(feature = "Win32_System_Com")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstream: ::windows::runtime::RawPtr, dwextdatatype: u32) -> ::windows::runtime::HRESULT,
1479     #[cfg(not(feature = "Win32_System_Com"))] usize,
1480 );
1481 pub const ITWW_CBKEY_MAX: u32 = 1024u32;
1482 pub const ITWW_OPEN_NOCONNECT: u32 = 1u32;
1483 pub const IT_EXCLUSIVE: i32 = 1i32;
1484 pub const IT_HIDDEN: i32 = 2i32;
1485 pub const IT_INCLUSIVE: i32 = 0i32;
1486 #[repr(transparent)]
1487 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1488 pub struct IWordBreakerConfig(::windows::runtime::IUnknown);
1489 impl IWordBreakerConfig {
1490     pub unsafe fn SetLocaleInfo(&self, dwcodepageid: u32, lcid: u32) -> ::windows::runtime::Result<()> {
1491         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwcodepageid), ::std::mem::transmute(lcid)).ok()
1492     }
1493     pub unsafe fn GetLocaleInfo(&self, pdwcodepageid: *mut u32, plcid: *mut u32) -> ::windows::runtime::Result<()> {
1494         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pdwcodepageid), ::std::mem::transmute(plcid)).ok()
1495     }
1496     pub unsafe fn SetBreakWordType(&self, dwbreakwordtype: u32) -> ::windows::runtime::Result<()> {
1497         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwbreakwordtype)).ok()
1498     }
1499     pub unsafe fn GetBreakWordType(&self, pdwbreakwordtype: *mut u32) -> ::windows::runtime::Result<()> {
1500         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pdwbreakwordtype)).ok()
1501     }
1502     pub unsafe fn SetControlInfo(&self, grfbreakflags: u32, dwreserved: u32) -> ::windows::runtime::Result<()> {
1503         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(grfbreakflags), ::std::mem::transmute(dwreserved)).ok()
1504     }
1505     pub unsafe fn GetControlInfo(&self, pgrfbreakflags: *mut u32, pdwreserved: *mut u32) -> ::windows::runtime::Result<()> {
1506         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(pgrfbreakflags), ::std::mem::transmute(pdwreserved)).ok()
1507     }
1508     #[cfg(feature = "Win32_System_Com")]
1509     pub unsafe fn LoadExternalBreakerData<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::System::Com::IStream>>(&self, pstream: Param0, dwextdatatype: u32) -> ::windows::runtime::Result<()> {
1510         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pstream.into_param().abi(), ::std::mem::transmute(dwextdatatype)).ok()
1511     }
1512     #[cfg(feature = "Win32_System_Search")]
1513     pub unsafe fn SetWordStemmer<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::System::Search::IStemmer>>(&self, rclsid: *const ::windows::runtime::GUID, pstemmer: Param1) -> ::windows::runtime::Result<()> {
1514         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(rclsid), pstemmer.into_param().abi()).ok()
1515     }
1516     #[cfg(feature = "Win32_System_Search")]
1517     pub unsafe fn GetWordStemmer(&self) -> ::windows::runtime::Result<super::super::System::Search::IStemmer> {
1518         let mut result__: <super::super::System::Search::IStemmer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1519         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::System::Search::IStemmer>(result__)
1520     }
1521 }
1522 unsafe impl ::windows::runtime::Interface for IWordBreakerConfig {
1523     type Vtable = IWordBreakerConfig_abi;
1524     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2409682342, 57055, 4560, [154, 97, 0, 192, 79, 182, 139, 247]);
1525 }
1526 impl ::std::convert::From<IWordBreakerConfig> for ::windows::runtime::IUnknown {
1527     fn from(value: IWordBreakerConfig) -> Self {
1528         unsafe { ::std::mem::transmute(value) }
1529     }
1530 }
1531 impl ::std::convert::From<&IWordBreakerConfig> for ::windows::runtime::IUnknown {
1532     fn from(value: &IWordBreakerConfig) -> Self {
1533         ::std::convert::From::from(::std::clone::Clone::clone(value))
1534     }
1535 }
1536 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IWordBreakerConfig {
1537     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1538         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1539     }
1540 }
1541 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IWordBreakerConfig {
1542     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1543         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1544     }
1545 }
1546 #[repr(C)]
1547 #[doc(hidden)]
1548 pub struct IWordBreakerConfig_abi(
1549     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1550     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1551     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1552     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwcodepageid: u32, lcid: u32) -> ::windows::runtime::HRESULT,
1553     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwcodepageid: *mut u32, plcid: *mut u32) -> ::windows::runtime::HRESULT,
1554     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwbreakwordtype: u32) -> ::windows::runtime::HRESULT,
1555     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwbreakwordtype: *mut u32) -> ::windows::runtime::HRESULT,
1556     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, grfbreakflags: u32, dwreserved: u32) -> ::windows::runtime::HRESULT,
1557     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pgrfbreakflags: *mut u32, pdwreserved: *mut u32) -> ::windows::runtime::HRESULT,
1558     #[cfg(feature = "Win32_System_Com")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstream: ::windows::runtime::RawPtr, dwextdatatype: u32) -> ::windows::runtime::HRESULT,
1559     #[cfg(not(feature = "Win32_System_Com"))] usize,
1560     #[cfg(feature = "Win32_System_Search")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, rclsid: *const ::windows::runtime::GUID, pstemmer: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1561     #[cfg(not(feature = "Win32_System_Search"))] usize,
1562     #[cfg(feature = "Win32_System_Search")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppstemmer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1563     #[cfg(not(feature = "Win32_System_Search"))] usize,
1564 );
1565 pub const MAX_COLUMNS: u32 = 256u32;
1566 pub type PFNCOLHEAPFREE = unsafe extern "system" fn(param0: *mut ::std::ffi::c_void) -> i32;
1567 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1568 #[repr(transparent)]
1569 pub struct PRIORITY(pub i32);
1570 pub const PRIORITY_LOW: PRIORITY = PRIORITY(0i32);
1571 pub const PRIORITY_NORMAL: PRIORITY = PRIORITY(1i32);
1572 pub const PRIORITY_HIGH: PRIORITY = PRIORITY(2i32);
1573 impl ::std::convert::From<i32> for PRIORITY {
1574     fn from(value: i32) -> Self {
1575         Self(value)
1576     }
1577 }
1578 unsafe impl ::windows::runtime::Abi for PRIORITY {
1579     type Abi = Self;
1580     type DefaultType = Self;
1581 }
1582 pub const PROP_ADD: u32 = 0u32;
1583 pub const PROP_DELETE: u32 = 1u32;
1584 pub const PROP_UPDATE: u32 = 2u32;
1585 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1586 #[repr(C)]
1587 pub struct ROWSTATUS {
1588     pub lRowFirst: i32,
1589     pub cRows: i32,
1590     pub cProperties: i32,
1591     pub cRowsTotal: i32,
1592 }
1593 impl ROWSTATUS {}
1594 impl ::std::default::Default for ROWSTATUS {
1595     fn default() -> Self {
1596         unsafe { ::std::mem::zeroed() }
1597     }
1598 }
1599 impl ::std::fmt::Debug for ROWSTATUS {
1600     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1601         fmt.debug_struct("ROWSTATUS").field("lRowFirst", &self.lRowFirst).field("cRows", &self.cRows).field("cProperties", &self.cProperties).field("cRowsTotal", &self.cRowsTotal).finish()
1602     }
1603 }
1604 impl ::std::cmp::PartialEq for ROWSTATUS {
1605     fn eq(&self, other: &Self) -> bool {
1606         self.lRowFirst == other.lRowFirst && self.cRows == other.cRows && self.cProperties == other.cProperties && self.cRowsTotal == other.cRowsTotal
1607     }
1608 }
1609 impl ::std::cmp::Eq for ROWSTATUS {}
1610 unsafe impl ::windows::runtime::Abi for ROWSTATUS {
1611     type Abi = Self;
1612     type DefaultType = Self;
1613 }
1614 pub const STDPROP_DISPLAYKEY: u32 = 101u32;
1615 pub const STDPROP_INDEX_BREAK: u32 = 204u32;
1616 pub const STDPROP_INDEX_DTYPE: u32 = 202u32;
1617 pub const STDPROP_INDEX_LENGTH: u32 = 203u32;
1618 pub const STDPROP_INDEX_TERM: u32 = 210u32;
1619 pub const STDPROP_INDEX_TERM_RAW_LENGTH: u32 = 211u32;
1620 pub const STDPROP_INDEX_TEXT: u32 = 200u32;
1621 pub const STDPROP_INDEX_VFLD: u32 = 201u32;
1622 pub const STDPROP_KEY: u32 = 4u32;
1623 pub const STDPROP_SORTKEY: u32 = 100u32;
1624 pub const STDPROP_SORTORDINAL: u32 = 102u32;
1625 pub const STDPROP_TITLE: u32 = 2u32;
1626 pub const STDPROP_UID: u32 = 1u32;
1627 pub const STDPROP_USERDATA: u32 = 3u32;
1628 pub const STDPROP_USERPROP_BASE: u32 = 65536u32;
1629 pub const STDPROP_USERPROP_MAX: u32 = 2147483647u32;
1630 pub const TYPE_POINTER: u32 = 1u32;
1631 pub const TYPE_STRING: u32 = 2u32;
1632 pub const TYPE_VALUE: u32 = 0u32;
1633 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1634 #[repr(transparent)]
1635 pub struct WORD_WHEEL_OPEN_FLAGS(pub u32);
1636 pub const ITWW_OPEN_CONNECT: WORD_WHEEL_OPEN_FLAGS = WORD_WHEEL_OPEN_FLAGS(0u32);
1637 impl ::std::convert::From<u32> for WORD_WHEEL_OPEN_FLAGS {
1638     fn from(value: u32) -> Self {
1639         Self(value)
1640     }
1641 }
1642 unsafe impl ::windows::runtime::Abi for WORD_WHEEL_OPEN_FLAGS {
1643     type Abi = Self;
1644     type DefaultType = Self;
1645 }
1646 impl ::std::ops::BitOr for WORD_WHEEL_OPEN_FLAGS {
1647     type Output = Self;
1648     fn bitor(self, rhs: Self) -> Self {
1649         Self(self.0 | rhs.0)
1650     }
1651 }
1652 impl ::std::ops::BitAnd for WORD_WHEEL_OPEN_FLAGS {
1653     type Output = Self;
1654     fn bitand(self, rhs: Self) -> Self {
1655         Self(self.0 & rhs.0)
1656     }
1657 }
1658 impl ::std::ops::BitOrAssign for WORD_WHEEL_OPEN_FLAGS {
1659     fn bitor_assign(&mut self, rhs: Self) {
1660         self.0.bitor_assign(rhs.0)
1661     }
1662 }
1663 impl ::std::ops::BitAndAssign for WORD_WHEEL_OPEN_FLAGS {
1664     fn bitand_assign(&mut self, rhs: Self) {
1665         self.0.bitand_assign(rhs.0)
1666     }
1667 }
1668 impl ::std::ops::Not for WORD_WHEEL_OPEN_FLAGS {
1669     type Output = Self;
1670     fn not(self) -> Self {
1671         Self(self.0.not())
1672     }
1673 }
1674