OXYGENHUB
◆ paths-for-resolutions-and-amend oxygen / vendor / iana-time-zone / src / windows_bindings.rs
66.5 KiB · Rust · last changed Strata: the cloud stores send through ureq, so every release target links 1 month ago source blame history raw
2cd40ea1 Andy McCall ↶ 1
// Bindings generated by `windows-bindgen` 0.59.0
2
3
#![allow(
4
    non_snake_case,
5
    non_upper_case_globals,
6
    non_camel_case_types,
7
    dead_code,
8
    clippy::all
9
)]
10
11
pub mod Windows {
12
    pub mod Globalization {
13
        #[repr(transparent)]
14
        #[derive(Clone, Debug, Eq, PartialEq)]
15
        pub struct Calendar(windows_core::IUnknown);
16
        windows_core::imp::interface_hierarchy!(
17
            Calendar,
18
            windows_core::IUnknown,
19
            windows_core::IInspectable
20
        );
21
        impl Calendar {
22
            pub fn new() -> windows_core::Result<Self> {
23
                Self::IActivationFactory(|f| f.ActivateInstance::<Self>())
24
            }
25
            fn IActivationFactory<
26
                R,
27
                F: FnOnce(&windows_core::imp::IGenericFactory) -> windows_core::Result<R>,
28
            >(
29
                callback: F,
30
            ) -> windows_core::Result<R> {
31
                static SHARED: windows_core::imp::FactoryCache<
32
                    Calendar,
33
                    windows_core::imp::IGenericFactory,
34
                > = windows_core::imp::FactoryCache::new();
35
                SHARED.call(callback)
36
            }
37
            pub fn Clone(&self) -> windows_core::Result<Calendar> {
38
                let this = self;
39
                unsafe {
40
                    let mut result__ = core::mem::zeroed();
41
                    (windows_core::Interface::vtable(this).Clone)(
42
                        windows_core::Interface::as_raw(this),
43
                        &mut result__,
44
                    )
45
                    .and_then(|| windows_core::Type::from_abi(result__))
46
                }
47
            }
48
            pub fn SetToMin(&self) -> windows_core::Result<()> {
49
                let this = self;
50
                unsafe {
51
                    (windows_core::Interface::vtable(this).SetToMin)(
52
                        windows_core::Interface::as_raw(this),
53
                    )
54
                    .ok()
55
                }
56
            }
57
            pub fn SetToMax(&self) -> windows_core::Result<()> {
58
                let this = self;
59
                unsafe {
60
                    (windows_core::Interface::vtable(this).SetToMax)(
61
                        windows_core::Interface::as_raw(this),
62
                    )
63
                    .ok()
64
                }
65
            }
66
            pub fn NumeralSystem(&self) -> windows_core::Result<windows_core::HSTRING> {
67
                let this = self;
68
                unsafe {
69
                    let mut result__ = core::mem::zeroed();
70
                    (windows_core::Interface::vtable(this).NumeralSystem)(
71
                        windows_core::Interface::as_raw(this),
72
                        &mut result__,
73
                    )
74
                    .map(|| core::mem::transmute(result__))
75
                }
76
            }
77
            pub fn SetNumeralSystem(
78
                &self,
79
                value: &windows_core::HSTRING,
80
            ) -> windows_core::Result<()> {
81
                let this = self;
82
                unsafe {
83
                    (windows_core::Interface::vtable(this).SetNumeralSystem)(
84
                        windows_core::Interface::as_raw(this),
85
                        core::mem::transmute_copy(value),
86
                    )
87
                    .ok()
88
                }
89
            }
90
            pub fn GetCalendarSystem(&self) -> windows_core::Result<windows_core::HSTRING> {
91
                let this = self;
92
                unsafe {
93
                    let mut result__ = core::mem::zeroed();
94
                    (windows_core::Interface::vtable(this).GetCalendarSystem)(
95
                        windows_core::Interface::as_raw(this),
96
                        &mut result__,
97
                    )
98
                    .map(|| core::mem::transmute(result__))
99
                }
100
            }
101
            pub fn ChangeCalendarSystem(
102
                &self,
103
                value: &windows_core::HSTRING,
104
            ) -> windows_core::Result<()> {
105
                let this = self;
106
                unsafe {
107
                    (windows_core::Interface::vtable(this).ChangeCalendarSystem)(
108
                        windows_core::Interface::as_raw(this),
109
                        core::mem::transmute_copy(value),
110
                    )
111
                    .ok()
112
                }
113
            }
114
            pub fn GetClock(&self) -> windows_core::Result<windows_core::HSTRING> {
115
                let this = self;
116
                unsafe {
117
                    let mut result__ = core::mem::zeroed();
118
                    (windows_core::Interface::vtable(this).GetClock)(
119
                        windows_core::Interface::as_raw(this),
120
                        &mut result__,
121
                    )
122
                    .map(|| core::mem::transmute(result__))
123
                }
124
            }
125
            pub fn ChangeClock(&self, value: &windows_core::HSTRING) -> windows_core::Result<()> {
126
                let this = self;
127
                unsafe {
128
                    (windows_core::Interface::vtable(this).ChangeClock)(
129
                        windows_core::Interface::as_raw(this),
130
                        core::mem::transmute_copy(value),
131
                    )
132
                    .ok()
133
                }
134
            }
135
            pub fn SetToNow(&self) -> windows_core::Result<()> {
136
                let this = self;
137
                unsafe {
138
                    (windows_core::Interface::vtable(this).SetToNow)(
139
                        windows_core::Interface::as_raw(this),
140
                    )
141
                    .ok()
142
                }
143
            }
144
            pub fn FirstEra(&self) -> windows_core::Result<i32> {
145
                let this = self;
146
                unsafe {
147
                    let mut result__ = core::mem::zeroed();
148
                    (windows_core::Interface::vtable(this).FirstEra)(
149
                        windows_core::Interface::as_raw(this),
150
                        &mut result__,
151
                    )
152
                    .map(|| result__)
153
                }
154
            }
155
            pub fn LastEra(&self) -> windows_core::Result<i32> {
156
                let this = self;
157
                unsafe {
158
                    let mut result__ = core::mem::zeroed();
159
                    (windows_core::Interface::vtable(this).LastEra)(
160
                        windows_core::Interface::as_raw(this),
161
                        &mut result__,
162
                    )
163
                    .map(|| result__)
164
                }
165
            }
166
            pub fn NumberOfEras(&self) -> windows_core::Result<i32> {
167
                let this = self;
168
                unsafe {
169
                    let mut result__ = core::mem::zeroed();
170
                    (windows_core::Interface::vtable(this).NumberOfEras)(
171
                        windows_core::Interface::as_raw(this),
172
                        &mut result__,
173
                    )
174
                    .map(|| result__)
175
                }
176
            }
177
            pub fn Era(&self) -> windows_core::Result<i32> {
178
                let this = self;
179
                unsafe {
180
                    let mut result__ = core::mem::zeroed();
181
                    (windows_core::Interface::vtable(this).Era)(
182
                        windows_core::Interface::as_raw(this),
183
                        &mut result__,
184
                    )
185
                    .map(|| result__)
186
                }
187
            }
188
            pub fn SetEra(&self, value: i32) -> windows_core::Result<()> {
189
                let this = self;
190
                unsafe {
191
                    (windows_core::Interface::vtable(this).SetEra)(
192
                        windows_core::Interface::as_raw(this),
193
                        value,
194
                    )
195
                    .ok()
196
                }
197
            }
198
            pub fn AddEras(&self, eras: i32) -> windows_core::Result<()> {
199
                let this = self;
200
                unsafe {
201
                    (windows_core::Interface::vtable(this).AddEras)(
202
                        windows_core::Interface::as_raw(this),
203
                        eras,
204
                    )
205
                    .ok()
206
                }
207
            }
208
            pub fn EraAsFullString(&self) -> windows_core::Result<windows_core::HSTRING> {
209
                let this = self;
210
                unsafe {
211
                    let mut result__ = core::mem::zeroed();
212
                    (windows_core::Interface::vtable(this).EraAsFullString)(
213
                        windows_core::Interface::as_raw(this),
214
                        &mut result__,
215
                    )
216
                    .map(|| core::mem::transmute(result__))
217
                }
218
            }
219
            pub fn EraAsString(
220
                &self,
221
                ideallength: i32,
222
            ) -> windows_core::Result<windows_core::HSTRING> {
223
                let this = self;
224
                unsafe {
225
                    let mut result__ = core::mem::zeroed();
226
                    (windows_core::Interface::vtable(this).EraAsString)(
227
                        windows_core::Interface::as_raw(this),
228
                        ideallength,
229
                        &mut result__,
230
                    )
231
                    .map(|| core::mem::transmute(result__))
232
                }
233
            }
234
            pub fn FirstYearInThisEra(&self) -> windows_core::Result<i32> {
235
                let this = self;
236
                unsafe {
237
                    let mut result__ = core::mem::zeroed();
238
                    (windows_core::Interface::vtable(this).FirstYearInThisEra)(
239
                        windows_core::Interface::as_raw(this),
240
                        &mut result__,
241
                    )
242
                    .map(|| result__)
243
                }
244
            }
245
            pub fn LastYearInThisEra(&self) -> windows_core::Result<i32> {
246
                let this = self;
247
                unsafe {
248
                    let mut result__ = core::mem::zeroed();
249
                    (windows_core::Interface::vtable(this).LastYearInThisEra)(
250
                        windows_core::Interface::as_raw(this),
251
                        &mut result__,
252
                    )
253
                    .map(|| result__)
254
                }
255
            }
256
            pub fn NumberOfYearsInThisEra(&self) -> windows_core::Result<i32> {
257
                let this = self;
258
                unsafe {
259
                    let mut result__ = core::mem::zeroed();
260
                    (windows_core::Interface::vtable(this).NumberOfYearsInThisEra)(
261
                        windows_core::Interface::as_raw(this),
262
                        &mut result__,
263
                    )
264
                    .map(|| result__)
265
                }
266
            }
267
            pub fn Year(&self) -> windows_core::Result<i32> {
268
                let this = self;
269
                unsafe {
270
                    let mut result__ = core::mem::zeroed();
271
                    (windows_core::Interface::vtable(this).Year)(
272
                        windows_core::Interface::as_raw(this),
273
                        &mut result__,
274
                    )
275
                    .map(|| result__)
276
                }
277
            }
278
            pub fn SetYear(&self, value: i32) -> windows_core::Result<()> {
279
                let this = self;
280
                unsafe {
281
                    (windows_core::Interface::vtable(this).SetYear)(
282
                        windows_core::Interface::as_raw(this),
283
                        value,
284
                    )
285
                    .ok()
286
                }
287
            }
288
            pub fn AddYears(&self, years: i32) -> windows_core::Result<()> {
289
                let this = self;
290
                unsafe {
291
                    (windows_core::Interface::vtable(this).AddYears)(
292
                        windows_core::Interface::as_raw(this),
293
                        years,
294
                    )
295
                    .ok()
296
                }
297
            }
298
            pub fn YearAsString(&self) -> windows_core::Result<windows_core::HSTRING> {
299
                let this = self;
300
                unsafe {
301
                    let mut result__ = core::mem::zeroed();
302
                    (windows_core::Interface::vtable(this).YearAsString)(
303
                        windows_core::Interface::as_raw(this),
304
                        &mut result__,
305
                    )
306
                    .map(|| core::mem::transmute(result__))
307
                }
308
            }
309
            pub fn YearAsTruncatedString(
310
                &self,
311
                remainingdigits: i32,
312
            ) -> windows_core::Result<windows_core::HSTRING> {
313
                let this = self;
314
                unsafe {
315
                    let mut result__ = core::mem::zeroed();
316
                    (windows_core::Interface::vtable(this).YearAsTruncatedString)(
317
                        windows_core::Interface::as_raw(this),
318
                        remainingdigits,
319
                        &mut result__,
320
                    )
321
                    .map(|| core::mem::transmute(result__))
322
                }
323
            }
324
            pub fn YearAsPaddedString(
325
                &self,
326
                mindigits: i32,
327
            ) -> windows_core::Result<windows_core::HSTRING> {
328
                let this = self;
329
                unsafe {
330
                    let mut result__ = core::mem::zeroed();
331
                    (windows_core::Interface::vtable(this).YearAsPaddedString)(
332
                        windows_core::Interface::as_raw(this),
333
                        mindigits,
334
                        &mut result__,
335
                    )
336
                    .map(|| core::mem::transmute(result__))
337
                }
338
            }
339
            pub fn FirstMonthInThisYear(&self) -> windows_core::Result<i32> {
340
                let this = self;
341
                unsafe {
342
                    let mut result__ = core::mem::zeroed();
343
                    (windows_core::Interface::vtable(this).FirstMonthInThisYear)(
344
                        windows_core::Interface::as_raw(this),
345
                        &mut result__,
346
                    )
347
                    .map(|| result__)
348
                }
349
            }
350
            pub fn LastMonthInThisYear(&self) -> windows_core::Result<i32> {
351
                let this = self;
352
                unsafe {
353
                    let mut result__ = core::mem::zeroed();
354
                    (windows_core::Interface::vtable(this).LastMonthInThisYear)(
355
                        windows_core::Interface::as_raw(this),
356
                        &mut result__,
357
                    )
358
                    .map(|| result__)
359
                }
360
            }
361
            pub fn NumberOfMonthsInThisYear(&self) -> windows_core::Result<i32> {
362
                let this = self;
363
                unsafe {
364
                    let mut result__ = core::mem::zeroed();
365
                    (windows_core::Interface::vtable(this).NumberOfMonthsInThisYear)(
366
                        windows_core::Interface::as_raw(this),
367
                        &mut result__,
368
                    )
369
                    .map(|| result__)
370
                }
371
            }
372
            pub fn Month(&self) -> windows_core::Result<i32> {
373
                let this = self;
374
                unsafe {
375
                    let mut result__ = core::mem::zeroed();
376
                    (windows_core::Interface::vtable(this).Month)(
377
                        windows_core::Interface::as_raw(this),
378
                        &mut result__,
379
                    )
380
                    .map(|| result__)
381
                }
382
            }
383
            pub fn SetMonth(&self, value: i32) -> windows_core::Result<()> {
384
                let this = self;
385
                unsafe {
386
                    (windows_core::Interface::vtable(this).SetMonth)(
387
                        windows_core::Interface::as_raw(this),
388
                        value,
389
                    )
390
                    .ok()
391
                }
392
            }
393
            pub fn AddMonths(&self, months: i32) -> windows_core::Result<()> {
394
                let this = self;
395
                unsafe {
396
                    (windows_core::Interface::vtable(this).AddMonths)(
397
                        windows_core::Interface::as_raw(this),
398
                        months,
399
                    )
400
                    .ok()
401
                }
402
            }
403
            pub fn MonthAsFullString(&self) -> windows_core::Result<windows_core::HSTRING> {
404
                let this = self;
405
                unsafe {
406
                    let mut result__ = core::mem::zeroed();
407
                    (windows_core::Interface::vtable(this).MonthAsFullString)(
408
                        windows_core::Interface::as_raw(this),
409
                        &mut result__,
410
                    )
411
                    .map(|| core::mem::transmute(result__))
412
                }
413
            }
414
            pub fn MonthAsString(
415
                &self,
416
                ideallength: i32,
417
            ) -> windows_core::Result<windows_core::HSTRING> {
418
                let this = self;
419
                unsafe {
420
                    let mut result__ = core::mem::zeroed();
421
                    (windows_core::Interface::vtable(this).MonthAsString)(
422
                        windows_core::Interface::as_raw(this),
423
                        ideallength,
424
                        &mut result__,
425
                    )
426
                    .map(|| core::mem::transmute(result__))
427
                }
428
            }
429
            pub fn MonthAsFullSoloString(&self) -> windows_core::Result<windows_core::HSTRING> {
430
                let this = self;
431
                unsafe {
432
                    let mut result__ = core::mem::zeroed();
433
                    (windows_core::Interface::vtable(this).MonthAsFullSoloString)(
434
                        windows_core::Interface::as_raw(this),
435
                        &mut result__,
436
                    )
437
                    .map(|| core::mem::transmute(result__))
438
                }
439
            }
440
            pub fn MonthAsSoloString(
441
                &self,
442
                ideallength: i32,
443
            ) -> windows_core::Result<windows_core::HSTRING> {
444
                let this = self;
445
                unsafe {
446
                    let mut result__ = core::mem::zeroed();
447
                    (windows_core::Interface::vtable(this).MonthAsSoloString)(
448
                        windows_core::Interface::as_raw(this),
449
                        ideallength,
450
                        &mut result__,
451
                    )
452
                    .map(|| core::mem::transmute(result__))
453
                }
454
            }
455
            pub fn MonthAsNumericString(&self) -> windows_core::Result<windows_core::HSTRING> {
456
                let this = self;
457
                unsafe {
458
                    let mut result__ = core::mem::zeroed();
459
                    (windows_core::Interface::vtable(this).MonthAsNumericString)(
460
                        windows_core::Interface::as_raw(this),
461
                        &mut result__,
462
                    )
463
                    .map(|| core::mem::transmute(result__))
464
                }
465
            }
466
            pub fn MonthAsPaddedNumericString(
467
                &self,
468
                mindigits: i32,
469
            ) -> windows_core::Result<windows_core::HSTRING> {
470
                let this = self;
471
                unsafe {
472
                    let mut result__ = core::mem::zeroed();
473
                    (windows_core::Interface::vtable(this).MonthAsPaddedNumericString)(
474
                        windows_core::Interface::as_raw(this),
475
                        mindigits,
476
                        &mut result__,
477
                    )
478
                    .map(|| core::mem::transmute(result__))
479
                }
480
            }
481
            pub fn AddWeeks(&self, weeks: i32) -> windows_core::Result<()> {
482
                let this = self;
483
                unsafe {
484
                    (windows_core::Interface::vtable(this).AddWeeks)(
485
                        windows_core::Interface::as_raw(this),
486
                        weeks,
487
                    )
488
                    .ok()
489
                }
490
            }
491
            pub fn FirstDayInThisMonth(&self) -> windows_core::Result<i32> {
492
                let this = self;
493
                unsafe {
494
                    let mut result__ = core::mem::zeroed();
495
                    (windows_core::Interface::vtable(this).FirstDayInThisMonth)(
496
                        windows_core::Interface::as_raw(this),
497
                        &mut result__,
498
                    )
499
                    .map(|| result__)
500
                }
501
            }
502
            pub fn LastDayInThisMonth(&self) -> windows_core::Result<i32> {
503
                let this = self;
504
                unsafe {
505
                    let mut result__ = core::mem::zeroed();
506
                    (windows_core::Interface::vtable(this).LastDayInThisMonth)(
507
                        windows_core::Interface::as_raw(this),
508
                        &mut result__,
509
                    )
510
                    .map(|| result__)
511
                }
512
            }
513
            pub fn NumberOfDaysInThisMonth(&self) -> windows_core::Result<i32> {
514
                let this = self;
515
                unsafe {
516
                    let mut result__ = core::mem::zeroed();
517
                    (windows_core::Interface::vtable(this).NumberOfDaysInThisMonth)(
518
                        windows_core::Interface::as_raw(this),
519
                        &mut result__,
520
                    )
521
                    .map(|| result__)
522
                }
523
            }
524
            pub fn Day(&self) -> windows_core::Result<i32> {
525
                let this = self;
526
                unsafe {
527
                    let mut result__ = core::mem::zeroed();
528
                    (windows_core::Interface::vtable(this).Day)(
529
                        windows_core::Interface::as_raw(this),
530
                        &mut result__,
531
                    )
532
                    .map(|| result__)
533
                }
534
            }
535
            pub fn SetDay(&self, value: i32) -> windows_core::Result<()> {
536
                let this = self;
537
                unsafe {
538
                    (windows_core::Interface::vtable(this).SetDay)(
539
                        windows_core::Interface::as_raw(this),
540
                        value,
541
                    )
542
                    .ok()
543
                }
544
            }
545
            pub fn AddDays(&self, days: i32) -> windows_core::Result<()> {
546
                let this = self;
547
                unsafe {
548
                    (windows_core::Interface::vtable(this).AddDays)(
549
                        windows_core::Interface::as_raw(this),
550
                        days,
551
                    )
552
                    .ok()
553
                }
554
            }
555
            pub fn DayAsString(&self) -> windows_core::Result<windows_core::HSTRING> {
556
                let this = self;
557
                unsafe {
558
                    let mut result__ = core::mem::zeroed();
559
                    (windows_core::Interface::vtable(this).DayAsString)(
560
                        windows_core::Interface::as_raw(this),
561
                        &mut result__,
562
                    )
563
                    .map(|| core::mem::transmute(result__))
564
                }
565
            }
566
            pub fn DayAsPaddedString(
567
                &self,
568
                mindigits: i32,
569
            ) -> windows_core::Result<windows_core::HSTRING> {
570
                let this = self;
571
                unsafe {
572
                    let mut result__ = core::mem::zeroed();
573
                    (windows_core::Interface::vtable(this).DayAsPaddedString)(
574
                        windows_core::Interface::as_raw(this),
575
                        mindigits,
576
                        &mut result__,
577
                    )
578
                    .map(|| core::mem::transmute(result__))
579
                }
580
            }
581
            pub fn DayOfWeekAsFullString(&self) -> windows_core::Result<windows_core::HSTRING> {
582
                let this = self;
583
                unsafe {
584
                    let mut result__ = core::mem::zeroed();
585
                    (windows_core::Interface::vtable(this).DayOfWeekAsFullString)(
586
                        windows_core::Interface::as_raw(this),
587
                        &mut result__,
588
                    )
589
                    .map(|| core::mem::transmute(result__))
590
                }
591
            }
592
            pub fn DayOfWeekAsString(
593
                &self,
594
                ideallength: i32,
595
            ) -> windows_core::Result<windows_core::HSTRING> {
596
                let this = self;
597
                unsafe {
598
                    let mut result__ = core::mem::zeroed();
599
                    (windows_core::Interface::vtable(this).DayOfWeekAsString)(
600
                        windows_core::Interface::as_raw(this),
601
                        ideallength,
602
                        &mut result__,
603
                    )
604
                    .map(|| core::mem::transmute(result__))
605
                }
606
            }
607
            pub fn DayOfWeekAsFullSoloString(&self) -> windows_core::Result<windows_core::HSTRING> {
608
                let this = self;
609
                unsafe {
610
                    let mut result__ = core::mem::zeroed();
611
                    (windows_core::Interface::vtable(this).DayOfWeekAsFullSoloString)(
612
                        windows_core::Interface::as_raw(this),
613
                        &mut result__,
614
                    )
615
                    .map(|| core::mem::transmute(result__))
616
                }
617
            }
618
            pub fn DayOfWeekAsSoloString(
619
                &self,
620
                ideallength: i32,
621
            ) -> windows_core::Result<windows_core::HSTRING> {
622
                let this = self;
623
                unsafe {
624
                    let mut result__ = core::mem::zeroed();
625
                    (windows_core::Interface::vtable(this).DayOfWeekAsSoloString)(
626
                        windows_core::Interface::as_raw(this),
627
                        ideallength,
628
                        &mut result__,
629
                    )
630
                    .map(|| core::mem::transmute(result__))
631
                }
632
            }
633
            pub fn FirstPeriodInThisDay(&self) -> windows_core::Result<i32> {
634
                let this = self;
635
                unsafe {
636
                    let mut result__ = core::mem::zeroed();
637
                    (windows_core::Interface::vtable(this).FirstPeriodInThisDay)(
638
                        windows_core::Interface::as_raw(this),
639
                        &mut result__,
640
                    )
641
                    .map(|| result__)
642
                }
643
            }
644
            pub fn LastPeriodInThisDay(&self) -> windows_core::Result<i32> {
645
                let this = self;
646
                unsafe {
647
                    let mut result__ = core::mem::zeroed();
648
                    (windows_core::Interface::vtable(this).LastPeriodInThisDay)(
649
                        windows_core::Interface::as_raw(this),
650
                        &mut result__,
651
                    )
652
                    .map(|| result__)
653
                }
654
            }
655
            pub fn NumberOfPeriodsInThisDay(&self) -> windows_core::Result<i32> {
656
                let this = self;
657
                unsafe {
658
                    let mut result__ = core::mem::zeroed();
659
                    (windows_core::Interface::vtable(this).NumberOfPeriodsInThisDay)(
660
                        windows_core::Interface::as_raw(this),
661
                        &mut result__,
662
                    )
663
                    .map(|| result__)
664
                }
665
            }
666
            pub fn Period(&self) -> windows_core::Result<i32> {
667
                let this = self;
668
                unsafe {
669
                    let mut result__ = core::mem::zeroed();
670
                    (windows_core::Interface::vtable(this).Period)(
671
                        windows_core::Interface::as_raw(this),
672
                        &mut result__,
673
                    )
674
                    .map(|| result__)
675
                }
676
            }
677
            pub fn SetPeriod(&self, value: i32) -> windows_core::Result<()> {
678
                let this = self;
679
                unsafe {
680
                    (windows_core::Interface::vtable(this).SetPeriod)(
681
                        windows_core::Interface::as_raw(this),
682
                        value,
683
                    )
684
                    .ok()
685
                }
686
            }
687
            pub fn AddPeriods(&self, periods: i32) -> windows_core::Result<()> {
688
                let this = self;
689
                unsafe {
690
                    (windows_core::Interface::vtable(this).AddPeriods)(
691
                        windows_core::Interface::as_raw(this),
692
                        periods,
693
                    )
694
                    .ok()
695
                }
696
            }
697
            pub fn PeriodAsFullString(&self) -> windows_core::Result<windows_core::HSTRING> {
698
                let this = self;
699
                unsafe {
700
                    let mut result__ = core::mem::zeroed();
701
                    (windows_core::Interface::vtable(this).PeriodAsFullString)(
702
                        windows_core::Interface::as_raw(this),
703
                        &mut result__,
704
                    )
705
                    .map(|| core::mem::transmute(result__))
706
                }
707
            }
708
            pub fn PeriodAsString(
709
                &self,
710
                ideallength: i32,
711
            ) -> windows_core::Result<windows_core::HSTRING> {
712
                let this = self;
713
                unsafe {
714
                    let mut result__ = core::mem::zeroed();
715
                    (windows_core::Interface::vtable(this).PeriodAsString)(
716
                        windows_core::Interface::as_raw(this),
717
                        ideallength,
718
                        &mut result__,
719
                    )
720
                    .map(|| core::mem::transmute(result__))
721
                }
722
            }
723
            pub fn FirstHourInThisPeriod(&self) -> windows_core::Result<i32> {
724
                let this = self;
725
                unsafe {
726
                    let mut result__ = core::mem::zeroed();
727
                    (windows_core::Interface::vtable(this).FirstHourInThisPeriod)(
728
                        windows_core::Interface::as_raw(this),
729
                        &mut result__,
730
                    )
731
                    .map(|| result__)
732
                }
733
            }
734
            pub fn LastHourInThisPeriod(&self) -> windows_core::Result<i32> {
735
                let this = self;
736
                unsafe {
737
                    let mut result__ = core::mem::zeroed();
738
                    (windows_core::Interface::vtable(this).LastHourInThisPeriod)(
739
                        windows_core::Interface::as_raw(this),
740
                        &mut result__,
741
                    )
742
                    .map(|| result__)
743
                }
744
            }
745
            pub fn NumberOfHoursInThisPeriod(&self) -> windows_core::Result<i32> {
746
                let this = self;
747
                unsafe {
748
                    let mut result__ = core::mem::zeroed();
749
                    (windows_core::Interface::vtable(this).NumberOfHoursInThisPeriod)(
750
                        windows_core::Interface::as_raw(this),
751
                        &mut result__,
752
                    )
753
                    .map(|| result__)
754
                }
755
            }
756
            pub fn Hour(&self) -> windows_core::Result<i32> {
757
                let this = self;
758
                unsafe {
759
                    let mut result__ = core::mem::zeroed();
760
                    (windows_core::Interface::vtable(this).Hour)(
761
                        windows_core::Interface::as_raw(this),
762
                        &mut result__,
763
                    )
764
                    .map(|| result__)
765
                }
766
            }
767
            pub fn SetHour(&self, value: i32) -> windows_core::Result<()> {
768
                let this = self;
769
                unsafe {
770
                    (windows_core::Interface::vtable(this).SetHour)(
771
                        windows_core::Interface::as_raw(this),
772
                        value,
773
                    )
774
                    .ok()
775
                }
776
            }
777
            pub fn AddHours(&self, hours: i32) -> windows_core::Result<()> {
778
                let this = self;
779
                unsafe {
780
                    (windows_core::Interface::vtable(this).AddHours)(
781
                        windows_core::Interface::as_raw(this),
782
                        hours,
783
                    )
784
                    .ok()
785
                }
786
            }
787
            pub fn HourAsString(&self) -> windows_core::Result<windows_core::HSTRING> {
788
                let this = self;
789
                unsafe {
790
                    let mut result__ = core::mem::zeroed();
791
                    (windows_core::Interface::vtable(this).HourAsString)(
792
                        windows_core::Interface::as_raw(this),
793
                        &mut result__,
794
                    )
795
                    .map(|| core::mem::transmute(result__))
796
                }
797
            }
798
            pub fn HourAsPaddedString(
799
                &self,
800
                mindigits: i32,
801
            ) -> windows_core::Result<windows_core::HSTRING> {
802
                let this = self;
803
                unsafe {
804
                    let mut result__ = core::mem::zeroed();
805
                    (windows_core::Interface::vtable(this).HourAsPaddedString)(
806
                        windows_core::Interface::as_raw(this),
807
                        mindigits,
808
                        &mut result__,
809
                    )
810
                    .map(|| core::mem::transmute(result__))
811
                }
812
            }
813
            pub fn Minute(&self) -> windows_core::Result<i32> {
814
                let this = self;
815
                unsafe {
816
                    let mut result__ = core::mem::zeroed();
817
                    (windows_core::Interface::vtable(this).Minute)(
818
                        windows_core::Interface::as_raw(this),
819
                        &mut result__,
820
                    )
821
                    .map(|| result__)
822
                }
823
            }
824
            pub fn SetMinute(&self, value: i32) -> windows_core::Result<()> {
825
                let this = self;
826
                unsafe {
827
                    (windows_core::Interface::vtable(this).SetMinute)(
828
                        windows_core::Interface::as_raw(this),
829
                        value,
830
                    )
831
                    .ok()
832
                }
833
            }
834
            pub fn AddMinutes(&self, minutes: i32) -> windows_core::Result<()> {
835
                let this = self;
836
                unsafe {
837
                    (windows_core::Interface::vtable(this).AddMinutes)(
838
                        windows_core::Interface::as_raw(this),
839
                        minutes,
840
                    )
841
                    .ok()
842
                }
843
            }
844
            pub fn MinuteAsString(&self) -> windows_core::Result<windows_core::HSTRING> {
845
                let this = self;
846
                unsafe {
847
                    let mut result__ = core::mem::zeroed();
848
                    (windows_core::Interface::vtable(this).MinuteAsString)(
849
                        windows_core::Interface::as_raw(this),
850
                        &mut result__,
851
                    )
852
                    .map(|| core::mem::transmute(result__))
853
                }
854
            }
855
            pub fn MinuteAsPaddedString(
856
                &self,
857
                mindigits: i32,
858
            ) -> windows_core::Result<windows_core::HSTRING> {
859
                let this = self;
860
                unsafe {
861
                    let mut result__ = core::mem::zeroed();
862
                    (windows_core::Interface::vtable(this).MinuteAsPaddedString)(
863
                        windows_core::Interface::as_raw(this),
864
                        mindigits,
865
                        &mut result__,
866
                    )
867
                    .map(|| core::mem::transmute(result__))
868
                }
869
            }
870
            pub fn Second(&self) -> windows_core::Result<i32> {
871
                let this = self;
872
                unsafe {
873
                    let mut result__ = core::mem::zeroed();
874
                    (windows_core::Interface::vtable(this).Second)(
875
                        windows_core::Interface::as_raw(this),
876
                        &mut result__,
877
                    )
878
                    .map(|| result__)
879
                }
880
            }
881
            pub fn SetSecond(&self, value: i32) -> windows_core::Result<()> {
882
                let this = self;
883
                unsafe {
884
                    (windows_core::Interface::vtable(this).SetSecond)(
885
                        windows_core::Interface::as_raw(this),
886
                        value,
887
                    )
888
                    .ok()
889
                }
890
            }
891
            pub fn AddSeconds(&self, seconds: i32) -> windows_core::Result<()> {
892
                let this = self;
893
                unsafe {
894
                    (windows_core::Interface::vtable(this).AddSeconds)(
895
                        windows_core::Interface::as_raw(this),
896
                        seconds,
897
                    )
898
                    .ok()
899
                }
900
            }
901
            pub fn SecondAsString(&self) -> windows_core::Result<windows_core::HSTRING> {
902
                let this = self;
903
                unsafe {
904
                    let mut result__ = core::mem::zeroed();
905
                    (windows_core::Interface::vtable(this).SecondAsString)(
906
                        windows_core::Interface::as_raw(this),
907
                        &mut result__,
908
                    )
909
                    .map(|| core::mem::transmute(result__))
910
                }
911
            }
912
            pub fn SecondAsPaddedString(
913
                &self,
914
                mindigits: i32,
915
            ) -> windows_core::Result<windows_core::HSTRING> {
916
                let this = self;
917
                unsafe {
918
                    let mut result__ = core::mem::zeroed();
919
                    (windows_core::Interface::vtable(this).SecondAsPaddedString)(
920
                        windows_core::Interface::as_raw(this),
921
                        mindigits,
922
                        &mut result__,
923
                    )
924
                    .map(|| core::mem::transmute(result__))
925
                }
926
            }
927
            pub fn Nanosecond(&self) -> windows_core::Result<i32> {
928
                let this = self;
929
                unsafe {
930
                    let mut result__ = core::mem::zeroed();
931
                    (windows_core::Interface::vtable(this).Nanosecond)(
932
                        windows_core::Interface::as_raw(this),
933
                        &mut result__,
934
                    )
935
                    .map(|| result__)
936
                }
937
            }
938
            pub fn SetNanosecond(&self, value: i32) -> windows_core::Result<()> {
939
                let this = self;
940
                unsafe {
941
                    (windows_core::Interface::vtable(this).SetNanosecond)(
942
                        windows_core::Interface::as_raw(this),
943
                        value,
944
                    )
945
                    .ok()
946
                }
947
            }
948
            pub fn AddNanoseconds(&self, nanoseconds: i32) -> windows_core::Result<()> {
949
                let this = self;
950
                unsafe {
951
                    (windows_core::Interface::vtable(this).AddNanoseconds)(
952
                        windows_core::Interface::as_raw(this),
953
                        nanoseconds,
954
                    )
955
                    .ok()
956
                }
957
            }
958
            pub fn NanosecondAsString(&self) -> windows_core::Result<windows_core::HSTRING> {
959
                let this = self;
960
                unsafe {
961
                    let mut result__ = core::mem::zeroed();
962
                    (windows_core::Interface::vtable(this).NanosecondAsString)(
963
                        windows_core::Interface::as_raw(this),
964
                        &mut result__,
965
                    )
966
                    .map(|| core::mem::transmute(result__))
967
                }
968
            }
969
            pub fn NanosecondAsPaddedString(
970
                &self,
971
                mindigits: i32,
972
            ) -> windows_core::Result<windows_core::HSTRING> {
973
                let this = self;
974
                unsafe {
975
                    let mut result__ = core::mem::zeroed();
976
                    (windows_core::Interface::vtable(this).NanosecondAsPaddedString)(
977
                        windows_core::Interface::as_raw(this),
978
                        mindigits,
979
                        &mut result__,
980
                    )
981
                    .map(|| core::mem::transmute(result__))
982
                }
983
            }
984
            pub fn Compare<P0>(&self, other: P0) -> windows_core::Result<i32>
985
            where
986
                P0: windows_core::Param<Calendar>,
987
            {
988
                let this = self;
989
                unsafe {
990
                    let mut result__ = core::mem::zeroed();
991
                    (windows_core::Interface::vtable(this).Compare)(
992
                        windows_core::Interface::as_raw(this),
993
                        other.param().abi(),
994
                        &mut result__,
995
                    )
996
                    .map(|| result__)
997
                }
998
            }
999
            pub fn CopyTo<P0>(&self, other: P0) -> windows_core::Result<()>
1000
            where
1001
                P0: windows_core::Param<Calendar>,
1002
            {
1003
                let this = self;
1004
                unsafe {
1005
                    (windows_core::Interface::vtable(this).CopyTo)(
1006
                        windows_core::Interface::as_raw(this),
1007
                        other.param().abi(),
1008
                    )
1009
                    .ok()
1010
                }
1011
            }
1012
            pub fn FirstMinuteInThisHour(&self) -> windows_core::Result<i32> {
1013
                let this = self;
1014
                unsafe {
1015
                    let mut result__ = core::mem::zeroed();
1016
                    (windows_core::Interface::vtable(this).FirstMinuteInThisHour)(
1017
                        windows_core::Interface::as_raw(this),
1018
                        &mut result__,
1019
                    )
1020
                    .map(|| result__)
1021
                }
1022
            }
1023
            pub fn LastMinuteInThisHour(&self) -> windows_core::Result<i32> {
1024
                let this = self;
1025
                unsafe {
1026
                    let mut result__ = core::mem::zeroed();
1027
                    (windows_core::Interface::vtable(this).LastMinuteInThisHour)(
1028
                        windows_core::Interface::as_raw(this),
1029
                        &mut result__,
1030
                    )
1031
                    .map(|| result__)
1032
                }
1033
            }
1034
            pub fn NumberOfMinutesInThisHour(&self) -> windows_core::Result<i32> {
1035
                let this = self;
1036
                unsafe {
1037
                    let mut result__ = core::mem::zeroed();
1038
                    (windows_core::Interface::vtable(this).NumberOfMinutesInThisHour)(
1039
                        windows_core::Interface::as_raw(this),
1040
                        &mut result__,
1041
                    )
1042
                    .map(|| result__)
1043
                }
1044
            }
1045
            pub fn FirstSecondInThisMinute(&self) -> windows_core::Result<i32> {
1046
                let this = self;
1047
                unsafe {
1048
                    let mut result__ = core::mem::zeroed();
1049
                    (windows_core::Interface::vtable(this).FirstSecondInThisMinute)(
1050
                        windows_core::Interface::as_raw(this),
1051
                        &mut result__,
1052
                    )
1053
                    .map(|| result__)
1054
                }
1055
            }
1056
            pub fn LastSecondInThisMinute(&self) -> windows_core::Result<i32> {
1057
                let this = self;
1058
                unsafe {
1059
                    let mut result__ = core::mem::zeroed();
1060
                    (windows_core::Interface::vtable(this).LastSecondInThisMinute)(
1061
                        windows_core::Interface::as_raw(this),
1062
                        &mut result__,
1063
                    )
1064
                    .map(|| result__)
1065
                }
1066
            }
1067
            pub fn NumberOfSecondsInThisMinute(&self) -> windows_core::Result<i32> {
1068
                let this = self;
1069
                unsafe {
1070
                    let mut result__ = core::mem::zeroed();
1071
                    (windows_core::Interface::vtable(this).NumberOfSecondsInThisMinute)(
1072
                        windows_core::Interface::as_raw(this),
1073
                        &mut result__,
1074
                    )
1075
                    .map(|| result__)
1076
                }
1077
            }
1078
            pub fn ResolvedLanguage(&self) -> windows_core::Result<windows_core::HSTRING> {
1079
                let this = self;
1080
                unsafe {
1081
                    let mut result__ = core::mem::zeroed();
1082
                    (windows_core::Interface::vtable(this).ResolvedLanguage)(
1083
                        windows_core::Interface::as_raw(this),
1084
                        &mut result__,
1085
                    )
1086
                    .map(|| core::mem::transmute(result__))
1087
                }
1088
            }
1089
            pub fn IsDaylightSavingTime(&self) -> windows_core::Result<bool> {
1090
                let this = self;
1091
                unsafe {
1092
                    let mut result__ = core::mem::zeroed();
1093
                    (windows_core::Interface::vtable(this).IsDaylightSavingTime)(
1094
                        windows_core::Interface::as_raw(this),
1095
                        &mut result__,
1096
                    )
1097
                    .map(|| result__)
1098
                }
1099
            }
1100
            pub fn GetTimeZone(&self) -> windows_core::Result<windows_core::HSTRING> {
1101
                let this = &windows_core::Interface::cast::<ITimeZoneOnCalendar>(self)?;
1102
                unsafe {
1103
                    let mut result__ = core::mem::zeroed();
1104
                    (windows_core::Interface::vtable(this).GetTimeZone)(
1105
                        windows_core::Interface::as_raw(this),
1106
                        &mut result__,
1107
                    )
1108
                    .map(|| core::mem::transmute(result__))
1109
                }
1110
            }
1111
            pub fn ChangeTimeZone(
1112
                &self,
1113
                timezoneid: &windows_core::HSTRING,
1114
            ) -> windows_core::Result<()> {
1115
                let this = &windows_core::Interface::cast::<ITimeZoneOnCalendar>(self)?;
1116
                unsafe {
1117
                    (windows_core::Interface::vtable(this).ChangeTimeZone)(
1118
                        windows_core::Interface::as_raw(this),
1119
                        core::mem::transmute_copy(timezoneid),
1120
                    )
1121
                    .ok()
1122
                }
1123
            }
1124
            pub fn TimeZoneAsFullString(&self) -> windows_core::Result<windows_core::HSTRING> {
1125
                let this = &windows_core::Interface::cast::<ITimeZoneOnCalendar>(self)?;
1126
                unsafe {
1127
                    let mut result__ = core::mem::zeroed();
1128
                    (windows_core::Interface::vtable(this).TimeZoneAsFullString)(
1129
                        windows_core::Interface::as_raw(this),
1130
                        &mut result__,
1131
                    )
1132
                    .map(|| core::mem::transmute(result__))
1133
                }
1134
            }
1135
            pub fn TimeZoneAsString(
1136
                &self,
1137
                ideallength: i32,
1138
            ) -> windows_core::Result<windows_core::HSTRING> {
1139
                let this = &windows_core::Interface::cast::<ITimeZoneOnCalendar>(self)?;
1140
                unsafe {
1141
                    let mut result__ = core::mem::zeroed();
1142
                    (windows_core::Interface::vtable(this).TimeZoneAsString)(
1143
                        windows_core::Interface::as_raw(this),
1144
                        ideallength,
1145
                        &mut result__,
1146
                    )
1147
                    .map(|| core::mem::transmute(result__))
1148
                }
1149
            }
1150
            fn ICalendarFactory<R, F: FnOnce(&ICalendarFactory) -> windows_core::Result<R>>(
1151
                callback: F,
1152
            ) -> windows_core::Result<R> {
1153
                static SHARED: windows_core::imp::FactoryCache<Calendar, ICalendarFactory> =
1154
                    windows_core::imp::FactoryCache::new();
1155
                SHARED.call(callback)
1156
            }
1157
            fn ICalendarFactory2<R, F: FnOnce(&ICalendarFactory2) -> windows_core::Result<R>>(
1158
                callback: F,
1159
            ) -> windows_core::Result<R> {
1160
                static SHARED: windows_core::imp::FactoryCache<Calendar, ICalendarFactory2> =
1161
                    windows_core::imp::FactoryCache::new();
1162
                SHARED.call(callback)
1163
            }
1164
        }
1165
        impl windows_core::RuntimeType for Calendar {
1166
            const SIGNATURE: windows_core::imp::ConstBuffer =
1167
                windows_core::imp::ConstBuffer::for_class::<Self, ICalendar>();
1168
        }
1169
        unsafe impl windows_core::Interface for Calendar {
1170
            type Vtable = <ICalendar as windows_core::Interface>::Vtable;
1171
            const IID: windows_core::GUID = <ICalendar as windows_core::Interface>::IID;
1172
        }
1173
        impl windows_core::RuntimeName for Calendar {
1174
            const NAME: &'static str = "Windows.Globalization.Calendar";
1175
        }
1176
        unsafe impl Send for Calendar {}
1177
        unsafe impl Sync for Calendar {}
1178
        windows_core::imp::define_interface!(
1179
            ICalendar,
1180
            ICalendar_Vtbl,
1181
            0xca30221d_86d9_40fb_a26b_d44eb7cf08ea
1182
        );
1183
        impl windows_core::RuntimeType for ICalendar {
1184
            const SIGNATURE: windows_core::imp::ConstBuffer =
1185
                windows_core::imp::ConstBuffer::for_interface::<Self>();
1186
        }
1187
        #[repr(C)]
1188
        pub struct ICalendar_Vtbl {
1189
            pub base__: windows_core::IInspectable_Vtbl,
1190
            pub Clone: unsafe extern "system" fn(
1191
                *mut core::ffi::c_void,
1192
                *mut *mut core::ffi::c_void,
1193
            ) -> windows_core::HRESULT,
1194
            pub SetToMin:
1195
                unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
1196
            pub SetToMax:
1197
                unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
1198
            get_Languages: usize,
1199
            pub NumeralSystem: unsafe extern "system" fn(
1200
                *mut core::ffi::c_void,
1201
                *mut *mut core::ffi::c_void,
1202
            ) -> windows_core::HRESULT,
1203
            pub SetNumeralSystem: unsafe extern "system" fn(
1204
                *mut core::ffi::c_void,
1205
                *mut core::ffi::c_void,
1206
            ) -> windows_core::HRESULT,
1207
            pub GetCalendarSystem: unsafe extern "system" fn(
1208
                *mut core::ffi::c_void,
1209
                *mut *mut core::ffi::c_void,
1210
            ) -> windows_core::HRESULT,
1211
            pub ChangeCalendarSystem: unsafe extern "system" fn(
1212
                *mut core::ffi::c_void,
1213
                *mut core::ffi::c_void,
1214
            )
1215
                -> windows_core::HRESULT,
1216
            pub GetClock: unsafe extern "system" fn(
1217
                *mut core::ffi::c_void,
1218
                *mut *mut core::ffi::c_void,
1219
            ) -> windows_core::HRESULT,
1220
            pub ChangeClock: unsafe extern "system" fn(
1221
                *mut core::ffi::c_void,
1222
                *mut core::ffi::c_void,
1223
            ) -> windows_core::HRESULT,
1224
            GetDateTime: usize,
1225
            SetDateTime: usize,
1226
            pub SetToNow:
1227
                unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
1228
            pub FirstEra: unsafe extern "system" fn(
1229
                *mut core::ffi::c_void,
1230
                *mut i32,
1231
            ) -> windows_core::HRESULT,
1232
            pub LastEra: unsafe extern "system" fn(
1233
                *mut core::ffi::c_void,
1234
                *mut i32,
1235
            ) -> windows_core::HRESULT,
1236
            pub NumberOfEras: unsafe extern "system" fn(
1237
                *mut core::ffi::c_void,
1238
                *mut i32,
1239
            ) -> windows_core::HRESULT,
1240
            pub Era: unsafe extern "system" fn(
1241
                *mut core::ffi::c_void,
1242
                *mut i32,
1243
            ) -> windows_core::HRESULT,
1244
            pub SetEra:
1245
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1246
            pub AddEras:
1247
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1248
            pub EraAsFullString: unsafe extern "system" fn(
1249
                *mut core::ffi::c_void,
1250
                *mut *mut core::ffi::c_void,
1251
            ) -> windows_core::HRESULT,
1252
            pub EraAsString: unsafe extern "system" fn(
1253
                *mut core::ffi::c_void,
1254
                i32,
1255
                *mut *mut core::ffi::c_void,
1256
            ) -> windows_core::HRESULT,
1257
            pub FirstYearInThisEra: unsafe extern "system" fn(
1258
                *mut core::ffi::c_void,
1259
                *mut i32,
1260
            ) -> windows_core::HRESULT,
1261
            pub LastYearInThisEra: unsafe extern "system" fn(
1262
                *mut core::ffi::c_void,
1263
                *mut i32,
1264
            ) -> windows_core::HRESULT,
1265
            pub NumberOfYearsInThisEra: unsafe extern "system" fn(
1266
                *mut core::ffi::c_void,
1267
                *mut i32,
1268
            )
1269
                -> windows_core::HRESULT,
1270
            pub Year: unsafe extern "system" fn(
1271
                *mut core::ffi::c_void,
1272
                *mut i32,
1273
            ) -> windows_core::HRESULT,
1274
            pub SetYear:
1275
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1276
            pub AddYears:
1277
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1278
            pub YearAsString: unsafe extern "system" fn(
1279
                *mut core::ffi::c_void,
1280
                *mut *mut core::ffi::c_void,
1281
            ) -> windows_core::HRESULT,
1282
            pub YearAsTruncatedString: unsafe extern "system" fn(
1283
                *mut core::ffi::c_void,
1284
                i32,
1285
                *mut *mut core::ffi::c_void,
1286
            )
1287
                -> windows_core::HRESULT,
1288
            pub YearAsPaddedString: unsafe extern "system" fn(
1289
                *mut core::ffi::c_void,
1290
                i32,
1291
                *mut *mut core::ffi::c_void,
1292
            ) -> windows_core::HRESULT,
1293
            pub FirstMonthInThisYear: unsafe extern "system" fn(
1294
                *mut core::ffi::c_void,
1295
                *mut i32,
1296
            )
1297
                -> windows_core::HRESULT,
1298
            pub LastMonthInThisYear: unsafe extern "system" fn(
1299
                *mut core::ffi::c_void,
1300
                *mut i32,
1301
            )
1302
                -> windows_core::HRESULT,
1303
            pub NumberOfMonthsInThisYear: unsafe extern "system" fn(
1304
                *mut core::ffi::c_void,
1305
                *mut i32,
1306
            )
1307
                -> windows_core::HRESULT,
1308
            pub Month: unsafe extern "system" fn(
1309
                *mut core::ffi::c_void,
1310
                *mut i32,
1311
            ) -> windows_core::HRESULT,
1312
            pub SetMonth:
1313
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1314
            pub AddMonths:
1315
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1316
            pub MonthAsFullString: unsafe extern "system" fn(
1317
                *mut core::ffi::c_void,
1318
                *mut *mut core::ffi::c_void,
1319
            ) -> windows_core::HRESULT,
1320
            pub MonthAsString: unsafe extern "system" fn(
1321
                *mut core::ffi::c_void,
1322
                i32,
1323
                *mut *mut core::ffi::c_void,
1324
            ) -> windows_core::HRESULT,
1325
            pub MonthAsFullSoloString: unsafe extern "system" fn(
1326
                *mut core::ffi::c_void,
1327
                *mut *mut core::ffi::c_void,
1328
            )
1329
                -> windows_core::HRESULT,
1330
            pub MonthAsSoloString: unsafe extern "system" fn(
1331
                *mut core::ffi::c_void,
1332
                i32,
1333
                *mut *mut core::ffi::c_void,
1334
            ) -> windows_core::HRESULT,
1335
            pub MonthAsNumericString: unsafe extern "system" fn(
1336
                *mut core::ffi::c_void,
1337
                *mut *mut core::ffi::c_void,
1338
            )
1339
                -> windows_core::HRESULT,
1340
            pub MonthAsPaddedNumericString: unsafe extern "system" fn(
1341
                *mut core::ffi::c_void,
1342
                i32,
1343
                *mut *mut core::ffi::c_void,
1344
            )
1345
                -> windows_core::HRESULT,
1346
            pub AddWeeks:
1347
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1348
            pub FirstDayInThisMonth: unsafe extern "system" fn(
1349
                *mut core::ffi::c_void,
1350
                *mut i32,
1351
            )
1352
                -> windows_core::HRESULT,
1353
            pub LastDayInThisMonth: unsafe extern "system" fn(
1354
                *mut core::ffi::c_void,
1355
                *mut i32,
1356
            ) -> windows_core::HRESULT,
1357
            pub NumberOfDaysInThisMonth: unsafe extern "system" fn(
1358
                *mut core::ffi::c_void,
1359
                *mut i32,
1360
            )
1361
                -> windows_core::HRESULT,
1362
            pub Day: unsafe extern "system" fn(
1363
                *mut core::ffi::c_void,
1364
                *mut i32,
1365
            ) -> windows_core::HRESULT,
1366
            pub SetDay:
1367
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1368
            pub AddDays:
1369
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1370
            pub DayAsString: unsafe extern "system" fn(
1371
                *mut core::ffi::c_void,
1372
                *mut *mut core::ffi::c_void,
1373
            ) -> windows_core::HRESULT,
1374
            pub DayAsPaddedString: unsafe extern "system" fn(
1375
                *mut core::ffi::c_void,
1376
                i32,
1377
                *mut *mut core::ffi::c_void,
1378
            ) -> windows_core::HRESULT,
1379
            get_DayOfWeek: usize,
1380
            pub DayOfWeekAsFullString: unsafe extern "system" fn(
1381
                *mut core::ffi::c_void,
1382
                *mut *mut core::ffi::c_void,
1383
            )
1384
                -> windows_core::HRESULT,
1385
            pub DayOfWeekAsString: unsafe extern "system" fn(
1386
                *mut core::ffi::c_void,
1387
                i32,
1388
                *mut *mut core::ffi::c_void,
1389
            ) -> windows_core::HRESULT,
1390
            pub DayOfWeekAsFullSoloString: unsafe extern "system" fn(
1391
                *mut core::ffi::c_void,
1392
                *mut *mut core::ffi::c_void,
1393
            )
1394
                -> windows_core::HRESULT,
1395
            pub DayOfWeekAsSoloString: unsafe extern "system" fn(
1396
                *mut core::ffi::c_void,
1397
                i32,
1398
                *mut *mut core::ffi::c_void,
1399
            )
1400
                -> windows_core::HRESULT,
1401
            pub FirstPeriodInThisDay: unsafe extern "system" fn(
1402
                *mut core::ffi::c_void,
1403
                *mut i32,
1404
            )
1405
                -> windows_core::HRESULT,
1406
            pub LastPeriodInThisDay: unsafe extern "system" fn(
1407
                *mut core::ffi::c_void,
1408
                *mut i32,
1409
            )
1410
                -> windows_core::HRESULT,
1411
            pub NumberOfPeriodsInThisDay: unsafe extern "system" fn(
1412
                *mut core::ffi::c_void,
1413
                *mut i32,
1414
            )
1415
                -> windows_core::HRESULT,
1416
            pub Period: unsafe extern "system" fn(
1417
                *mut core::ffi::c_void,
1418
                *mut i32,
1419
            ) -> windows_core::HRESULT,
1420
            pub SetPeriod:
1421
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1422
            pub AddPeriods:
1423
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1424
            pub PeriodAsFullString: unsafe extern "system" fn(
1425
                *mut core::ffi::c_void,
1426
                *mut *mut core::ffi::c_void,
1427
            ) -> windows_core::HRESULT,
1428
            pub PeriodAsString: unsafe extern "system" fn(
1429
                *mut core::ffi::c_void,
1430
                i32,
1431
                *mut *mut core::ffi::c_void,
1432
            ) -> windows_core::HRESULT,
1433
            pub FirstHourInThisPeriod: unsafe extern "system" fn(
1434
                *mut core::ffi::c_void,
1435
                *mut i32,
1436
            )
1437
                -> windows_core::HRESULT,
1438
            pub LastHourInThisPeriod: unsafe extern "system" fn(
1439
                *mut core::ffi::c_void,
1440
                *mut i32,
1441
            )
1442
                -> windows_core::HRESULT,
1443
            pub NumberOfHoursInThisPeriod: unsafe extern "system" fn(
1444
                *mut core::ffi::c_void,
1445
                *mut i32,
1446
            )
1447
                -> windows_core::HRESULT,
1448
            pub Hour: unsafe extern "system" fn(
1449
                *mut core::ffi::c_void,
1450
                *mut i32,
1451
            ) -> windows_core::HRESULT,
1452
            pub SetHour:
1453
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1454
            pub AddHours:
1455
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1456
            pub HourAsString: unsafe extern "system" fn(
1457
                *mut core::ffi::c_void,
1458
                *mut *mut core::ffi::c_void,
1459
            ) -> windows_core::HRESULT,
1460
            pub HourAsPaddedString: unsafe extern "system" fn(
1461
                *mut core::ffi::c_void,
1462
                i32,
1463
                *mut *mut core::ffi::c_void,
1464
            ) -> windows_core::HRESULT,
1465
            pub Minute: unsafe extern "system" fn(
1466
                *mut core::ffi::c_void,
1467
                *mut i32,
1468
            ) -> windows_core::HRESULT,
1469
            pub SetMinute:
1470
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1471
            pub AddMinutes:
1472
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1473
            pub MinuteAsString: unsafe extern "system" fn(
1474
                *mut core::ffi::c_void,
1475
                *mut *mut core::ffi::c_void,
1476
            ) -> windows_core::HRESULT,
1477
            pub MinuteAsPaddedString: unsafe extern "system" fn(
1478
                *mut core::ffi::c_void,
1479
                i32,
1480
                *mut *mut core::ffi::c_void,
1481
            )
1482
                -> windows_core::HRESULT,
1483
            pub Second: unsafe extern "system" fn(
1484
                *mut core::ffi::c_void,
1485
                *mut i32,
1486
            ) -> windows_core::HRESULT,
1487
            pub SetSecond:
1488
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1489
            pub AddSeconds:
1490
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1491
            pub SecondAsString: unsafe extern "system" fn(
1492
                *mut core::ffi::c_void,
1493
                *mut *mut core::ffi::c_void,
1494
            ) -> windows_core::HRESULT,
1495
            pub SecondAsPaddedString: unsafe extern "system" fn(
1496
                *mut core::ffi::c_void,
1497
                i32,
1498
                *mut *mut core::ffi::c_void,
1499
            )
1500
                -> windows_core::HRESULT,
1501
            pub Nanosecond: unsafe extern "system" fn(
1502
                *mut core::ffi::c_void,
1503
                *mut i32,
1504
            ) -> windows_core::HRESULT,
1505
            pub SetNanosecond:
1506
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1507
            pub AddNanoseconds:
1508
                unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> windows_core::HRESULT,
1509
            pub NanosecondAsString: unsafe extern "system" fn(
1510
                *mut core::ffi::c_void,
1511
                *mut *mut core::ffi::c_void,
1512
            ) -> windows_core::HRESULT,
1513
            pub NanosecondAsPaddedString: unsafe extern "system" fn(
1514
                *mut core::ffi::c_void,
1515
                i32,
1516
                *mut *mut core::ffi::c_void,
1517
            )
1518
                -> windows_core::HRESULT,
1519
            pub Compare: unsafe extern "system" fn(
1520
                *mut core::ffi::c_void,
1521
                *mut core::ffi::c_void,
1522
                *mut i32,
1523
            ) -> windows_core::HRESULT,
1524
            CompareDateTime: usize,
1525
            pub CopyTo: unsafe extern "system" fn(
1526
                *mut core::ffi::c_void,
1527
                *mut core::ffi::c_void,
1528
            ) -> windows_core::HRESULT,
1529
            pub FirstMinuteInThisHour: unsafe extern "system" fn(
1530
                *mut core::ffi::c_void,
1531
                *mut i32,
1532
            )
1533
                -> windows_core::HRESULT,
1534
            pub LastMinuteInThisHour: unsafe extern "system" fn(
1535
                *mut core::ffi::c_void,
1536
                *mut i32,
1537
            )
1538
                -> windows_core::HRESULT,
1539
            pub NumberOfMinutesInThisHour: unsafe extern "system" fn(
1540
                *mut core::ffi::c_void,
1541
                *mut i32,
1542
            )
1543
                -> windows_core::HRESULT,
1544
            pub FirstSecondInThisMinute: unsafe extern "system" fn(
1545
                *mut core::ffi::c_void,
1546
                *mut i32,
1547
            )
1548
                -> windows_core::HRESULT,
1549
            pub LastSecondInThisMinute: unsafe extern "system" fn(
1550
                *mut core::ffi::c_void,
1551
                *mut i32,
1552
            )
1553
                -> windows_core::HRESULT,
1554
            pub NumberOfSecondsInThisMinute: unsafe extern "system" fn(
1555
                *mut core::ffi::c_void,
1556
                *mut i32,
1557
            )
1558
                -> windows_core::HRESULT,
1559
            pub ResolvedLanguage: unsafe extern "system" fn(
1560
                *mut core::ffi::c_void,
1561
                *mut *mut core::ffi::c_void,
1562
            ) -> windows_core::HRESULT,
1563
            pub IsDaylightSavingTime: unsafe extern "system" fn(
1564
                *mut core::ffi::c_void,
1565
                *mut bool,
1566
            )
1567
                -> windows_core::HRESULT,
1568
        }
1569
        windows_core::imp::define_interface!(
1570
            ICalendarFactory,
1571
            ICalendarFactory_Vtbl,
1572
            0x83f58412_e56b_4c75_a66e_0f63d57758a6
1573
        );
1574
        impl windows_core::RuntimeType for ICalendarFactory {
1575
            const SIGNATURE: windows_core::imp::ConstBuffer =
1576
                windows_core::imp::ConstBuffer::for_interface::<Self>();
1577
        }
1578
        #[repr(C)]
1579
        pub struct ICalendarFactory_Vtbl {
1580
            pub base__: windows_core::IInspectable_Vtbl,
1581
            CreateCalendarDefaultCalendarAndClock: usize,
1582
            CreateCalendar: usize,
1583
        }
1584
        windows_core::imp::define_interface!(
1585
            ICalendarFactory2,
1586
            ICalendarFactory2_Vtbl,
1587
            0xb44b378c_ca7e_4590_9e72_ea2bec1a5115
1588
        );
1589
        impl windows_core::RuntimeType for ICalendarFactory2 {
1590
            const SIGNATURE: windows_core::imp::ConstBuffer =
1591
                windows_core::imp::ConstBuffer::for_interface::<Self>();
1592
        }
1593
        #[repr(C)]
1594
        pub struct ICalendarFactory2_Vtbl {
1595
            pub base__: windows_core::IInspectable_Vtbl,
1596
            CreateCalendarWithTimeZone: usize,
1597
        }
1598
        windows_core::imp::define_interface!(
1599
            ITimeZoneOnCalendar,
1600
            ITimeZoneOnCalendar_Vtbl,
1601
            0xbb3c25e5_46cf_4317_a3f5_02621ad54478
1602
        );
1603
        impl windows_core::RuntimeType for ITimeZoneOnCalendar {
1604
            const SIGNATURE: windows_core::imp::ConstBuffer =
1605
                windows_core::imp::ConstBuffer::for_interface::<Self>();
1606
        }
1607
        #[repr(C)]
1608
        pub struct ITimeZoneOnCalendar_Vtbl {
1609
            pub base__: windows_core::IInspectable_Vtbl,
1610
            pub GetTimeZone: unsafe extern "system" fn(
1611
                *mut core::ffi::c_void,
1612
                *mut *mut core::ffi::c_void,
1613
            ) -> windows_core::HRESULT,
1614
            pub ChangeTimeZone: unsafe extern "system" fn(
1615
                *mut core::ffi::c_void,
1616
                *mut core::ffi::c_void,
1617
            ) -> windows_core::HRESULT,
1618
            pub TimeZoneAsFullString: unsafe extern "system" fn(
1619
                *mut core::ffi::c_void,
1620
                *mut *mut core::ffi::c_void,
1621
            )
1622
                -> windows_core::HRESULT,
1623
            pub TimeZoneAsString: unsafe extern "system" fn(
1624
                *mut core::ffi::c_void,
1625
                i32,
1626
                *mut *mut core::ffi::c_void,
1627
            ) -> windows_core::HRESULT,
1628
        }
1629
    }
1630
}