objc2_intents/generated/
INMediaSearch.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::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9extern_class!(
10    /// [Apple's documentation](https://developer.apple.com/documentation/intents/inmediasearch?language=objc)
11    #[unsafe(super(NSObject))]
12    #[derive(Debug, PartialEq, Eq, Hash)]
13    pub struct INMediaSearch;
14);
15
16extern_conformance!(
17    unsafe impl NSCoding for INMediaSearch {}
18);
19
20extern_conformance!(
21    unsafe impl NSCopying for INMediaSearch {}
22);
23
24unsafe impl CopyingHelper for INMediaSearch {
25    type Result = Self;
26}
27
28extern_conformance!(
29    unsafe impl NSObjectProtocol for INMediaSearch {}
30);
31
32extern_conformance!(
33    unsafe impl NSSecureCoding for INMediaSearch {}
34);
35
36impl INMediaSearch {
37    extern_methods!(
38        #[unsafe(method(init))]
39        #[unsafe(method_family = init)]
40        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
41
42        #[cfg(all(
43            feature = "INDateComponentsRange",
44            feature = "INMediaItemType",
45            feature = "INMediaReference",
46            feature = "INMediaSortOrder"
47        ))]
48        #[unsafe(method(initWithMediaType:sortOrder:mediaName:artistName:albumName:genreNames:moodNames:releaseDate:reference:mediaIdentifier:))]
49        #[unsafe(method_family = init)]
50        pub unsafe fn initWithMediaType_sortOrder_mediaName_artistName_albumName_genreNames_moodNames_releaseDate_reference_mediaIdentifier(
51            this: Allocated<Self>,
52            media_type: INMediaItemType,
53            sort_order: INMediaSortOrder,
54            media_name: Option<&NSString>,
55            artist_name: Option<&NSString>,
56            album_name: Option<&NSString>,
57            genre_names: Option<&NSArray<NSString>>,
58            mood_names: Option<&NSArray<NSString>>,
59            release_date: Option<&INDateComponentsRange>,
60            reference: INMediaReference,
61            media_identifier: Option<&NSString>,
62        ) -> Retained<Self>;
63
64        #[cfg(feature = "INMediaItemType")]
65        #[unsafe(method(mediaType))]
66        #[unsafe(method_family = none)]
67        pub unsafe fn mediaType(&self) -> INMediaItemType;
68
69        #[cfg(feature = "INMediaSortOrder")]
70        #[unsafe(method(sortOrder))]
71        #[unsafe(method_family = none)]
72        pub unsafe fn sortOrder(&self) -> INMediaSortOrder;
73
74        #[unsafe(method(mediaName))]
75        #[unsafe(method_family = none)]
76        pub unsafe fn mediaName(&self) -> Option<Retained<NSString>>;
77
78        #[unsafe(method(artistName))]
79        #[unsafe(method_family = none)]
80        pub unsafe fn artistName(&self) -> Option<Retained<NSString>>;
81
82        #[unsafe(method(albumName))]
83        #[unsafe(method_family = none)]
84        pub unsafe fn albumName(&self) -> Option<Retained<NSString>>;
85
86        #[unsafe(method(genreNames))]
87        #[unsafe(method_family = none)]
88        pub unsafe fn genreNames(&self) -> Option<Retained<NSArray<NSString>>>;
89
90        #[unsafe(method(moodNames))]
91        #[unsafe(method_family = none)]
92        pub unsafe fn moodNames(&self) -> Option<Retained<NSArray<NSString>>>;
93
94        #[cfg(feature = "INDateComponentsRange")]
95        #[unsafe(method(releaseDate))]
96        #[unsafe(method_family = none)]
97        pub unsafe fn releaseDate(&self) -> Option<Retained<INDateComponentsRange>>;
98
99        #[cfg(feature = "INMediaReference")]
100        #[unsafe(method(reference))]
101        #[unsafe(method_family = none)]
102        pub unsafe fn reference(&self) -> INMediaReference;
103
104        #[unsafe(method(mediaIdentifier))]
105        #[unsafe(method_family = none)]
106        pub unsafe fn mediaIdentifier(&self) -> Option<Retained<NSString>>;
107    );
108}
109
110/// Methods declared on superclass `NSObject`.
111impl INMediaSearch {
112    extern_methods!(
113        #[unsafe(method(new))]
114        #[unsafe(method_family = new)]
115        pub unsafe fn new() -> Retained<Self>;
116    );
117}