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")]
20extern_conformance!(
21    unsafe impl NSCoding for NSDateInterval {}
22);
23
24#[cfg(feature = "NSObject")]
25extern_conformance!(
26    unsafe impl NSCopying for NSDateInterval {}
27);
28
29#[cfg(feature = "NSObject")]
30unsafe impl CopyingHelper for NSDateInterval {
31    type Result = Self;
32}
33
34extern_conformance!(
35    unsafe impl NSObjectProtocol for NSDateInterval {}
36);
37
38#[cfg(feature = "NSObject")]
39extern_conformance!(
40    unsafe impl NSSecureCoding for NSDateInterval {}
41);
42
43impl NSDateInterval {
44    extern_methods!(
45        #[cfg(feature = "NSDate")]
46        #[unsafe(method(startDate))]
47        #[unsafe(method_family = none)]
48        pub unsafe fn startDate(&self) -> Retained<NSDate>;
49
50        #[cfg(feature = "NSDate")]
51        #[unsafe(method(endDate))]
52        #[unsafe(method_family = none)]
53        pub unsafe fn endDate(&self) -> Retained<NSDate>;
54
55        #[cfg(feature = "NSDate")]
56        #[unsafe(method(duration))]
57        #[unsafe(method_family = none)]
58        pub unsafe fn duration(&self) -> NSTimeInterval;
59
60        #[unsafe(method(init))]
61        #[unsafe(method_family = init)]
62        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
63
64        #[cfg(feature = "NSCoder")]
65        #[unsafe(method(initWithCoder:))]
66        #[unsafe(method_family = init)]
67        pub unsafe fn initWithCoder(this: Allocated<Self>, coder: &NSCoder) -> Retained<Self>;
68
69        #[cfg(feature = "NSDate")]
70        #[unsafe(method(initWithStartDate:duration:))]
71        #[unsafe(method_family = init)]
72        pub unsafe fn initWithStartDate_duration(
73            this: Allocated<Self>,
74            start_date: &NSDate,
75            duration: NSTimeInterval,
76        ) -> Retained<Self>;
77
78        #[cfg(feature = "NSDate")]
79        #[unsafe(method(initWithStartDate:endDate:))]
80        #[unsafe(method_family = init)]
81        pub unsafe fn initWithStartDate_endDate(
82            this: Allocated<Self>,
83            start_date: &NSDate,
84            end_date: &NSDate,
85        ) -> Retained<Self>;
86
87        #[cfg(feature = "NSObjCRuntime")]
88        #[unsafe(method(compare:))]
89        #[unsafe(method_family = none)]
90        pub unsafe fn compare(&self, date_interval: &NSDateInterval) -> NSComparisonResult;
91
92        #[unsafe(method(isEqualToDateInterval:))]
93        #[unsafe(method_family = none)]
94        pub unsafe fn isEqualToDateInterval(&self, date_interval: &NSDateInterval) -> bool;
95
96        #[unsafe(method(intersectsDateInterval:))]
97        #[unsafe(method_family = none)]
98        pub unsafe fn intersectsDateInterval(&self, date_interval: &NSDateInterval) -> bool;
99
100        #[unsafe(method(intersectionWithDateInterval:))]
101        #[unsafe(method_family = none)]
102        pub unsafe fn intersectionWithDateInterval(
103            &self,
104            date_interval: &NSDateInterval,
105        ) -> Option<Retained<NSDateInterval>>;
106
107        #[cfg(feature = "NSDate")]
108        #[unsafe(method(containsDate:))]
109        #[unsafe(method_family = none)]
110        pub unsafe fn containsDate(&self, date: &NSDate) -> bool;
111    );
112}
113
114/// Methods declared on superclass `NSObject`.
115impl NSDateInterval {
116    extern_methods!(
117        #[unsafe(method(new))]
118        #[unsafe(method_family = new)]
119        pub unsafe fn new() -> Retained<Self>;
120    );
121}