objc2_foundation/generated/
NSDateInterval.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5
6use crate::*;
7
8extern_class!(
9    /// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsdateinterval?language=objc)
10    #[unsafe(super(NSObject))]
11    #[derive(Debug, PartialEq, Eq, Hash)]
12    pub struct NSDateInterval;
13);
14
15unsafe impl Send for NSDateInterval {}
16
17unsafe impl Sync for NSDateInterval {}
18
19#[cfg(feature = "NSObject")]
20unsafe impl NSCoding for NSDateInterval {}
21
22#[cfg(feature = "NSObject")]
23unsafe impl NSCopying for NSDateInterval {}
24
25#[cfg(feature = "NSObject")]
26unsafe impl CopyingHelper for NSDateInterval {
27    type Result = Self;
28}
29
30unsafe impl NSObjectProtocol for NSDateInterval {}
31
32#[cfg(feature = "NSObject")]
33unsafe impl NSSecureCoding for NSDateInterval {}
34
35impl NSDateInterval {
36    extern_methods!(
37        #[cfg(feature = "NSDate")]
38        #[unsafe(method(startDate))]
39        #[unsafe(method_family = none)]
40        pub unsafe fn startDate(&self) -> Retained<NSDate>;
41
42        #[cfg(feature = "NSDate")]
43        #[unsafe(method(endDate))]
44        #[unsafe(method_family = none)]
45        pub unsafe fn endDate(&self) -> Retained<NSDate>;
46
47        #[cfg(feature = "NSDate")]
48        #[unsafe(method(duration))]
49        #[unsafe(method_family = none)]
50        pub unsafe fn duration(&self) -> NSTimeInterval;
51
52        #[unsafe(method(init))]
53        #[unsafe(method_family = init)]
54        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
55
56        #[cfg(feature = "NSCoder")]
57        #[unsafe(method(initWithCoder:))]
58        #[unsafe(method_family = init)]
59        pub unsafe fn initWithCoder(this: Allocated<Self>, coder: &NSCoder) -> Retained<Self>;
60
61        #[cfg(feature = "NSDate")]
62        #[unsafe(method(initWithStartDate:duration:))]
63        #[unsafe(method_family = init)]
64        pub unsafe fn initWithStartDate_duration(
65            this: Allocated<Self>,
66            start_date: &NSDate,
67            duration: NSTimeInterval,
68        ) -> Retained<Self>;
69
70        #[cfg(feature = "NSDate")]
71        #[unsafe(method(initWithStartDate:endDate:))]
72        #[unsafe(method_family = init)]
73        pub unsafe fn initWithStartDate_endDate(
74            this: Allocated<Self>,
75            start_date: &NSDate,
76            end_date: &NSDate,
77        ) -> Retained<Self>;
78
79        #[cfg(feature = "NSObjCRuntime")]
80        #[unsafe(method(compare:))]
81        #[unsafe(method_family = none)]
82        pub unsafe fn compare(&self, date_interval: &NSDateInterval) -> NSComparisonResult;
83
84        #[unsafe(method(isEqualToDateInterval:))]
85        #[unsafe(method_family = none)]
86        pub unsafe fn isEqualToDateInterval(&self, date_interval: &NSDateInterval) -> bool;
87
88        #[unsafe(method(intersectsDateInterval:))]
89        #[unsafe(method_family = none)]
90        pub unsafe fn intersectsDateInterval(&self, date_interval: &NSDateInterval) -> bool;
91
92        #[unsafe(method(intersectionWithDateInterval:))]
93        #[unsafe(method_family = none)]
94        pub unsafe fn intersectionWithDateInterval(
95            &self,
96            date_interval: &NSDateInterval,
97        ) -> Option<Retained<NSDateInterval>>;
98
99        #[cfg(feature = "NSDate")]
100        #[unsafe(method(containsDate:))]
101        #[unsafe(method_family = none)]
102        pub unsafe fn containsDate(&self, date: &NSDate) -> bool;
103    );
104}
105
106/// Methods declared on superclass `NSObject`.
107impl NSDateInterval {
108    extern_methods!(
109        #[unsafe(method(new))]
110        #[unsafe(method_family = new)]
111        pub unsafe fn new() -> Retained<Self>;
112    );
113}