1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3 #[repr(transparent)]
4 pub struct CommonFileQuery(pub i32);
5 impl CommonFileQuery {
6     pub const DefaultQuery: CommonFileQuery = CommonFileQuery(0i32);
7     pub const OrderByName: CommonFileQuery = CommonFileQuery(1i32);
8     pub const OrderByTitle: CommonFileQuery = CommonFileQuery(2i32);
9     pub const OrderByMusicProperties: CommonFileQuery = CommonFileQuery(3i32);
10     pub const OrderBySearchRank: CommonFileQuery = CommonFileQuery(4i32);
11     pub const OrderByDate: CommonFileQuery = CommonFileQuery(5i32);
12 }
13 impl ::std::convert::From<i32> for CommonFileQuery {
from(value: i32) -> Self14     fn from(value: i32) -> Self {
15         Self(value)
16     }
17 }
18 unsafe impl ::windows::runtime::Abi for CommonFileQuery {
19     type Abi = Self;
20     type DefaultType = Self;
21 }
22 unsafe impl ::windows::runtime::RuntimeType for CommonFileQuery {
23     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Storage.Search.CommonFileQuery;i4)");
24 }
25 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
26 #[repr(transparent)]
27 pub struct CommonFolderQuery(pub i32);
28 impl CommonFolderQuery {
29     pub const DefaultQuery: CommonFolderQuery = CommonFolderQuery(0i32);
30     pub const GroupByYear: CommonFolderQuery = CommonFolderQuery(100i32);
31     pub const GroupByMonth: CommonFolderQuery = CommonFolderQuery(101i32);
32     pub const GroupByArtist: CommonFolderQuery = CommonFolderQuery(102i32);
33     pub const GroupByAlbum: CommonFolderQuery = CommonFolderQuery(103i32);
34     pub const GroupByAlbumArtist: CommonFolderQuery = CommonFolderQuery(104i32);
35     pub const GroupByComposer: CommonFolderQuery = CommonFolderQuery(105i32);
36     pub const GroupByGenre: CommonFolderQuery = CommonFolderQuery(106i32);
37     pub const GroupByPublishedYear: CommonFolderQuery = CommonFolderQuery(107i32);
38     pub const GroupByRating: CommonFolderQuery = CommonFolderQuery(108i32);
39     pub const GroupByTag: CommonFolderQuery = CommonFolderQuery(109i32);
40     pub const GroupByAuthor: CommonFolderQuery = CommonFolderQuery(110i32);
41     pub const GroupByType: CommonFolderQuery = CommonFolderQuery(111i32);
42 }
43 impl ::std::convert::From<i32> for CommonFolderQuery {
from(value: i32) -> Self44     fn from(value: i32) -> Self {
45         Self(value)
46     }
47 }
48 unsafe impl ::windows::runtime::Abi for CommonFolderQuery {
49     type Abi = Self;
50     type DefaultType = Self;
51 }
52 unsafe impl ::windows::runtime::RuntimeType for CommonFolderQuery {
53     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Storage.Search.CommonFolderQuery;i4)");
54 }
55 #[repr(transparent)]
56 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
57 pub struct ContentIndexer(::windows::runtime::IInspectable);
58 impl ContentIndexer {
59     #[cfg(feature = "Foundation")]
AddAsync<'a, Param0: ::windows::runtime::IntoParam<'a, IIndexableContent>>(&self, indexablecontent: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>60     pub fn AddAsync<'a, Param0: ::windows::runtime::IntoParam<'a, IIndexableContent>>(&self, indexablecontent: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
61         let this = self;
62         unsafe {
63             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
64             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), indexablecontent.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
65         }
66     }
67     #[cfg(feature = "Foundation")]
UpdateAsync<'a, Param0: ::windows::runtime::IntoParam<'a, IIndexableContent>>(&self, indexablecontent: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>68     pub fn UpdateAsync<'a, Param0: ::windows::runtime::IntoParam<'a, IIndexableContent>>(&self, indexablecontent: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
69         let this = self;
70         unsafe {
71             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
72             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), indexablecontent.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
73         }
74     }
75     #[cfg(feature = "Foundation")]
DeleteAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, contentid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>76     pub fn DeleteAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, contentid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
77         let this = self;
78         unsafe {
79             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
80             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), contentid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
81         }
82     }
83     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
DeleteMultipleAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, contentids: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>84     pub fn DeleteMultipleAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, contentids: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
85         let this = self;
86         unsafe {
87             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
88             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), contentids.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
89         }
90     }
91     #[cfg(feature = "Foundation")]
DeleteAllAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>92     pub fn DeleteAllAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
93         let this = self;
94         unsafe {
95             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
96             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
97         }
98     }
99     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RetrievePropertiesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, contentid: Param0, propertiestoretrieve: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>100     pub fn RetrievePropertiesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, contentid: Param0, propertiestoretrieve: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>> {
101         let this = self;
102         unsafe {
103             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
104             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), contentid.into_param().abi(), propertiestoretrieve.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>(result__)
105         }
106     }
Revision(&self) -> ::windows::runtime::Result<u64>107     pub fn Revision(&self) -> ::windows::runtime::Result<u64> {
108         let this = self;
109         unsafe {
110             let mut result__: u64 = ::std::mem::zeroed();
111             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u64>(result__)
112         }
113     }
114     #[cfg(feature = "Foundation_Collections")]
CreateQueryWithSortOrderAndLanguage<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<SortEntry>>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( &self, searchfilter: Param0, propertiestoretrieve: Param1, sortorder: Param2, searchfilterlanguage: Param3, ) -> ::windows::runtime::Result<ContentIndexerQuery>115     pub fn CreateQueryWithSortOrderAndLanguage<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<SortEntry>>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
116         &self,
117         searchfilter: Param0,
118         propertiestoretrieve: Param1,
119         sortorder: Param2,
120         searchfilterlanguage: Param3,
121     ) -> ::windows::runtime::Result<ContentIndexerQuery> {
122         let this = &::windows::runtime::Interface::cast::<IContentIndexerQueryOperations>(self)?;
123         unsafe {
124             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
125             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), searchfilter.into_param().abi(), propertiestoretrieve.into_param().abi(), sortorder.into_param().abi(), searchfilterlanguage.into_param().abi(), &mut result__).from_abi::<ContentIndexerQuery>(result__)
126         }
127     }
128     #[cfg(feature = "Foundation_Collections")]
CreateQueryWithSortOrder<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<SortEntry>>>(&self, searchfilter: Param0, propertiestoretrieve: Param1, sortorder: Param2) -> ::windows::runtime::Result<ContentIndexerQuery>129     pub fn CreateQueryWithSortOrder<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<SortEntry>>>(&self, searchfilter: Param0, propertiestoretrieve: Param1, sortorder: Param2) -> ::windows::runtime::Result<ContentIndexerQuery> {
130         let this = &::windows::runtime::Interface::cast::<IContentIndexerQueryOperations>(self)?;
131         unsafe {
132             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
133             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), searchfilter.into_param().abi(), propertiestoretrieve.into_param().abi(), sortorder.into_param().abi(), &mut result__).from_abi::<ContentIndexerQuery>(result__)
134         }
135     }
136     #[cfg(feature = "Foundation_Collections")]
CreateQuery<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, searchfilter: Param0, propertiestoretrieve: Param1) -> ::windows::runtime::Result<ContentIndexerQuery>137     pub fn CreateQuery<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, searchfilter: Param0, propertiestoretrieve: Param1) -> ::windows::runtime::Result<ContentIndexerQuery> {
138         let this = &::windows::runtime::Interface::cast::<IContentIndexerQueryOperations>(self)?;
139         unsafe {
140             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
141             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), searchfilter.into_param().abi(), propertiestoretrieve.into_param().abi(), &mut result__).from_abi::<ContentIndexerQuery>(result__)
142         }
143     }
GetIndexerWithName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(indexname: Param0) -> ::windows::runtime::Result<ContentIndexer>144     pub fn GetIndexerWithName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(indexname: Param0) -> ::windows::runtime::Result<ContentIndexer> {
145         Self::IContentIndexerStatics(|this| unsafe {
146             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
147             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), indexname.into_param().abi(), &mut result__).from_abi::<ContentIndexer>(result__)
148         })
149     }
GetIndexer() -> ::windows::runtime::Result<ContentIndexer>150     pub fn GetIndexer() -> ::windows::runtime::Result<ContentIndexer> {
151         Self::IContentIndexerStatics(|this| unsafe {
152             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
153             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ContentIndexer>(result__)
154         })
155     }
IContentIndexerStatics<R, F: FnOnce(&IContentIndexerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>156     pub fn IContentIndexerStatics<R, F: FnOnce(&IContentIndexerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
157         static mut SHARED: ::windows::runtime::FactoryCache<ContentIndexer, IContentIndexerStatics> = ::windows::runtime::FactoryCache::new();
158         unsafe { SHARED.call(callback) }
159     }
160 }
161 unsafe impl ::windows::runtime::RuntimeType for ContentIndexer {
162     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.ContentIndexer;{b1767f8d-f698-4982-b05f-3a6e8cab01a2})");
163 }
164 unsafe impl ::windows::runtime::Interface for ContentIndexer {
165     type Vtable = IContentIndexer_abi;
166     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2977333133, 63128, 18818, [176, 95, 58, 110, 140, 171, 1, 162]);
167 }
168 impl ::windows::runtime::RuntimeName for ContentIndexer {
169     const NAME: &'static str = "Windows.Storage.Search.ContentIndexer";
170 }
171 impl ::std::convert::From<ContentIndexer> for ::windows::runtime::IUnknown {
from(value: ContentIndexer) -> Self172     fn from(value: ContentIndexer) -> Self {
173         unsafe { ::std::mem::transmute(value) }
174     }
175 }
176 impl ::std::convert::From<&ContentIndexer> for ::windows::runtime::IUnknown {
from(value: &ContentIndexer) -> Self177     fn from(value: &ContentIndexer) -> Self {
178         ::std::convert::From::from(::std::clone::Clone::clone(value))
179     }
180 }
181 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ContentIndexer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>182     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
183         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
184     }
185 }
186 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ContentIndexer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>187     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
188         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
189     }
190 }
191 impl ::std::convert::From<ContentIndexer> for ::windows::runtime::IInspectable {
from(value: ContentIndexer) -> Self192     fn from(value: ContentIndexer) -> Self {
193         value.0
194     }
195 }
196 impl ::std::convert::From<&ContentIndexer> for ::windows::runtime::IInspectable {
from(value: &ContentIndexer) -> Self197     fn from(value: &ContentIndexer) -> Self {
198         value.0.clone()
199     }
200 }
201 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ContentIndexer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>202     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
203         ::windows::runtime::Param::Owned(self.0)
204     }
205 }
206 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ContentIndexer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>207     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
208         ::windows::runtime::Param::Borrowed(&self.0)
209     }
210 }
211 unsafe impl ::std::marker::Send for ContentIndexer {}
212 unsafe impl ::std::marker::Sync for ContentIndexer {}
213 #[repr(transparent)]
214 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
215 pub struct ContentIndexerQuery(::windows::runtime::IInspectable);
216 impl ContentIndexerQuery {
217     #[cfg(feature = "Foundation")]
GetCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>218     pub fn GetCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
219         let this = self;
220         unsafe {
221             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
222             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
223         }
224     }
225     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetPropertiesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>>226     pub fn GetPropertiesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>> {
227         let this = self;
228         unsafe {
229             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
230             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>>(result__)
231         }
232     }
233     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetPropertiesRangeAsync(&self, startindex: u32, maxitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>>234     pub fn GetPropertiesRangeAsync(&self, startindex: u32, maxitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>> {
235         let this = self;
236         unsafe {
237             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
238             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), startindex, maxitems, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>>>(result__)
239         }
240     }
241     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<IIndexableContent>>>242     pub fn GetAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<IIndexableContent>>> {
243         let this = self;
244         unsafe {
245             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
246             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<IIndexableContent>>>(result__)
247         }
248     }
249     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetRangeAsync(&self, startindex: u32, maxitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<IIndexableContent>>>250     pub fn GetRangeAsync(&self, startindex: u32, maxitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<IIndexableContent>>> {
251         let this = self;
252         unsafe {
253             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
254             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), startindex, maxitems, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<IIndexableContent>>>(result__)
255         }
256     }
QueryFolder(&self) -> ::windows::runtime::Result<super::StorageFolder>257     pub fn QueryFolder(&self) -> ::windows::runtime::Result<super::StorageFolder> {
258         let this = self;
259         unsafe {
260             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
261             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageFolder>(result__)
262         }
263     }
264 }
265 unsafe impl ::windows::runtime::RuntimeType for ContentIndexerQuery {
266     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.ContentIndexerQuery;{70e3b0f8-4bfc-428a-8889-cc51da9a7b9d})");
267 }
268 unsafe impl ::windows::runtime::Interface for ContentIndexerQuery {
269     type Vtable = IContentIndexerQuery_abi;
270     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1893970168, 19452, 17034, [136, 137, 204, 81, 218, 154, 123, 157]);
271 }
272 impl ::windows::runtime::RuntimeName for ContentIndexerQuery {
273     const NAME: &'static str = "Windows.Storage.Search.ContentIndexerQuery";
274 }
275 impl ::std::convert::From<ContentIndexerQuery> for ::windows::runtime::IUnknown {
from(value: ContentIndexerQuery) -> Self276     fn from(value: ContentIndexerQuery) -> Self {
277         unsafe { ::std::mem::transmute(value) }
278     }
279 }
280 impl ::std::convert::From<&ContentIndexerQuery> for ::windows::runtime::IUnknown {
from(value: &ContentIndexerQuery) -> Self281     fn from(value: &ContentIndexerQuery) -> Self {
282         ::std::convert::From::from(::std::clone::Clone::clone(value))
283     }
284 }
285 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ContentIndexerQuery {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>286     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
287         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
288     }
289 }
290 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ContentIndexerQuery {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>291     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
292         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
293     }
294 }
295 impl ::std::convert::From<ContentIndexerQuery> for ::windows::runtime::IInspectable {
from(value: ContentIndexerQuery) -> Self296     fn from(value: ContentIndexerQuery) -> Self {
297         value.0
298     }
299 }
300 impl ::std::convert::From<&ContentIndexerQuery> for ::windows::runtime::IInspectable {
from(value: &ContentIndexerQuery) -> Self301     fn from(value: &ContentIndexerQuery) -> Self {
302         value.0.clone()
303     }
304 }
305 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ContentIndexerQuery {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>306     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
307         ::windows::runtime::Param::Owned(self.0)
308     }
309 }
310 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ContentIndexerQuery {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>311     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
312         ::windows::runtime::Param::Borrowed(&self.0)
313     }
314 }
315 unsafe impl ::std::marker::Send for ContentIndexerQuery {}
316 unsafe impl ::std::marker::Sync for ContentIndexerQuery {}
317 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
318 #[repr(transparent)]
319 pub struct DateStackOption(pub i32);
320 impl DateStackOption {
321     pub const None: DateStackOption = DateStackOption(0i32);
322     pub const Year: DateStackOption = DateStackOption(1i32);
323     pub const Month: DateStackOption = DateStackOption(2i32);
324 }
325 impl ::std::convert::From<i32> for DateStackOption {
from(value: i32) -> Self326     fn from(value: i32) -> Self {
327         Self(value)
328     }
329 }
330 unsafe impl ::windows::runtime::Abi for DateStackOption {
331     type Abi = Self;
332     type DefaultType = Self;
333 }
334 unsafe impl ::windows::runtime::RuntimeType for DateStackOption {
335     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Storage.Search.DateStackOption;i4)");
336 }
337 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
338 #[repr(transparent)]
339 pub struct FolderDepth(pub i32);
340 impl FolderDepth {
341     pub const Shallow: FolderDepth = FolderDepth(0i32);
342     pub const Deep: FolderDepth = FolderDepth(1i32);
343 }
344 impl ::std::convert::From<i32> for FolderDepth {
from(value: i32) -> Self345     fn from(value: i32) -> Self {
346         Self(value)
347     }
348 }
349 unsafe impl ::windows::runtime::Abi for FolderDepth {
350     type Abi = Self;
351     type DefaultType = Self;
352 }
353 unsafe impl ::windows::runtime::RuntimeType for FolderDepth {
354     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Storage.Search.FolderDepth;i4)");
355 }
356 #[repr(transparent)]
357 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
358 #[doc(hidden)]
359 pub struct IContentIndexer(::windows::runtime::IInspectable);
360 unsafe impl ::windows::runtime::Interface for IContentIndexer {
361     type Vtable = IContentIndexer_abi;
362     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2977333133, 63128, 18818, [176, 95, 58, 110, 140, 171, 1, 162]);
363 }
364 #[repr(C)]
365 #[doc(hidden)]
366 pub struct IContentIndexer_abi(
367     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
368     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
369     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
371     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
372     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
373     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, indexablecontent: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
374     #[cfg(not(feature = "Foundation"))] usize,
375     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, indexablecontent: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
376     #[cfg(not(feature = "Foundation"))] usize,
377     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, contentid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
378     #[cfg(not(feature = "Foundation"))] usize,
379     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, contentids: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
380     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
381     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
382     #[cfg(not(feature = "Foundation"))] usize,
383     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, contentid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, propertiestoretrieve: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
384     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u64) -> ::windows::runtime::HRESULT,
386 );
387 #[repr(transparent)]
388 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
389 #[doc(hidden)]
390 pub struct IContentIndexerQuery(::windows::runtime::IInspectable);
391 unsafe impl ::windows::runtime::Interface for IContentIndexerQuery {
392     type Vtable = IContentIndexerQuery_abi;
393     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1893970168, 19452, 17034, [136, 137, 204, 81, 218, 154, 123, 157]);
394 }
395 #[repr(C)]
396 #[doc(hidden)]
397 pub struct IContentIndexerQuery_abi(
398     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
399     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
400     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
402     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
403     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
404     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
405     #[cfg(not(feature = "Foundation"))] usize,
406     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
407     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
408     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, startindex: u32, maxitems: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
409     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
410     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
411     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
412     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, startindex: u32, maxitems: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
413     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
414     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
415 );
416 #[repr(transparent)]
417 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
418 #[doc(hidden)]
419 pub struct IContentIndexerQueryOperations(::windows::runtime::IInspectable);
420 unsafe impl ::windows::runtime::Interface for IContentIndexerQueryOperations {
421     type Vtable = IContentIndexerQueryOperations_abi;
422     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(679624208, 18310, 17137, [151, 48, 121, 43, 53, 102, 177, 80]);
423 }
424 #[repr(C)]
425 #[doc(hidden)]
426 pub struct IContentIndexerQueryOperations_abi(
427     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
428     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
429     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
430     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
431     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
432     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
433     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, searchfilter: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, propertiestoretrieve: ::windows::runtime::RawPtr, sortorder: ::windows::runtime::RawPtr, searchfilterlanguage: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
434     #[cfg(not(feature = "Foundation_Collections"))] usize,
435     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, searchfilter: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, propertiestoretrieve: ::windows::runtime::RawPtr, sortorder: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
436     #[cfg(not(feature = "Foundation_Collections"))] usize,
437     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, searchfilter: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, propertiestoretrieve: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
438     #[cfg(not(feature = "Foundation_Collections"))] usize,
439 );
440 #[repr(transparent)]
441 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
442 #[doc(hidden)]
443 pub struct IContentIndexerStatics(::windows::runtime::IInspectable);
444 unsafe impl ::windows::runtime::Interface for IContentIndexerStatics {
445     type Vtable = IContentIndexerStatics_abi;
446     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2353562485, 45950, 19552, [155, 168, 183, 96, 253, 163, 229, 157]);
447 }
448 #[repr(C)]
449 #[doc(hidden)]
450 pub struct IContentIndexerStatics_abi(
451     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
452     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
453     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
454     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
455     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
456     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
457     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, indexname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
458     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
459 );
460 #[repr(transparent)]
461 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
462 pub struct IIndexableContent(::windows::runtime::IInspectable);
463 unsafe impl ::windows::runtime::Interface for IIndexableContent {
464     type Vtable = IIndexableContent_abi;
465     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3438387295, 54453, 18490, [176, 110, 224, 219, 30, 196, 32, 228]);
466 }
467 impl IIndexableContent {
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>468     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
469         let this = self;
470         unsafe {
471             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
472             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
473         }
474     }
SetId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>475     pub fn SetId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
476         let this = self;
477         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
478     }
479     #[cfg(feature = "Foundation_Collections")]
Properties(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>480     pub fn Properties(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>> {
481         let this = self;
482         unsafe {
483             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
484             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>(result__)
485         }
486     }
487     #[cfg(feature = "Storage_Streams")]
Stream(&self) -> ::windows::runtime::Result<super::Streams::IRandomAccessStream>488     pub fn Stream(&self) -> ::windows::runtime::Result<super::Streams::IRandomAccessStream> {
489         let this = self;
490         unsafe {
491             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
492             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::Streams::IRandomAccessStream>(result__)
493         }
494     }
495     #[cfg(feature = "Storage_Streams")]
SetStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Streams::IRandomAccessStream>>(&self, value: Param0) -> ::windows::runtime::Result<()>496     pub fn SetStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Streams::IRandomAccessStream>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
497         let this = self;
498         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
499     }
StreamContentType(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>500     pub fn StreamContentType(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
501         let this = self;
502         unsafe {
503             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
504             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
505         }
506     }
SetStreamContentType<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>507     pub fn SetStreamContentType<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
508         let this = self;
509         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
510     }
511 }
512 unsafe impl ::windows::runtime::RuntimeType for IIndexableContent {
513     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{ccf1a05f-d4b5-483a-b06e-e0db1ec420e4}");
514 }
515 impl ::std::convert::From<IIndexableContent> for ::windows::runtime::IUnknown {
from(value: IIndexableContent) -> Self516     fn from(value: IIndexableContent) -> Self {
517         unsafe { ::std::mem::transmute(value) }
518     }
519 }
520 impl ::std::convert::From<&IIndexableContent> for ::windows::runtime::IUnknown {
from(value: &IIndexableContent) -> Self521     fn from(value: &IIndexableContent) -> Self {
522         ::std::convert::From::from(::std::clone::Clone::clone(value))
523     }
524 }
525 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IIndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>526     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
527         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
528     }
529 }
530 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IIndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>531     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
532         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
533     }
534 }
535 impl ::std::convert::From<IIndexableContent> for ::windows::runtime::IInspectable {
from(value: IIndexableContent) -> Self536     fn from(value: IIndexableContent) -> Self {
537         value.0
538     }
539 }
540 impl ::std::convert::From<&IIndexableContent> for ::windows::runtime::IInspectable {
from(value: &IIndexableContent) -> Self541     fn from(value: &IIndexableContent) -> Self {
542         value.0.clone()
543     }
544 }
545 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for IIndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>546     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
547         ::windows::runtime::Param::Owned(self.0)
548     }
549 }
550 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a IIndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>551     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
552         ::windows::runtime::Param::Borrowed(&self.0)
553     }
554 }
555 #[repr(C)]
556 #[doc(hidden)]
557 pub struct IIndexableContent_abi(
558     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
559     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
560     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
561     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
562     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
564     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
565     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
566     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
567     #[cfg(not(feature = "Foundation_Collections"))] usize,
568     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
569     #[cfg(not(feature = "Storage_Streams"))] usize,
570     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
571     #[cfg(not(feature = "Storage_Streams"))] usize,
572     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
573     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
574 );
575 #[repr(transparent)]
576 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
577 #[doc(hidden)]
578 pub struct IQueryOptions(::windows::runtime::IInspectable);
579 unsafe impl ::windows::runtime::Interface for IQueryOptions {
580     type Vtable = IQueryOptions_abi;
581     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(509495022, 3909, 18488, [168, 233, 208, 71, 157, 68, 108, 48]);
582 }
583 #[repr(C)]
584 #[doc(hidden)]
585 pub struct IQueryOptions_abi(
586     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
587     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
588     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
589     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
590     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
591     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
592     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
593     #[cfg(not(feature = "Foundation_Collections"))] usize,
594     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut FolderDepth) -> ::windows::runtime::HRESULT,
595     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: FolderDepth) -> ::windows::runtime::HRESULT,
596     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
597     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
598     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
599     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
600     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
601     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
602     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut IndexerOption) -> ::windows::runtime::HRESULT,
603     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: IndexerOption) -> ::windows::runtime::HRESULT,
604     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
605     #[cfg(not(feature = "Foundation_Collections"))] usize,
606     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
607     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut DateStackOption) -> ::windows::runtime::HRESULT,
608     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
609     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
610     #[cfg(feature = "Storage_FileProperties")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mode: super::FileProperties::ThumbnailMode, requestedsize: u32, options: super::FileProperties::ThumbnailOptions) -> ::windows::runtime::HRESULT,
611     #[cfg(not(feature = "Storage_FileProperties"))] usize,
612     #[cfg(all(feature = "Foundation_Collections", feature = "Storage_FileProperties"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: super::FileProperties::PropertyPrefetchOptions, propertiestoretrieve: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
613     #[cfg(not(all(feature = "Foundation_Collections", feature = "Storage_FileProperties")))] usize,
614 );
615 #[repr(transparent)]
616 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
617 #[doc(hidden)]
618 pub struct IQueryOptionsFactory(::windows::runtime::IInspectable);
619 unsafe impl ::windows::runtime::Interface for IQueryOptionsFactory {
620     type Vtable = IQueryOptionsFactory_abi;
621     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(53354380, 43457, 20081, [128, 17, 13, 238, 157, 72, 17, 163]);
622 }
623 #[repr(C)]
624 #[doc(hidden)]
625 pub struct IQueryOptionsFactory_abi(
626     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
627     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
628     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
629     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
630     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
631     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
632     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFileQuery, filetypefilter: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
633     #[cfg(not(feature = "Foundation_Collections"))] usize,
634     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFolderQuery, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
635 );
636 #[repr(transparent)]
637 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
638 #[doc(hidden)]
639 pub struct IQueryOptionsWithProviderFilter(::windows::runtime::IInspectable);
640 unsafe impl ::windows::runtime::Interface for IQueryOptionsWithProviderFilter {
641     type Vtable = IQueryOptionsWithProviderFilter_abi;
642     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1537019942, 5572, 17629, [184, 154, 71, 165, 155, 125, 124, 79]);
643 }
644 #[repr(C)]
645 #[doc(hidden)]
646 pub struct IQueryOptionsWithProviderFilter_abi(
647     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
648     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
649     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
650     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
651     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
652     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
653     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
654     #[cfg(not(feature = "Foundation_Collections"))] usize,
655 );
656 #[repr(transparent)]
657 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
658 #[doc(hidden)]
659 pub struct IStorageFileQueryResult(::windows::runtime::IInspectable);
660 unsafe impl ::windows::runtime::Interface for IStorageFileQueryResult {
661     type Vtable = IStorageFileQueryResult_abi;
662     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1392354375, 11178, 16684, [178, 159, 212, 177, 119, 142, 250, 30]);
663 }
664 #[repr(C)]
665 #[doc(hidden)]
666 pub struct IStorageFileQueryResult_abi(
667     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
668     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
669     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
670     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
671     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
672     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
673     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, startindex: u32, maxnumberofitems: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
674     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
675     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
676     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
677 );
678 #[repr(transparent)]
679 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
680 #[doc(hidden)]
681 pub struct IStorageFileQueryResult2(::windows::runtime::IInspectable);
682 unsafe impl ::windows::runtime::Interface for IStorageFileQueryResult2 {
683     type Vtable = IStorageFileQueryResult2_abi;
684     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1314765277, 28993, 18116, [139, 227, 233, 220, 158, 39, 39, 92]);
685 }
686 #[repr(C)]
687 #[doc(hidden)]
688 pub struct IStorageFileQueryResult2_abi(
689     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
690     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
691     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
692     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
694     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
695     #[cfg(all(feature = "Data_Text", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, file: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
696     #[cfg(not(all(feature = "Data_Text", feature = "Foundation_Collections")))] usize,
697 );
698 #[repr(transparent)]
699 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
700 pub struct IStorageFolderQueryOperations(::windows::runtime::IInspectable);
701 unsafe impl ::windows::runtime::Interface for IStorageFolderQueryOperations {
702     type Vtable = IStorageFolderQueryOperations_abi;
703     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3410218185, 17515, 19023, [190, 151, 117, 119, 113, 190, 82, 3]);
704 }
705 impl IStorageFolderQueryOperations {
706     #[cfg(feature = "Foundation")]
GetIndexedStateAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<IndexedState>>707     pub fn GetIndexedStateAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<IndexedState>> {
708         let this = self;
709         unsafe {
710             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
711             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<IndexedState>>(result__)
712         }
713     }
CreateFileQueryOverloadDefault(&self) -> ::windows::runtime::Result<StorageFileQueryResult>714     pub fn CreateFileQueryOverloadDefault(&self) -> ::windows::runtime::Result<StorageFileQueryResult> {
715         let this = self;
716         unsafe {
717             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
718             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<StorageFileQueryResult>(result__)
719         }
720     }
CreateFileQuery(&self, query: CommonFileQuery) -> ::windows::runtime::Result<StorageFileQueryResult>721     pub fn CreateFileQuery(&self, query: CommonFileQuery) -> ::windows::runtime::Result<StorageFileQueryResult> {
722         let this = self;
723         unsafe {
724             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
725             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), query, &mut result__).from_abi::<StorageFileQueryResult>(result__)
726         }
727     }
CreateFileQueryWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<StorageFileQueryResult>728     pub fn CreateFileQueryWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<StorageFileQueryResult> {
729         let this = self;
730         unsafe {
731             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
732             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), queryoptions.into_param().abi(), &mut result__).from_abi::<StorageFileQueryResult>(result__)
733         }
734     }
CreateFolderQueryOverloadDefault(&self) -> ::windows::runtime::Result<StorageFolderQueryResult>735     pub fn CreateFolderQueryOverloadDefault(&self) -> ::windows::runtime::Result<StorageFolderQueryResult> {
736         let this = self;
737         unsafe {
738             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
739             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<StorageFolderQueryResult>(result__)
740         }
741     }
CreateFolderQuery(&self, query: CommonFolderQuery) -> ::windows::runtime::Result<StorageFolderQueryResult>742     pub fn CreateFolderQuery(&self, query: CommonFolderQuery) -> ::windows::runtime::Result<StorageFolderQueryResult> {
743         let this = self;
744         unsafe {
745             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
746             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), query, &mut result__).from_abi::<StorageFolderQueryResult>(result__)
747         }
748     }
CreateFolderQueryWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<StorageFolderQueryResult>749     pub fn CreateFolderQueryWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<StorageFolderQueryResult> {
750         let this = self;
751         unsafe {
752             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
753             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), queryoptions.into_param().abi(), &mut result__).from_abi::<StorageFolderQueryResult>(result__)
754         }
755     }
CreateItemQuery(&self) -> ::windows::runtime::Result<StorageItemQueryResult>756     pub fn CreateItemQuery(&self) -> ::windows::runtime::Result<StorageItemQueryResult> {
757         let this = self;
758         unsafe {
759             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
760             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<StorageItemQueryResult>(result__)
761         }
762     }
CreateItemQueryWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<StorageItemQueryResult>763     pub fn CreateItemQueryWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<StorageItemQueryResult> {
764         let this = self;
765         unsafe {
766             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
767             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), queryoptions.into_param().abi(), &mut result__).from_abi::<StorageItemQueryResult>(result__)
768         }
769     }
770     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFilesAsync(&self, query: CommonFileQuery, startindex: u32, maxitemstoretrieve: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>771     pub fn GetFilesAsync(&self, query: CommonFileQuery, startindex: u32, maxitemstoretrieve: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>> {
772         let this = self;
773         unsafe {
774             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
775             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), query, startindex, maxitemstoretrieve, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>(result__)
776         }
777     }
778     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFilesAsyncOverloadDefaultStartAndCount(&self, query: CommonFileQuery) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>779     pub fn GetFilesAsyncOverloadDefaultStartAndCount(&self, query: CommonFileQuery) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>> {
780         let this = self;
781         unsafe {
782             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
783             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), query, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>(result__)
784         }
785     }
786     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFoldersAsync(&self, query: CommonFolderQuery, startindex: u32, maxitemstoretrieve: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>787     pub fn GetFoldersAsync(&self, query: CommonFolderQuery, startindex: u32, maxitemstoretrieve: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>> {
788         let this = self;
789         unsafe {
790             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
791             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), query, startindex, maxitemstoretrieve, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>(result__)
792         }
793     }
794     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFoldersAsyncOverloadDefaultStartAndCount(&self, query: CommonFolderQuery) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>795     pub fn GetFoldersAsyncOverloadDefaultStartAndCount(&self, query: CommonFolderQuery) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>> {
796         let this = self;
797         unsafe {
798             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
799             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), query, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>(result__)
800         }
801     }
802     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetItemsAsync(&self, startindex: u32, maxitemstoretrieve: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>>803     pub fn GetItemsAsync(&self, startindex: u32, maxitemstoretrieve: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>> {
804         let this = self;
805         unsafe {
806             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
807             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), startindex, maxitemstoretrieve, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>>(result__)
808         }
809     }
AreQueryOptionsSupported<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<bool>810     pub fn AreQueryOptionsSupported<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, queryoptions: Param0) -> ::windows::runtime::Result<bool> {
811         let this = self;
812         unsafe {
813             let mut result__: bool = ::std::mem::zeroed();
814             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), queryoptions.into_param().abi(), &mut result__).from_abi::<bool>(result__)
815         }
816     }
IsCommonFolderQuerySupported(&self, query: CommonFolderQuery) -> ::windows::runtime::Result<bool>817     pub fn IsCommonFolderQuerySupported(&self, query: CommonFolderQuery) -> ::windows::runtime::Result<bool> {
818         let this = self;
819         unsafe {
820             let mut result__: bool = ::std::mem::zeroed();
821             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), query, &mut result__).from_abi::<bool>(result__)
822         }
823     }
IsCommonFileQuerySupported(&self, query: CommonFileQuery) -> ::windows::runtime::Result<bool>824     pub fn IsCommonFileQuerySupported(&self, query: CommonFileQuery) -> ::windows::runtime::Result<bool> {
825         let this = self;
826         unsafe {
827             let mut result__: bool = ::std::mem::zeroed();
828             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), query, &mut result__).from_abi::<bool>(result__)
829         }
830     }
831 }
832 unsafe impl ::windows::runtime::RuntimeType for IStorageFolderQueryOperations {
833     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{cb43ccc9-446b-4a4f-be97-757771be5203}");
834 }
835 impl ::std::convert::From<IStorageFolderQueryOperations> for ::windows::runtime::IUnknown {
from(value: IStorageFolderQueryOperations) -> Self836     fn from(value: IStorageFolderQueryOperations) -> Self {
837         unsafe { ::std::mem::transmute(value) }
838     }
839 }
840 impl ::std::convert::From<&IStorageFolderQueryOperations> for ::windows::runtime::IUnknown {
from(value: &IStorageFolderQueryOperations) -> Self841     fn from(value: &IStorageFolderQueryOperations) -> Self {
842         ::std::convert::From::from(::std::clone::Clone::clone(value))
843     }
844 }
845 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IStorageFolderQueryOperations {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>846     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
847         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
848     }
849 }
850 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IStorageFolderQueryOperations {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>851     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
852         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
853     }
854 }
855 impl ::std::convert::From<IStorageFolderQueryOperations> for ::windows::runtime::IInspectable {
from(value: IStorageFolderQueryOperations) -> Self856     fn from(value: IStorageFolderQueryOperations) -> Self {
857         value.0
858     }
859 }
860 impl ::std::convert::From<&IStorageFolderQueryOperations> for ::windows::runtime::IInspectable {
from(value: &IStorageFolderQueryOperations) -> Self861     fn from(value: &IStorageFolderQueryOperations) -> Self {
862         value.0.clone()
863     }
864 }
865 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for IStorageFolderQueryOperations {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>866     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
867         ::windows::runtime::Param::Owned(self.0)
868     }
869 }
870 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a IStorageFolderQueryOperations {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>871     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
872         ::windows::runtime::Param::Borrowed(&self.0)
873     }
874 }
875 #[repr(C)]
876 #[doc(hidden)]
877 pub struct IStorageFolderQueryOperations_abi(
878     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
879     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
880     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
881     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
882     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
883     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
884     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
885     #[cfg(not(feature = "Foundation"))] usize,
886     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
887     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFileQuery, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
888     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, queryoptions: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFolderQuery, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, queryoptions: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
893     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, queryoptions: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
894     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFileQuery, startindex: u32, maxitemstoretrieve: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
895     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
896     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFileQuery, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
897     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
898     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFolderQuery, startindex: u32, maxitemstoretrieve: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
899     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
900     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFolderQuery, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
901     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
902     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, startindex: u32, maxitemstoretrieve: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
903     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
904     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, queryoptions: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
905     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFolderQuery, result__: *mut bool) -> ::windows::runtime::HRESULT,
906     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, query: CommonFileQuery, result__: *mut bool) -> ::windows::runtime::HRESULT,
907 );
908 #[repr(transparent)]
909 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
910 #[doc(hidden)]
911 pub struct IStorageFolderQueryResult(::windows::runtime::IInspectable);
912 unsafe impl ::windows::runtime::Interface for IStorageFolderQueryResult {
913     type Vtable = IStorageFolderQueryResult_abi;
914     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1716832529, 32102, 18170, [174, 207, 228, 164, 186, 169, 58, 184]);
915 }
916 #[repr(C)]
917 #[doc(hidden)]
918 pub struct IStorageFolderQueryResult_abi(
919     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
920     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
921     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
922     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
923     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
924     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
925     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, startindex: u32, maxnumberofitems: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
926     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
927     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
928     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
929 );
930 #[repr(transparent)]
931 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
932 #[doc(hidden)]
933 pub struct IStorageItemQueryResult(::windows::runtime::IInspectable);
934 unsafe impl ::windows::runtime::Interface for IStorageItemQueryResult {
935     type Vtable = IStorageItemQueryResult_abi;
936     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3902046329, 40280, 18360, [178, 178, 65, 176, 127, 71, 149, 249]);
937 }
938 #[repr(C)]
939 #[doc(hidden)]
940 pub struct IStorageItemQueryResult_abi(
941     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
942     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
943     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
944     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
945     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
946     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
947     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, startindex: u32, maxnumberofitems: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
948     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
949     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
950     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
951 );
952 #[repr(transparent)]
953 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
954 #[doc(hidden)]
955 pub struct IStorageLibraryChangeTrackerTriggerDetails(::windows::runtime::IInspectable);
956 unsafe impl ::windows::runtime::Interface for IStorageLibraryChangeTrackerTriggerDetails {
957     type Vtable = IStorageLibraryChangeTrackerTriggerDetails_abi;
958     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(499622761, 47011, 19954, [157, 97, 235, 168, 90, 3, 67, 210]);
959 }
960 #[repr(C)]
961 #[doc(hidden)]
962 pub struct IStorageLibraryChangeTrackerTriggerDetails_abi(
963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
964     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
967     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
968     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
969     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
970     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
971 );
972 #[repr(transparent)]
973 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
974 #[doc(hidden)]
975 pub struct IStorageLibraryContentChangedTriggerDetails(::windows::runtime::IInspectable);
976 unsafe impl ::windows::runtime::Interface for IStorageLibraryContentChangedTriggerDetails {
977     type Vtable = IStorageLibraryContentChangedTriggerDetails_abi;
978     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(708254071, 43967, 19997, [138, 165, 99, 133, 216, 136, 71, 153]);
979 }
980 #[repr(C)]
981 #[doc(hidden)]
982 pub struct IStorageLibraryContentChangedTriggerDetails_abi(
983     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
984     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
985     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
986     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
987     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
988     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
989     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
990     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lastquerytime: super::super::Foundation::DateTime, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
991     #[cfg(not(feature = "Foundation"))] usize,
992 );
993 #[repr(transparent)]
994 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
995 pub struct IStorageQueryResultBase(::windows::runtime::IInspectable);
996 unsafe impl ::windows::runtime::Interface for IStorageQueryResultBase {
997     type Vtable = IStorageQueryResultBase_abi;
998     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3264730893, 29523, 18347, [186, 88, 140, 97, 66, 93, 197, 75]);
999 }
1000 impl IStorageQueryResultBase {
1001     #[cfg(feature = "Foundation")]
GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>1002     pub fn GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
1003         let this = self;
1004         unsafe {
1005             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1006             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
1007         }
1008     }
Folder(&self) -> ::windows::runtime::Result<super::StorageFolder>1009     pub fn Folder(&self) -> ::windows::runtime::Result<super::StorageFolder> {
1010         let this = self;
1011         unsafe {
1012             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1013             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageFolder>(result__)
1014         }
1015     }
1016     #[cfg(feature = "Foundation")]
ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1017     pub fn ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1018         let this = self;
1019         unsafe {
1020             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1021             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1022         }
1023     }
1024     #[cfg(feature = "Foundation")]
RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>1025     pub fn RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
1026         let this = self;
1027         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
1028     }
1029     #[cfg(feature = "Foundation")]
OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1030     pub fn OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1031         let this = self;
1032         unsafe {
1033             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1034             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), changedhandler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1035         }
1036     }
1037     #[cfg(feature = "Foundation")]
RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>1038     pub fn RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
1039         let this = self;
1040         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
1041     }
1042     #[cfg(feature = "Foundation")]
FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>1043     pub fn FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
1044         let this = self;
1045         unsafe {
1046             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1047             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
1048         }
1049     }
GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions>1050     pub fn GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions> {
1051         let this = self;
1052         unsafe {
1053             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1054             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<QueryOptions>(result__)
1055         }
1056     }
ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()>1057     pub fn ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()> {
1058         let this = self;
1059         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), newqueryoptions.into_param().abi()).ok() }
1060     }
1061 }
1062 unsafe impl ::windows::runtime::RuntimeType for IStorageQueryResultBase {
1063     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{c297d70d-7353-47ab-ba58-8c61425dc54b}");
1064 }
1065 impl ::std::convert::From<IStorageQueryResultBase> for ::windows::runtime::IUnknown {
from(value: IStorageQueryResultBase) -> Self1066     fn from(value: IStorageQueryResultBase) -> Self {
1067         unsafe { ::std::mem::transmute(value) }
1068     }
1069 }
1070 impl ::std::convert::From<&IStorageQueryResultBase> for ::windows::runtime::IUnknown {
from(value: &IStorageQueryResultBase) -> Self1071     fn from(value: &IStorageQueryResultBase) -> Self {
1072         ::std::convert::From::from(::std::clone::Clone::clone(value))
1073     }
1074 }
1075 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IStorageQueryResultBase {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1076     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1077         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1078     }
1079 }
1080 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IStorageQueryResultBase {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1081     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1082         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1083     }
1084 }
1085 impl ::std::convert::From<IStorageQueryResultBase> for ::windows::runtime::IInspectable {
from(value: IStorageQueryResultBase) -> Self1086     fn from(value: IStorageQueryResultBase) -> Self {
1087         value.0
1088     }
1089 }
1090 impl ::std::convert::From<&IStorageQueryResultBase> for ::windows::runtime::IInspectable {
from(value: &IStorageQueryResultBase) -> Self1091     fn from(value: &IStorageQueryResultBase) -> Self {
1092         value.0.clone()
1093     }
1094 }
1095 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for IStorageQueryResultBase {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1096     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1097         ::windows::runtime::Param::Owned(self.0)
1098     }
1099 }
1100 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a IStorageQueryResultBase {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1101     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1102         ::windows::runtime::Param::Borrowed(&self.0)
1103     }
1104 }
1105 #[repr(C)]
1106 #[doc(hidden)]
1107 pub struct IStorageQueryResultBase_abi(
1108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1109     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1110     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1111     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1112     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1113     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1114     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1115     #[cfg(not(feature = "Foundation"))] usize,
1116     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1117     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
1118     #[cfg(not(feature = "Foundation"))] usize,
1119     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, eventcookie: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
1120     #[cfg(not(feature = "Foundation"))] usize,
1121     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, changedhandler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
1122     #[cfg(not(feature = "Foundation"))] usize,
1123     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, eventcookie: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
1124     #[cfg(not(feature = "Foundation"))] usize,
1125     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1126     #[cfg(not(feature = "Foundation"))] usize,
1127     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1128     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, newqueryoptions: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1129 );
1130 #[repr(transparent)]
1131 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1132 #[doc(hidden)]
1133 pub struct IValueAndLanguage(::windows::runtime::IInspectable);
1134 unsafe impl ::windows::runtime::Interface for IValueAndLanguage {
1135     type Vtable = IValueAndLanguage_abi;
1136     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3113306241, 41454, 19396, [146, 165, 70, 105, 104, 227, 4, 54]);
1137 }
1138 #[repr(C)]
1139 #[doc(hidden)]
1140 pub struct IValueAndLanguage_abi(
1141     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1142     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1143     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1144     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1145     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1146     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1147     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1148     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1149     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1150     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1151 );
1152 #[repr(transparent)]
1153 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1154 pub struct IndexableContent(::windows::runtime::IInspectable);
1155 impl IndexableContent {
new() -> ::windows::runtime::Result<Self>1156     pub fn new() -> ::windows::runtime::Result<Self> {
1157         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1158     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1159     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1160         static mut SHARED: ::windows::runtime::FactoryCache<IndexableContent, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1161         unsafe { SHARED.call(callback) }
1162     }
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1163     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1164         let this = self;
1165         unsafe {
1166             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1167             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1168         }
1169     }
SetId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1170     pub fn SetId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1171         let this = self;
1172         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1173     }
1174     #[cfg(feature = "Foundation_Collections")]
Properties(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>1175     pub fn Properties(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>> {
1176         let this = self;
1177         unsafe {
1178             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1179             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>(result__)
1180         }
1181     }
1182     #[cfg(feature = "Storage_Streams")]
Stream(&self) -> ::windows::runtime::Result<super::Streams::IRandomAccessStream>1183     pub fn Stream(&self) -> ::windows::runtime::Result<super::Streams::IRandomAccessStream> {
1184         let this = self;
1185         unsafe {
1186             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1187             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::Streams::IRandomAccessStream>(result__)
1188         }
1189     }
1190     #[cfg(feature = "Storage_Streams")]
SetStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Streams::IRandomAccessStream>>(&self, value: Param0) -> ::windows::runtime::Result<()>1191     pub fn SetStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Streams::IRandomAccessStream>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1192         let this = self;
1193         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1194     }
StreamContentType(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1195     pub fn StreamContentType(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1196         let this = self;
1197         unsafe {
1198             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1199             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1200         }
1201     }
SetStreamContentType<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1202     pub fn SetStreamContentType<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1203         let this = self;
1204         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1205     }
1206 }
1207 unsafe impl ::windows::runtime::RuntimeType for IndexableContent {
1208     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.IndexableContent;{ccf1a05f-d4b5-483a-b06e-e0db1ec420e4})");
1209 }
1210 unsafe impl ::windows::runtime::Interface for IndexableContent {
1211     type Vtable = IIndexableContent_abi;
1212     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3438387295, 54453, 18490, [176, 110, 224, 219, 30, 196, 32, 228]);
1213 }
1214 impl ::windows::runtime::RuntimeName for IndexableContent {
1215     const NAME: &'static str = "Windows.Storage.Search.IndexableContent";
1216 }
1217 impl ::std::convert::From<IndexableContent> for ::windows::runtime::IUnknown {
from(value: IndexableContent) -> Self1218     fn from(value: IndexableContent) -> Self {
1219         unsafe { ::std::mem::transmute(value) }
1220     }
1221 }
1222 impl ::std::convert::From<&IndexableContent> for ::windows::runtime::IUnknown {
from(value: &IndexableContent) -> Self1223     fn from(value: &IndexableContent) -> Self {
1224         ::std::convert::From::from(::std::clone::Clone::clone(value))
1225     }
1226 }
1227 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1228     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1229         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1230     }
1231 }
1232 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>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 impl ::std::convert::From<IndexableContent> for ::windows::runtime::IInspectable {
from(value: IndexableContent) -> Self1238     fn from(value: IndexableContent) -> Self {
1239         value.0
1240     }
1241 }
1242 impl ::std::convert::From<&IndexableContent> for ::windows::runtime::IInspectable {
from(value: &IndexableContent) -> Self1243     fn from(value: &IndexableContent) -> Self {
1244         value.0.clone()
1245     }
1246 }
1247 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for IndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1248     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1249         ::windows::runtime::Param::Owned(self.0)
1250     }
1251 }
1252 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a IndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1253     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1254         ::windows::runtime::Param::Borrowed(&self.0)
1255     }
1256 }
1257 impl ::std::convert::From<IndexableContent> for IIndexableContent {
from(value: IndexableContent) -> Self1258     fn from(value: IndexableContent) -> Self {
1259         unsafe { ::std::mem::transmute(value) }
1260     }
1261 }
1262 impl ::std::convert::From<&IndexableContent> for IIndexableContent {
from(value: &IndexableContent) -> Self1263     fn from(value: &IndexableContent) -> Self {
1264         ::std::convert::From::from(::std::clone::Clone::clone(value))
1265     }
1266 }
1267 impl<'a> ::windows::runtime::IntoParam<'a, IIndexableContent> for IndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, IIndexableContent>1268     fn into_param(self) -> ::windows::runtime::Param<'a, IIndexableContent> {
1269         ::windows::runtime::Param::Owned(::std::convert::Into::<IIndexableContent>::into(self))
1270     }
1271 }
1272 impl<'a> ::windows::runtime::IntoParam<'a, IIndexableContent> for &IndexableContent {
into_param(self) -> ::windows::runtime::Param<'a, IIndexableContent>1273     fn into_param(self) -> ::windows::runtime::Param<'a, IIndexableContent> {
1274         ::windows::runtime::Param::Owned(::std::convert::Into::<IIndexableContent>::into(::std::clone::Clone::clone(self)))
1275     }
1276 }
1277 unsafe impl ::std::marker::Send for IndexableContent {}
1278 unsafe impl ::std::marker::Sync for IndexableContent {}
1279 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1280 #[repr(transparent)]
1281 pub struct IndexedState(pub i32);
1282 impl IndexedState {
1283     pub const Unknown: IndexedState = IndexedState(0i32);
1284     pub const NotIndexed: IndexedState = IndexedState(1i32);
1285     pub const PartiallyIndexed: IndexedState = IndexedState(2i32);
1286     pub const FullyIndexed: IndexedState = IndexedState(3i32);
1287 }
1288 impl ::std::convert::From<i32> for IndexedState {
from(value: i32) -> Self1289     fn from(value: i32) -> Self {
1290         Self(value)
1291     }
1292 }
1293 unsafe impl ::windows::runtime::Abi for IndexedState {
1294     type Abi = Self;
1295     type DefaultType = Self;
1296 }
1297 unsafe impl ::windows::runtime::RuntimeType for IndexedState {
1298     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Storage.Search.IndexedState;i4)");
1299 }
1300 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1301 #[repr(transparent)]
1302 pub struct IndexerOption(pub i32);
1303 impl IndexerOption {
1304     pub const UseIndexerWhenAvailable: IndexerOption = IndexerOption(0i32);
1305     pub const OnlyUseIndexer: IndexerOption = IndexerOption(1i32);
1306     pub const DoNotUseIndexer: IndexerOption = IndexerOption(2i32);
1307     pub const OnlyUseIndexerAndOptimizeForIndexedProperties: IndexerOption = IndexerOption(3i32);
1308 }
1309 impl ::std::convert::From<i32> for IndexerOption {
from(value: i32) -> Self1310     fn from(value: i32) -> Self {
1311         Self(value)
1312     }
1313 }
1314 unsafe impl ::windows::runtime::Abi for IndexerOption {
1315     type Abi = Self;
1316     type DefaultType = Self;
1317 }
1318 unsafe impl ::windows::runtime::RuntimeType for IndexerOption {
1319     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Storage.Search.IndexerOption;i4)");
1320 }
1321 #[repr(transparent)]
1322 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1323 pub struct QueryOptions(::windows::runtime::IInspectable);
1324 impl QueryOptions {
new() -> ::windows::runtime::Result<Self>1325     pub fn new() -> ::windows::runtime::Result<Self> {
1326         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1327     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1328     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1329         static mut SHARED: ::windows::runtime::FactoryCache<QueryOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1330         unsafe { SHARED.call(callback) }
1331     }
1332     #[cfg(feature = "Foundation_Collections")]
FileTypeFilter(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>1333     pub fn FileTypeFilter(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
1334         let this = self;
1335         unsafe {
1336             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1337             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
1338         }
1339     }
FolderDepth(&self) -> ::windows::runtime::Result<FolderDepth>1340     pub fn FolderDepth(&self) -> ::windows::runtime::Result<FolderDepth> {
1341         let this = self;
1342         unsafe {
1343             let mut result__: FolderDepth = ::std::mem::zeroed();
1344             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FolderDepth>(result__)
1345         }
1346     }
SetFolderDepth(&self, value: FolderDepth) -> ::windows::runtime::Result<()>1347     pub fn SetFolderDepth(&self, value: FolderDepth) -> ::windows::runtime::Result<()> {
1348         let this = self;
1349         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
1350     }
ApplicationSearchFilter(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1351     pub fn ApplicationSearchFilter(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1352         let this = self;
1353         unsafe {
1354             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1355             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1356         }
1357     }
SetApplicationSearchFilter<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1358     pub fn SetApplicationSearchFilter<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1359         let this = self;
1360         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1361     }
UserSearchFilter(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1362     pub fn UserSearchFilter(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1363         let this = self;
1364         unsafe {
1365             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1366             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1367         }
1368     }
SetUserSearchFilter<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1369     pub fn SetUserSearchFilter<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1370         let this = self;
1371         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1372     }
Language(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1373     pub fn Language(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1374         let this = self;
1375         unsafe {
1376             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1377             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1378         }
1379     }
SetLanguage<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1380     pub fn SetLanguage<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1381         let this = self;
1382         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1383     }
IndexerOption(&self) -> ::windows::runtime::Result<IndexerOption>1384     pub fn IndexerOption(&self) -> ::windows::runtime::Result<IndexerOption> {
1385         let this = self;
1386         unsafe {
1387             let mut result__: IndexerOption = ::std::mem::zeroed();
1388             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<IndexerOption>(result__)
1389         }
1390     }
SetIndexerOption(&self, value: IndexerOption) -> ::windows::runtime::Result<()>1391     pub fn SetIndexerOption(&self, value: IndexerOption) -> ::windows::runtime::Result<()> {
1392         let this = self;
1393         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value).ok() }
1394     }
1395     #[cfg(feature = "Foundation_Collections")]
SortOrder(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SortEntry>>1396     pub fn SortOrder(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SortEntry>> {
1397         let this = self;
1398         unsafe {
1399             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1400             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<SortEntry>>(result__)
1401         }
1402     }
GroupPropertyName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1403     pub fn GroupPropertyName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1404         let this = self;
1405         unsafe {
1406             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1407             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1408         }
1409     }
DateStackOption(&self) -> ::windows::runtime::Result<DateStackOption>1410     pub fn DateStackOption(&self) -> ::windows::runtime::Result<DateStackOption> {
1411         let this = self;
1412         unsafe {
1413             let mut result__: DateStackOption = ::std::mem::zeroed();
1414             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<DateStackOption>(result__)
1415         }
1416     }
SaveToString(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1417     pub fn SaveToString(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1418         let this = self;
1419         unsafe {
1420             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1421             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1422         }
1423     }
LoadFromString<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1424     pub fn LoadFromString<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1425         let this = self;
1426         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1427     }
1428     #[cfg(feature = "Storage_FileProperties")]
SetThumbnailPrefetch(&self, mode: super::FileProperties::ThumbnailMode, requestedsize: u32, options: super::FileProperties::ThumbnailOptions) -> ::windows::runtime::Result<()>1429     pub fn SetThumbnailPrefetch(&self, mode: super::FileProperties::ThumbnailMode, requestedsize: u32, options: super::FileProperties::ThumbnailOptions) -> ::windows::runtime::Result<()> {
1430         let this = self;
1431         unsafe { (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), mode, requestedsize, options).ok() }
1432     }
1433     #[cfg(all(feature = "Foundation_Collections", feature = "Storage_FileProperties"))]
SetPropertyPrefetch<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, options: super::FileProperties::PropertyPrefetchOptions, propertiestoretrieve: Param1) -> ::windows::runtime::Result<()>1434     pub fn SetPropertyPrefetch<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, options: super::FileProperties::PropertyPrefetchOptions, propertiestoretrieve: Param1) -> ::windows::runtime::Result<()> {
1435         let this = self;
1436         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), options, propertiestoretrieve.into_param().abi()).ok() }
1437     }
1438     #[cfg(feature = "Foundation_Collections")]
StorageProviderIdFilter(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>1439     pub fn StorageProviderIdFilter(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
1440         let this = &::windows::runtime::Interface::cast::<IQueryOptionsWithProviderFilter>(self)?;
1441         unsafe {
1442             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1443             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
1444         }
1445     }
1446     #[cfg(feature = "Foundation_Collections")]
CreateCommonFileQuery<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(query: CommonFileQuery, filetypefilter: Param1) -> ::windows::runtime::Result<QueryOptions>1447     pub fn CreateCommonFileQuery<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(query: CommonFileQuery, filetypefilter: Param1) -> ::windows::runtime::Result<QueryOptions> {
1448         Self::IQueryOptionsFactory(|this| unsafe {
1449             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1450             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), query, filetypefilter.into_param().abi(), &mut result__).from_abi::<QueryOptions>(result__)
1451         })
1452     }
CreateCommonFolderQuery(query: CommonFolderQuery) -> ::windows::runtime::Result<QueryOptions>1453     pub fn CreateCommonFolderQuery(query: CommonFolderQuery) -> ::windows::runtime::Result<QueryOptions> {
1454         Self::IQueryOptionsFactory(|this| unsafe {
1455             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1456             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), query, &mut result__).from_abi::<QueryOptions>(result__)
1457         })
1458     }
IQueryOptionsFactory<R, F: FnOnce(&IQueryOptionsFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1459     pub fn IQueryOptionsFactory<R, F: FnOnce(&IQueryOptionsFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1460         static mut SHARED: ::windows::runtime::FactoryCache<QueryOptions, IQueryOptionsFactory> = ::windows::runtime::FactoryCache::new();
1461         unsafe { SHARED.call(callback) }
1462     }
1463 }
1464 unsafe impl ::windows::runtime::RuntimeType for QueryOptions {
1465     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.QueryOptions;{1e5e46ee-0f45-4838-a8e9-d0479d446c30})");
1466 }
1467 unsafe impl ::windows::runtime::Interface for QueryOptions {
1468     type Vtable = IQueryOptions_abi;
1469     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(509495022, 3909, 18488, [168, 233, 208, 71, 157, 68, 108, 48]);
1470 }
1471 impl ::windows::runtime::RuntimeName for QueryOptions {
1472     const NAME: &'static str = "Windows.Storage.Search.QueryOptions";
1473 }
1474 impl ::std::convert::From<QueryOptions> for ::windows::runtime::IUnknown {
from(value: QueryOptions) -> Self1475     fn from(value: QueryOptions) -> Self {
1476         unsafe { ::std::mem::transmute(value) }
1477     }
1478 }
1479 impl ::std::convert::From<&QueryOptions> for ::windows::runtime::IUnknown {
from(value: &QueryOptions) -> Self1480     fn from(value: &QueryOptions) -> Self {
1481         ::std::convert::From::from(::std::clone::Clone::clone(value))
1482     }
1483 }
1484 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for QueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1485     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1486         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1487     }
1488 }
1489 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &QueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1490     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1491         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1492     }
1493 }
1494 impl ::std::convert::From<QueryOptions> for ::windows::runtime::IInspectable {
from(value: QueryOptions) -> Self1495     fn from(value: QueryOptions) -> Self {
1496         value.0
1497     }
1498 }
1499 impl ::std::convert::From<&QueryOptions> for ::windows::runtime::IInspectable {
from(value: &QueryOptions) -> Self1500     fn from(value: &QueryOptions) -> Self {
1501         value.0.clone()
1502     }
1503 }
1504 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for QueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1505     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1506         ::windows::runtime::Param::Owned(self.0)
1507     }
1508 }
1509 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a QueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1510     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1511         ::windows::runtime::Param::Borrowed(&self.0)
1512     }
1513 }
1514 unsafe impl ::std::marker::Send for QueryOptions {}
1515 unsafe impl ::std::marker::Sync for QueryOptions {}
1516 #[derive(:: std :: clone :: Clone)]
1517 #[repr(C)]
1518 pub struct SortEntry {
1519     pub PropertyName: ::windows::runtime::HSTRING,
1520     pub AscendingOrder: bool,
1521 }
1522 impl SortEntry {}
1523 impl ::std::default::Default for SortEntry {
default() -> Self1524     fn default() -> Self {
1525         unsafe { ::std::mem::zeroed() }
1526     }
1527 }
1528 impl ::std::fmt::Debug for SortEntry {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1529     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1530         fmt.debug_struct("SortEntry").field("PropertyName", &self.PropertyName).field("AscendingOrder", &self.AscendingOrder).finish()
1531     }
1532 }
1533 impl ::std::cmp::PartialEq for SortEntry {
eq(&self, other: &Self) -> bool1534     fn eq(&self, other: &Self) -> bool {
1535         self.PropertyName == other.PropertyName && self.AscendingOrder == other.AscendingOrder
1536     }
1537 }
1538 impl ::std::cmp::Eq for SortEntry {}
1539 unsafe impl ::windows::runtime::Abi for SortEntry {
1540     type Abi = ::std::mem::ManuallyDrop<Self>;
1541     type DefaultType = Self;
1542 }
1543 unsafe impl ::windows::runtime::RuntimeType for SortEntry {
1544     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"struct(Windows.Storage.Search.SortEntry;string;b1)");
1545 }
1546 #[cfg(feature = "Foundation_Collections")]
1547 #[repr(transparent)]
1548 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1549 pub struct SortEntryVector(::windows::runtime::IInspectable);
1550 #[cfg(feature = "Foundation_Collections")]
1551 impl SortEntryVector {
1552     #[cfg(feature = "Foundation_Collections")]
GetAt(&self, index: u32) -> ::windows::runtime::Result<SortEntry>1553     pub fn GetAt(&self, index: u32) -> ::windows::runtime::Result<SortEntry> {
1554         let this = self;
1555         unsafe {
1556             let mut result__: ::std::mem::ManuallyDrop<SortEntry> = ::std::mem::zeroed();
1557             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), index, &mut result__).from_abi::<SortEntry>(result__)
1558         }
1559     }
1560     #[cfg(feature = "Foundation_Collections")]
Size(&self) -> ::windows::runtime::Result<u32>1561     pub fn Size(&self) -> ::windows::runtime::Result<u32> {
1562         let this = self;
1563         unsafe {
1564             let mut result__: u32 = ::std::mem::zeroed();
1565             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1566         }
1567     }
1568     #[cfg(feature = "Foundation_Collections")]
GetView(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<SortEntry>>1569     pub fn GetView(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<SortEntry>> {
1570         let this = self;
1571         unsafe {
1572             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1573             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<SortEntry>>(result__)
1574         }
1575     }
1576     #[cfg(feature = "Foundation_Collections")]
IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool>1577     pub fn IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool> {
1578         let this = self;
1579         unsafe {
1580             let mut result__: bool = ::std::mem::zeroed();
1581             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi(), index, &mut result__).from_abi::<bool>(result__)
1582         }
1583     }
1584     #[cfg(feature = "Foundation_Collections")]
SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()>1585     pub fn SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
1586         let this = self;
1587         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
1588     }
1589     #[cfg(feature = "Foundation_Collections")]
InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()>1590     pub fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
1591         let this = self;
1592         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
1593     }
1594     #[cfg(feature = "Foundation_Collections")]
RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()>1595     pub fn RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()> {
1596         let this = self;
1597         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), index).ok() }
1598     }
1599     #[cfg(feature = "Foundation_Collections")]
Append<'a, Param0: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, value: Param0) -> ::windows::runtime::Result<()>1600     pub fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, SortEntry>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1601         let this = self;
1602         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1603     }
1604     #[cfg(feature = "Foundation_Collections")]
RemoveAtEnd(&self) -> ::windows::runtime::Result<()>1605     pub fn RemoveAtEnd(&self) -> ::windows::runtime::Result<()> {
1606         let this = self;
1607         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
1608     }
1609     #[cfg(feature = "Foundation_Collections")]
Clear(&self) -> ::windows::runtime::Result<()>1610     pub fn Clear(&self) -> ::windows::runtime::Result<()> {
1611         let this = self;
1612         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
1613     }
1614     #[cfg(feature = "Foundation_Collections")]
GetMany(&self, startindex: u32, items: &mut [<SortEntry as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32>1615     pub fn GetMany(&self, startindex: u32, items: &mut [<SortEntry as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32> {
1616         let this = self;
1617         unsafe {
1618             let mut result__: u32 = ::std::mem::zeroed();
1619             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), startindex, items.len() as u32, ::std::mem::transmute_copy(&items), &mut result__).from_abi::<u32>(result__)
1620         }
1621     }
1622     #[cfg(feature = "Foundation_Collections")]
ReplaceAll(&self, items: &[<SortEntry as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()>1623     pub fn ReplaceAll(&self, items: &[<SortEntry as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()> {
1624         let this = self;
1625         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), items.len() as u32, ::std::mem::transmute(items.as_ptr())).ok() }
1626     }
1627     #[cfg(feature = "Foundation_Collections")]
First(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterator<SortEntry>>1628     pub fn First(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterator<SortEntry>> {
1629         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::Collections::IIterable<SortEntry>>(self)?;
1630         unsafe {
1631             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1632             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IIterator<SortEntry>>(result__)
1633         }
1634     }
1635 }
1636 #[cfg(feature = "Foundation_Collections")]
1637 unsafe impl ::windows::runtime::RuntimeType for SortEntryVector {
1638     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.SortEntryVector;pinterface({913337e9-11a1-4345-a3a2-4e7f956e222d};struct(Windows.Storage.Search.SortEntry;string;b1)))");
1639 }
1640 #[cfg(feature = "Foundation_Collections")]
1641 unsafe impl ::windows::runtime::Interface for SortEntryVector {
1642     type Vtable = super::super::Foundation::Collections::IVector_abi<SortEntry>;
1643     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_signature(<super::super::Foundation::Collections::IVector<SortEntry> as ::windows::runtime::RuntimeType>::SIGNATURE);
1644 }
1645 #[cfg(feature = "Foundation_Collections")]
1646 impl ::windows::runtime::RuntimeName for SortEntryVector {
1647     const NAME: &'static str = "Windows.Storage.Search.SortEntryVector";
1648 }
1649 #[cfg(feature = "Foundation_Collections")]
1650 impl ::std::convert::From<SortEntryVector> for ::windows::runtime::IUnknown {
from(value: SortEntryVector) -> Self1651     fn from(value: SortEntryVector) -> Self {
1652         unsafe { ::std::mem::transmute(value) }
1653     }
1654 }
1655 #[cfg(feature = "Foundation_Collections")]
1656 impl ::std::convert::From<&SortEntryVector> for ::windows::runtime::IUnknown {
from(value: &SortEntryVector) -> Self1657     fn from(value: &SortEntryVector) -> Self {
1658         ::std::convert::From::from(::std::clone::Clone::clone(value))
1659     }
1660 }
1661 #[cfg(feature = "Foundation_Collections")]
1662 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1663     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1664         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1665     }
1666 }
1667 #[cfg(feature = "Foundation_Collections")]
1668 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1669     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1670         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1671     }
1672 }
1673 #[cfg(feature = "Foundation_Collections")]
1674 impl ::std::convert::From<SortEntryVector> for ::windows::runtime::IInspectable {
from(value: SortEntryVector) -> Self1675     fn from(value: SortEntryVector) -> Self {
1676         value.0
1677     }
1678 }
1679 #[cfg(feature = "Foundation_Collections")]
1680 impl ::std::convert::From<&SortEntryVector> for ::windows::runtime::IInspectable {
from(value: &SortEntryVector) -> Self1681     fn from(value: &SortEntryVector) -> Self {
1682         value.0.clone()
1683     }
1684 }
1685 #[cfg(feature = "Foundation_Collections")]
1686 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1687     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1688         ::windows::runtime::Param::Owned(self.0)
1689     }
1690 }
1691 #[cfg(feature = "Foundation_Collections")]
1692 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1693     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1694         ::windows::runtime::Param::Borrowed(&self.0)
1695     }
1696 }
1697 #[cfg(feature = "Foundation_Collections")]
1698 impl ::std::convert::From<SortEntryVector> for super::super::Foundation::Collections::IVector<SortEntry> {
from(value: SortEntryVector) -> Self1699     fn from(value: SortEntryVector) -> Self {
1700         unsafe { ::std::mem::transmute(value) }
1701     }
1702 }
1703 #[cfg(feature = "Foundation_Collections")]
1704 impl ::std::convert::From<&SortEntryVector> for super::super::Foundation::Collections::IVector<SortEntry> {
from(value: &SortEntryVector) -> Self1705     fn from(value: &SortEntryVector) -> Self {
1706         ::std::convert::From::from(::std::clone::Clone::clone(value))
1707     }
1708 }
1709 #[cfg(feature = "Foundation_Collections")]
1710 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IVector<SortEntry>> for SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IVector<SortEntry>>1711     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IVector<SortEntry>> {
1712         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::Foundation::Collections::IVector<SortEntry>>::into(self))
1713     }
1714 }
1715 #[cfg(feature = "Foundation_Collections")]
1716 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IVector<SortEntry>> for &SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IVector<SortEntry>>1717     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IVector<SortEntry>> {
1718         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::Foundation::Collections::IVector<SortEntry>>::into(::std::clone::Clone::clone(self)))
1719     }
1720 }
1721 #[cfg(feature = "Foundation_Collections")]
1722 impl ::std::convert::TryFrom<SortEntryVector> for super::super::Foundation::Collections::IIterable<SortEntry> {
1723     type Error = ::windows::runtime::Error;
try_from(value: SortEntryVector) -> ::windows::runtime::Result<Self>1724     fn try_from(value: SortEntryVector) -> ::windows::runtime::Result<Self> {
1725         ::std::convert::TryFrom::try_from(&value)
1726     }
1727 }
1728 #[cfg(feature = "Foundation_Collections")]
1729 impl ::std::convert::TryFrom<&SortEntryVector> for super::super::Foundation::Collections::IIterable<SortEntry> {
1730     type Error = ::windows::runtime::Error;
try_from(value: &SortEntryVector) -> ::windows::runtime::Result<Self>1731     fn try_from(value: &SortEntryVector) -> ::windows::runtime::Result<Self> {
1732         ::windows::runtime::Interface::cast(value)
1733     }
1734 }
1735 #[cfg(feature = "Foundation_Collections")]
1736 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<SortEntry>> for SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IIterable<SortEntry>>1737     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IIterable<SortEntry>> {
1738         ::windows::runtime::IntoParam::into_param(&self)
1739     }
1740 }
1741 #[cfg(feature = "Foundation_Collections")]
1742 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<SortEntry>> for &SortEntryVector {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IIterable<SortEntry>>1743     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::Collections::IIterable<SortEntry>> {
1744         ::std::convert::TryInto::<super::super::Foundation::Collections::IIterable<SortEntry>>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
1745     }
1746 }
1747 #[cfg(all(feature = "Foundation_Collections"))]
1748 impl ::std::iter::IntoIterator for SortEntryVector {
1749     type Item = SortEntry;
1750     type IntoIter = super::super::Foundation::Collections::VectorIterator<Self::Item>;
into_iter(self) -> Self::IntoIter1751     fn into_iter(self) -> Self::IntoIter {
1752         ::std::iter::IntoIterator::into_iter(&self)
1753     }
1754 }
1755 #[cfg(all(feature = "Foundation_Collections"))]
1756 impl ::std::iter::IntoIterator for &SortEntryVector {
1757     type Item = SortEntry;
1758     type IntoIter = super::super::Foundation::Collections::VectorIterator<Self::Item>;
into_iter(self) -> Self::IntoIter1759     fn into_iter(self) -> Self::IntoIter {
1760         super::super::Foundation::Collections::VectorIterator::new(::std::convert::TryInto::try_into(self).ok())
1761     }
1762 }
1763 #[repr(transparent)]
1764 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1765 pub struct StorageFileQueryResult(::windows::runtime::IInspectable);
1766 impl StorageFileQueryResult {
1767     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFilesAsync(&self, startindex: u32, maxnumberofitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>1768     pub fn GetFilesAsync(&self, startindex: u32, maxnumberofitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>> {
1769         let this = self;
1770         unsafe {
1771             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1772             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), startindex, maxnumberofitems, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>(result__)
1773         }
1774     }
1775     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFilesAsyncDefaultStartAndCount(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>1776     pub fn GetFilesAsyncDefaultStartAndCount(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>> {
1777         let this = self;
1778         unsafe {
1779             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1780             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFile>>>(result__)
1781         }
1782     }
1783     #[cfg(all(feature = "Data_Text", feature = "Foundation_Collections"))]
GetMatchingPropertiesWithRanges<'a, Param0: ::windows::runtime::IntoParam<'a, super::StorageFile>>(&self, file: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, super::super::Foundation::Collections::IVectorView<super::super::Data::Text::TextSegment>>>1784     pub fn GetMatchingPropertiesWithRanges<'a, Param0: ::windows::runtime::IntoParam<'a, super::StorageFile>>(&self, file: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, super::super::Foundation::Collections::IVectorView<super::super::Data::Text::TextSegment>>> {
1785         let this = &::windows::runtime::Interface::cast::<IStorageFileQueryResult2>(self)?;
1786         unsafe {
1787             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1788             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), file.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IMap<::windows::runtime::HSTRING, super::super::Foundation::Collections::IVectorView<super::super::Data::Text::TextSegment>>>(result__)
1789         }
1790     }
1791     #[cfg(feature = "Foundation")]
GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>1792     pub fn GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
1793         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1794         unsafe {
1795             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1796             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
1797         }
1798     }
Folder(&self) -> ::windows::runtime::Result<super::StorageFolder>1799     pub fn Folder(&self) -> ::windows::runtime::Result<super::StorageFolder> {
1800         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1801         unsafe {
1802             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1803             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageFolder>(result__)
1804         }
1805     }
1806     #[cfg(feature = "Foundation")]
ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1807     pub fn ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1808         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1809         unsafe {
1810             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1811             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1812         }
1813     }
1814     #[cfg(feature = "Foundation")]
RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>1815     pub fn RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
1816         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1817         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
1818     }
1819     #[cfg(feature = "Foundation")]
OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1820     pub fn OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1821         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1822         unsafe {
1823             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1824             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), changedhandler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1825         }
1826     }
1827     #[cfg(feature = "Foundation")]
RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>1828     pub fn RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
1829         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1830         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
1831     }
1832     #[cfg(feature = "Foundation")]
FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>1833     pub fn FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
1834         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1835         unsafe {
1836             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1837             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
1838         }
1839     }
GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions>1840     pub fn GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions> {
1841         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1842         unsafe {
1843             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1844             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<QueryOptions>(result__)
1845         }
1846     }
ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()>1847     pub fn ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()> {
1848         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1849         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), newqueryoptions.into_param().abi()).ok() }
1850     }
1851 }
1852 unsafe impl ::windows::runtime::RuntimeType for StorageFileQueryResult {
1853     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.StorageFileQueryResult;{52fda447-2baa-412c-b29f-d4b1778efa1e})");
1854 }
1855 unsafe impl ::windows::runtime::Interface for StorageFileQueryResult {
1856     type Vtable = IStorageFileQueryResult_abi;
1857     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1392354375, 11178, 16684, [178, 159, 212, 177, 119, 142, 250, 30]);
1858 }
1859 impl ::windows::runtime::RuntimeName for StorageFileQueryResult {
1860     const NAME: &'static str = "Windows.Storage.Search.StorageFileQueryResult";
1861 }
1862 impl ::std::convert::From<StorageFileQueryResult> for ::windows::runtime::IUnknown {
from(value: StorageFileQueryResult) -> Self1863     fn from(value: StorageFileQueryResult) -> Self {
1864         unsafe { ::std::mem::transmute(value) }
1865     }
1866 }
1867 impl ::std::convert::From<&StorageFileQueryResult> for ::windows::runtime::IUnknown {
from(value: &StorageFileQueryResult) -> Self1868     fn from(value: &StorageFileQueryResult) -> Self {
1869         ::std::convert::From::from(::std::clone::Clone::clone(value))
1870     }
1871 }
1872 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for StorageFileQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1873     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1874         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1875     }
1876 }
1877 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &StorageFileQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1878     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1879         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1880     }
1881 }
1882 impl ::std::convert::From<StorageFileQueryResult> for ::windows::runtime::IInspectable {
from(value: StorageFileQueryResult) -> Self1883     fn from(value: StorageFileQueryResult) -> Self {
1884         value.0
1885     }
1886 }
1887 impl ::std::convert::From<&StorageFileQueryResult> for ::windows::runtime::IInspectable {
from(value: &StorageFileQueryResult) -> Self1888     fn from(value: &StorageFileQueryResult) -> Self {
1889         value.0.clone()
1890     }
1891 }
1892 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for StorageFileQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1893     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1894         ::windows::runtime::Param::Owned(self.0)
1895     }
1896 }
1897 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a StorageFileQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1898     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1899         ::windows::runtime::Param::Borrowed(&self.0)
1900     }
1901 }
1902 impl ::std::convert::TryFrom<StorageFileQueryResult> for IStorageQueryResultBase {
1903     type Error = ::windows::runtime::Error;
try_from(value: StorageFileQueryResult) -> ::windows::runtime::Result<Self>1904     fn try_from(value: StorageFileQueryResult) -> ::windows::runtime::Result<Self> {
1905         ::std::convert::TryFrom::try_from(&value)
1906     }
1907 }
1908 impl ::std::convert::TryFrom<&StorageFileQueryResult> for IStorageQueryResultBase {
1909     type Error = ::windows::runtime::Error;
try_from(value: &StorageFileQueryResult) -> ::windows::runtime::Result<Self>1910     fn try_from(value: &StorageFileQueryResult) -> ::windows::runtime::Result<Self> {
1911         ::windows::runtime::Interface::cast(value)
1912     }
1913 }
1914 impl<'a> ::windows::runtime::IntoParam<'a, IStorageQueryResultBase> for StorageFileQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase>1915     fn into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase> {
1916         ::windows::runtime::IntoParam::into_param(&self)
1917     }
1918 }
1919 impl<'a> ::windows::runtime::IntoParam<'a, IStorageQueryResultBase> for &StorageFileQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase>1920     fn into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase> {
1921         ::std::convert::TryInto::<IStorageQueryResultBase>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
1922     }
1923 }
1924 #[repr(transparent)]
1925 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1926 pub struct StorageFolderQueryResult(::windows::runtime::IInspectable);
1927 impl StorageFolderQueryResult {
1928     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFoldersAsync(&self, startindex: u32, maxnumberofitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>1929     pub fn GetFoldersAsync(&self, startindex: u32, maxnumberofitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>> {
1930         let this = self;
1931         unsafe {
1932             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1933             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), startindex, maxnumberofitems, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>(result__)
1934         }
1935     }
1936     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetFoldersAsyncDefaultStartAndCount(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>1937     pub fn GetFoldersAsyncDefaultStartAndCount(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>> {
1938         let this = self;
1939         unsafe {
1940             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1941             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::StorageFolder>>>(result__)
1942         }
1943     }
1944     #[cfg(feature = "Foundation")]
GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>1945     pub fn GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
1946         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1947         unsafe {
1948             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1949             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
1950         }
1951     }
Folder(&self) -> ::windows::runtime::Result<super::StorageFolder>1952     pub fn Folder(&self) -> ::windows::runtime::Result<super::StorageFolder> {
1953         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1954         unsafe {
1955             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1956             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageFolder>(result__)
1957         }
1958     }
1959     #[cfg(feature = "Foundation")]
ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1960     pub fn ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1961         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1962         unsafe {
1963             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1964             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1965         }
1966     }
1967     #[cfg(feature = "Foundation")]
RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>1968     pub fn RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
1969         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1970         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
1971     }
1972     #[cfg(feature = "Foundation")]
OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1973     pub fn OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1974         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1975         unsafe {
1976             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1977             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), changedhandler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1978         }
1979     }
1980     #[cfg(feature = "Foundation")]
RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>1981     pub fn RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
1982         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1983         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
1984     }
1985     #[cfg(feature = "Foundation")]
FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>1986     pub fn FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
1987         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1988         unsafe {
1989             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1990             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
1991         }
1992     }
GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions>1993     pub fn GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions> {
1994         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
1995         unsafe {
1996             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1997             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<QueryOptions>(result__)
1998         }
1999     }
ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()>2000     pub fn ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()> {
2001         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2002         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), newqueryoptions.into_param().abi()).ok() }
2003     }
2004 }
2005 unsafe impl ::windows::runtime::RuntimeType for StorageFolderQueryResult {
2006     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.StorageFolderQueryResult;{6654c911-7d66-46fa-aecf-e4a4baa93ab8})");
2007 }
2008 unsafe impl ::windows::runtime::Interface for StorageFolderQueryResult {
2009     type Vtable = IStorageFolderQueryResult_abi;
2010     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1716832529, 32102, 18170, [174, 207, 228, 164, 186, 169, 58, 184]);
2011 }
2012 impl ::windows::runtime::RuntimeName for StorageFolderQueryResult {
2013     const NAME: &'static str = "Windows.Storage.Search.StorageFolderQueryResult";
2014 }
2015 impl ::std::convert::From<StorageFolderQueryResult> for ::windows::runtime::IUnknown {
from(value: StorageFolderQueryResult) -> Self2016     fn from(value: StorageFolderQueryResult) -> Self {
2017         unsafe { ::std::mem::transmute(value) }
2018     }
2019 }
2020 impl ::std::convert::From<&StorageFolderQueryResult> for ::windows::runtime::IUnknown {
from(value: &StorageFolderQueryResult) -> Self2021     fn from(value: &StorageFolderQueryResult) -> Self {
2022         ::std::convert::From::from(::std::clone::Clone::clone(value))
2023     }
2024 }
2025 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for StorageFolderQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2026     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2027         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2028     }
2029 }
2030 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &StorageFolderQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2031     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2032         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2033     }
2034 }
2035 impl ::std::convert::From<StorageFolderQueryResult> for ::windows::runtime::IInspectable {
from(value: StorageFolderQueryResult) -> Self2036     fn from(value: StorageFolderQueryResult) -> Self {
2037         value.0
2038     }
2039 }
2040 impl ::std::convert::From<&StorageFolderQueryResult> for ::windows::runtime::IInspectable {
from(value: &StorageFolderQueryResult) -> Self2041     fn from(value: &StorageFolderQueryResult) -> Self {
2042         value.0.clone()
2043     }
2044 }
2045 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for StorageFolderQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2046     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2047         ::windows::runtime::Param::Owned(self.0)
2048     }
2049 }
2050 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a StorageFolderQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2051     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2052         ::windows::runtime::Param::Borrowed(&self.0)
2053     }
2054 }
2055 impl ::std::convert::TryFrom<StorageFolderQueryResult> for IStorageQueryResultBase {
2056     type Error = ::windows::runtime::Error;
try_from(value: StorageFolderQueryResult) -> ::windows::runtime::Result<Self>2057     fn try_from(value: StorageFolderQueryResult) -> ::windows::runtime::Result<Self> {
2058         ::std::convert::TryFrom::try_from(&value)
2059     }
2060 }
2061 impl ::std::convert::TryFrom<&StorageFolderQueryResult> for IStorageQueryResultBase {
2062     type Error = ::windows::runtime::Error;
try_from(value: &StorageFolderQueryResult) -> ::windows::runtime::Result<Self>2063     fn try_from(value: &StorageFolderQueryResult) -> ::windows::runtime::Result<Self> {
2064         ::windows::runtime::Interface::cast(value)
2065     }
2066 }
2067 impl<'a> ::windows::runtime::IntoParam<'a, IStorageQueryResultBase> for StorageFolderQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase>2068     fn into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase> {
2069         ::windows::runtime::IntoParam::into_param(&self)
2070     }
2071 }
2072 impl<'a> ::windows::runtime::IntoParam<'a, IStorageQueryResultBase> for &StorageFolderQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase>2073     fn into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase> {
2074         ::std::convert::TryInto::<IStorageQueryResultBase>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
2075     }
2076 }
2077 #[repr(transparent)]
2078 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2079 pub struct StorageItemQueryResult(::windows::runtime::IInspectable);
2080 impl StorageItemQueryResult {
2081     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetItemsAsync(&self, startindex: u32, maxnumberofitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>>2082     pub fn GetItemsAsync(&self, startindex: u32, maxnumberofitems: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>> {
2083         let this = self;
2084         unsafe {
2085             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2086             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), startindex, maxnumberofitems, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>>(result__)
2087         }
2088     }
2089     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetItemsAsyncDefaultStartAndCount(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>>2090     pub fn GetItemsAsyncDefaultStartAndCount(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>> {
2091         let this = self;
2092         unsafe {
2093             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2094             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<super::IStorageItem>>>(result__)
2095         }
2096     }
2097     #[cfg(feature = "Foundation")]
GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>2098     pub fn GetItemCountAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
2099         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2100         unsafe {
2101             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2102             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
2103         }
2104     }
Folder(&self) -> ::windows::runtime::Result<super::StorageFolder>2105     pub fn Folder(&self) -> ::windows::runtime::Result<super::StorageFolder> {
2106         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2107         unsafe {
2108             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2109             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageFolder>(result__)
2110         }
2111     }
2112     #[cfg(feature = "Foundation")]
ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2113     pub fn ContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2114         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2115         unsafe {
2116             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2117             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2118         }
2119     }
2120     #[cfg(feature = "Foundation")]
RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>2121     pub fn RemoveContentsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
2122         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2123         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
2124     }
2125     #[cfg(feature = "Foundation")]
OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2126     pub fn OptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<IStorageQueryResultBase, ::windows::runtime::IInspectable>>>(&self, changedhandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2127         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2128         unsafe {
2129             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2130             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), changedhandler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2131         }
2132     }
2133     #[cfg(feature = "Foundation")]
RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()>2134     pub fn RemoveOptionsChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
2135         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2136         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
2137     }
2138     #[cfg(feature = "Foundation")]
FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>2139     pub fn FindStartIndexAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
2140         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2141         unsafe {
2142             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2143             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
2144         }
2145     }
GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions>2146     pub fn GetCurrentQueryOptions(&self) -> ::windows::runtime::Result<QueryOptions> {
2147         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2148         unsafe {
2149             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2150             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<QueryOptions>(result__)
2151         }
2152     }
ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()>2153     pub fn ApplyNewQueryOptions<'a, Param0: ::windows::runtime::IntoParam<'a, QueryOptions>>(&self, newqueryoptions: Param0) -> ::windows::runtime::Result<()> {
2154         let this = &::windows::runtime::Interface::cast::<IStorageQueryResultBase>(self)?;
2155         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), newqueryoptions.into_param().abi()).ok() }
2156     }
2157 }
2158 unsafe impl ::windows::runtime::RuntimeType for StorageItemQueryResult {
2159     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.StorageItemQueryResult;{e8948079-9d58-47b8-b2b2-41b07f4795f9})");
2160 }
2161 unsafe impl ::windows::runtime::Interface for StorageItemQueryResult {
2162     type Vtable = IStorageItemQueryResult_abi;
2163     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3902046329, 40280, 18360, [178, 178, 65, 176, 127, 71, 149, 249]);
2164 }
2165 impl ::windows::runtime::RuntimeName for StorageItemQueryResult {
2166     const NAME: &'static str = "Windows.Storage.Search.StorageItemQueryResult";
2167 }
2168 impl ::std::convert::From<StorageItemQueryResult> for ::windows::runtime::IUnknown {
from(value: StorageItemQueryResult) -> Self2169     fn from(value: StorageItemQueryResult) -> Self {
2170         unsafe { ::std::mem::transmute(value) }
2171     }
2172 }
2173 impl ::std::convert::From<&StorageItemQueryResult> for ::windows::runtime::IUnknown {
from(value: &StorageItemQueryResult) -> Self2174     fn from(value: &StorageItemQueryResult) -> Self {
2175         ::std::convert::From::from(::std::clone::Clone::clone(value))
2176     }
2177 }
2178 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for StorageItemQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2179     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2180         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2181     }
2182 }
2183 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &StorageItemQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2184     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2185         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2186     }
2187 }
2188 impl ::std::convert::From<StorageItemQueryResult> for ::windows::runtime::IInspectable {
from(value: StorageItemQueryResult) -> Self2189     fn from(value: StorageItemQueryResult) -> Self {
2190         value.0
2191     }
2192 }
2193 impl ::std::convert::From<&StorageItemQueryResult> for ::windows::runtime::IInspectable {
from(value: &StorageItemQueryResult) -> Self2194     fn from(value: &StorageItemQueryResult) -> Self {
2195         value.0.clone()
2196     }
2197 }
2198 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for StorageItemQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2199     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2200         ::windows::runtime::Param::Owned(self.0)
2201     }
2202 }
2203 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a StorageItemQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2204     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2205         ::windows::runtime::Param::Borrowed(&self.0)
2206     }
2207 }
2208 impl ::std::convert::TryFrom<StorageItemQueryResult> for IStorageQueryResultBase {
2209     type Error = ::windows::runtime::Error;
try_from(value: StorageItemQueryResult) -> ::windows::runtime::Result<Self>2210     fn try_from(value: StorageItemQueryResult) -> ::windows::runtime::Result<Self> {
2211         ::std::convert::TryFrom::try_from(&value)
2212     }
2213 }
2214 impl ::std::convert::TryFrom<&StorageItemQueryResult> for IStorageQueryResultBase {
2215     type Error = ::windows::runtime::Error;
try_from(value: &StorageItemQueryResult) -> ::windows::runtime::Result<Self>2216     fn try_from(value: &StorageItemQueryResult) -> ::windows::runtime::Result<Self> {
2217         ::windows::runtime::Interface::cast(value)
2218     }
2219 }
2220 impl<'a> ::windows::runtime::IntoParam<'a, IStorageQueryResultBase> for StorageItemQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase>2221     fn into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase> {
2222         ::windows::runtime::IntoParam::into_param(&self)
2223     }
2224 }
2225 impl<'a> ::windows::runtime::IntoParam<'a, IStorageQueryResultBase> for &StorageItemQueryResult {
into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase>2226     fn into_param(self) -> ::windows::runtime::Param<'a, IStorageQueryResultBase> {
2227         ::std::convert::TryInto::<IStorageQueryResultBase>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
2228     }
2229 }
2230 #[repr(transparent)]
2231 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2232 pub struct StorageLibraryChangeTrackerTriggerDetails(::windows::runtime::IInspectable);
2233 impl StorageLibraryChangeTrackerTriggerDetails {
Folder(&self) -> ::windows::runtime::Result<super::StorageFolder>2234     pub fn Folder(&self) -> ::windows::runtime::Result<super::StorageFolder> {
2235         let this = self;
2236         unsafe {
2237             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2238             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageFolder>(result__)
2239         }
2240     }
ChangeTracker(&self) -> ::windows::runtime::Result<super::StorageLibraryChangeTracker>2241     pub fn ChangeTracker(&self) -> ::windows::runtime::Result<super::StorageLibraryChangeTracker> {
2242         let this = self;
2243         unsafe {
2244             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2245             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageLibraryChangeTracker>(result__)
2246         }
2247     }
2248 }
2249 unsafe impl ::windows::runtime::RuntimeType for StorageLibraryChangeTrackerTriggerDetails {
2250     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.StorageLibraryChangeTrackerTriggerDetails;{1dc7a369-b7a3-4df2-9d61-eba85a0343d2})");
2251 }
2252 unsafe impl ::windows::runtime::Interface for StorageLibraryChangeTrackerTriggerDetails {
2253     type Vtable = IStorageLibraryChangeTrackerTriggerDetails_abi;
2254     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(499622761, 47011, 19954, [157, 97, 235, 168, 90, 3, 67, 210]);
2255 }
2256 impl ::windows::runtime::RuntimeName for StorageLibraryChangeTrackerTriggerDetails {
2257     const NAME: &'static str = "Windows.Storage.Search.StorageLibraryChangeTrackerTriggerDetails";
2258 }
2259 impl ::std::convert::From<StorageLibraryChangeTrackerTriggerDetails> for ::windows::runtime::IUnknown {
from(value: StorageLibraryChangeTrackerTriggerDetails) -> Self2260     fn from(value: StorageLibraryChangeTrackerTriggerDetails) -> Self {
2261         unsafe { ::std::mem::transmute(value) }
2262     }
2263 }
2264 impl ::std::convert::From<&StorageLibraryChangeTrackerTriggerDetails> for ::windows::runtime::IUnknown {
from(value: &StorageLibraryChangeTrackerTriggerDetails) -> Self2265     fn from(value: &StorageLibraryChangeTrackerTriggerDetails) -> Self {
2266         ::std::convert::From::from(::std::clone::Clone::clone(value))
2267     }
2268 }
2269 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for StorageLibraryChangeTrackerTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2270     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2271         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2272     }
2273 }
2274 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &StorageLibraryChangeTrackerTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2275     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2276         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2277     }
2278 }
2279 impl ::std::convert::From<StorageLibraryChangeTrackerTriggerDetails> for ::windows::runtime::IInspectable {
from(value: StorageLibraryChangeTrackerTriggerDetails) -> Self2280     fn from(value: StorageLibraryChangeTrackerTriggerDetails) -> Self {
2281         value.0
2282     }
2283 }
2284 impl ::std::convert::From<&StorageLibraryChangeTrackerTriggerDetails> for ::windows::runtime::IInspectable {
from(value: &StorageLibraryChangeTrackerTriggerDetails) -> Self2285     fn from(value: &StorageLibraryChangeTrackerTriggerDetails) -> Self {
2286         value.0.clone()
2287     }
2288 }
2289 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for StorageLibraryChangeTrackerTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2290     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2291         ::windows::runtime::Param::Owned(self.0)
2292     }
2293 }
2294 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a StorageLibraryChangeTrackerTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2295     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2296         ::windows::runtime::Param::Borrowed(&self.0)
2297     }
2298 }
2299 #[repr(transparent)]
2300 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2301 pub struct StorageLibraryContentChangedTriggerDetails(::windows::runtime::IInspectable);
2302 impl StorageLibraryContentChangedTriggerDetails {
Folder(&self) -> ::windows::runtime::Result<super::StorageFolder>2303     pub fn Folder(&self) -> ::windows::runtime::Result<super::StorageFolder> {
2304         let this = self;
2305         unsafe {
2306             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2307             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::StorageFolder>(result__)
2308         }
2309     }
2310     #[cfg(feature = "Foundation")]
CreateModifiedSinceQuery<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, lastquerytime: Param0) -> ::windows::runtime::Result<StorageItemQueryResult>2311     pub fn CreateModifiedSinceQuery<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, lastquerytime: Param0) -> ::windows::runtime::Result<StorageItemQueryResult> {
2312         let this = self;
2313         unsafe {
2314             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2315             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), lastquerytime.into_param().abi(), &mut result__).from_abi::<StorageItemQueryResult>(result__)
2316         }
2317     }
2318 }
2319 unsafe impl ::windows::runtime::RuntimeType for StorageLibraryContentChangedTriggerDetails {
2320     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.StorageLibraryContentChangedTriggerDetails;{2a371977-abbf-4e1d-8aa5-6385d8884799})");
2321 }
2322 unsafe impl ::windows::runtime::Interface for StorageLibraryContentChangedTriggerDetails {
2323     type Vtable = IStorageLibraryContentChangedTriggerDetails_abi;
2324     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(708254071, 43967, 19997, [138, 165, 99, 133, 216, 136, 71, 153]);
2325 }
2326 impl ::windows::runtime::RuntimeName for StorageLibraryContentChangedTriggerDetails {
2327     const NAME: &'static str = "Windows.Storage.Search.StorageLibraryContentChangedTriggerDetails";
2328 }
2329 impl ::std::convert::From<StorageLibraryContentChangedTriggerDetails> for ::windows::runtime::IUnknown {
from(value: StorageLibraryContentChangedTriggerDetails) -> Self2330     fn from(value: StorageLibraryContentChangedTriggerDetails) -> Self {
2331         unsafe { ::std::mem::transmute(value) }
2332     }
2333 }
2334 impl ::std::convert::From<&StorageLibraryContentChangedTriggerDetails> for ::windows::runtime::IUnknown {
from(value: &StorageLibraryContentChangedTriggerDetails) -> Self2335     fn from(value: &StorageLibraryContentChangedTriggerDetails) -> Self {
2336         ::std::convert::From::from(::std::clone::Clone::clone(value))
2337     }
2338 }
2339 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for StorageLibraryContentChangedTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2340     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2341         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2342     }
2343 }
2344 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &StorageLibraryContentChangedTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2345     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2346         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2347     }
2348 }
2349 impl ::std::convert::From<StorageLibraryContentChangedTriggerDetails> for ::windows::runtime::IInspectable {
from(value: StorageLibraryContentChangedTriggerDetails) -> Self2350     fn from(value: StorageLibraryContentChangedTriggerDetails) -> Self {
2351         value.0
2352     }
2353 }
2354 impl ::std::convert::From<&StorageLibraryContentChangedTriggerDetails> for ::windows::runtime::IInspectable {
from(value: &StorageLibraryContentChangedTriggerDetails) -> Self2355     fn from(value: &StorageLibraryContentChangedTriggerDetails) -> Self {
2356         value.0.clone()
2357     }
2358 }
2359 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for StorageLibraryContentChangedTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2360     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2361         ::windows::runtime::Param::Owned(self.0)
2362     }
2363 }
2364 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a StorageLibraryContentChangedTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2365     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2366         ::windows::runtime::Param::Borrowed(&self.0)
2367     }
2368 }
2369 #[repr(transparent)]
2370 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2371 pub struct ValueAndLanguage(::windows::runtime::IInspectable);
2372 impl ValueAndLanguage {
new() -> ::windows::runtime::Result<Self>2373     pub fn new() -> ::windows::runtime::Result<Self> {
2374         Self::IActivationFactory(|f| f.activate_instance::<Self>())
2375     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>2376     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2377         static mut SHARED: ::windows::runtime::FactoryCache<ValueAndLanguage, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
2378         unsafe { SHARED.call(callback) }
2379     }
Language(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>2380     pub fn Language(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
2381         let this = self;
2382         unsafe {
2383             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
2384             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
2385         }
2386     }
SetLanguage<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>2387     pub fn SetLanguage<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2388         let this = self;
2389         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2390     }
Value(&self) -> ::windows::runtime::Result<::windows::runtime::IInspectable>2391     pub fn Value(&self) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2392         let this = self;
2393         unsafe {
2394             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2395             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2396         }
2397     }
SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<()>2398     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2399         let this = self;
2400         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2401     }
2402 }
2403 unsafe impl ::windows::runtime::RuntimeType for ValueAndLanguage {
2404     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Storage.Search.ValueAndLanguage;{b9914881-a1ee-4bc4-92a5-466968e30436})");
2405 }
2406 unsafe impl ::windows::runtime::Interface for ValueAndLanguage {
2407     type Vtable = IValueAndLanguage_abi;
2408     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3113306241, 41454, 19396, [146, 165, 70, 105, 104, 227, 4, 54]);
2409 }
2410 impl ::windows::runtime::RuntimeName for ValueAndLanguage {
2411     const NAME: &'static str = "Windows.Storage.Search.ValueAndLanguage";
2412 }
2413 impl ::std::convert::From<ValueAndLanguage> for ::windows::runtime::IUnknown {
from(value: ValueAndLanguage) -> Self2414     fn from(value: ValueAndLanguage) -> Self {
2415         unsafe { ::std::mem::transmute(value) }
2416     }
2417 }
2418 impl ::std::convert::From<&ValueAndLanguage> for ::windows::runtime::IUnknown {
from(value: &ValueAndLanguage) -> Self2419     fn from(value: &ValueAndLanguage) -> Self {
2420         ::std::convert::From::from(::std::clone::Clone::clone(value))
2421     }
2422 }
2423 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ValueAndLanguage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2424     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2425         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2426     }
2427 }
2428 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ValueAndLanguage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2429     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2430         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2431     }
2432 }
2433 impl ::std::convert::From<ValueAndLanguage> for ::windows::runtime::IInspectable {
from(value: ValueAndLanguage) -> Self2434     fn from(value: ValueAndLanguage) -> Self {
2435         value.0
2436     }
2437 }
2438 impl ::std::convert::From<&ValueAndLanguage> for ::windows::runtime::IInspectable {
from(value: &ValueAndLanguage) -> Self2439     fn from(value: &ValueAndLanguage) -> Self {
2440         value.0.clone()
2441     }
2442 }
2443 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ValueAndLanguage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2444     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2445         ::windows::runtime::Param::Owned(self.0)
2446     }
2447 }
2448 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ValueAndLanguage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2449     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2450         ::windows::runtime::Param::Borrowed(&self.0)
2451     }
2452 }
2453 unsafe impl ::std::marker::Send for ValueAndLanguage {}
2454 unsafe impl ::std::marker::Sync for ValueAndLanguage {}
2455