objc2_speech/generated/
SFSpeechRecognizer.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct SFSpeechRecognizerAuthorizationStatus(pub NSInteger);
15impl SFSpeechRecognizerAuthorizationStatus {
16 #[doc(alias = "SFSpeechRecognizerAuthorizationStatusNotDetermined")]
17 pub const NotDetermined: Self = Self(0);
18 #[doc(alias = "SFSpeechRecognizerAuthorizationStatusDenied")]
19 pub const Denied: Self = Self(1);
20 #[doc(alias = "SFSpeechRecognizerAuthorizationStatusRestricted")]
21 pub const Restricted: Self = Self(2);
22 #[doc(alias = "SFSpeechRecognizerAuthorizationStatusAuthorized")]
23 pub const Authorized: Self = Self(3);
24}
25
26unsafe impl Encode for SFSpeechRecognizerAuthorizationStatus {
27 const ENCODING: Encoding = NSInteger::ENCODING;
28}
29
30unsafe impl RefEncode for SFSpeechRecognizerAuthorizationStatus {
31 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
32}
33
34extern_class!(
35 #[unsafe(super(NSObject))]
37 #[derive(Debug, PartialEq, Eq, Hash)]
38 pub struct SFSpeechRecognizer;
39);
40
41unsafe impl NSObjectProtocol for SFSpeechRecognizer {}
42
43impl SFSpeechRecognizer {
44 extern_methods!(
45 #[unsafe(method(supportedLocales))]
46 #[unsafe(method_family = none)]
47 pub unsafe fn supportedLocales() -> Retained<NSSet<NSLocale>>;
48
49 #[unsafe(method(authorizationStatus))]
50 #[unsafe(method_family = none)]
51 pub unsafe fn authorizationStatus() -> SFSpeechRecognizerAuthorizationStatus;
52
53 #[cfg(feature = "block2")]
54 #[unsafe(method(requestAuthorization:))]
55 #[unsafe(method_family = none)]
56 pub unsafe fn requestAuthorization(
57 handler: &block2::Block<dyn Fn(SFSpeechRecognizerAuthorizationStatus)>,
58 );
59
60 #[unsafe(method(init))]
61 #[unsafe(method_family = init)]
62 pub unsafe fn init(this: Allocated<Self>) -> Option<Retained<Self>>;
63
64 #[unsafe(method(initWithLocale:))]
65 #[unsafe(method_family = init)]
66 pub unsafe fn initWithLocale(
67 this: Allocated<Self>,
68 locale: &NSLocale,
69 ) -> Option<Retained<Self>>;
70
71 #[unsafe(method(isAvailable))]
72 #[unsafe(method_family = none)]
73 pub unsafe fn isAvailable(&self) -> bool;
74
75 #[unsafe(method(locale))]
76 #[unsafe(method_family = none)]
77 pub unsafe fn locale(&self) -> Retained<NSLocale>;
78
79 #[unsafe(method(supportsOnDeviceRecognition))]
80 #[unsafe(method_family = none)]
81 pub unsafe fn supportsOnDeviceRecognition(&self) -> bool;
82
83 #[unsafe(method(setSupportsOnDeviceRecognition:))]
85 #[unsafe(method_family = none)]
86 pub unsafe fn setSupportsOnDeviceRecognition(&self, supports_on_device_recognition: bool);
87
88 #[unsafe(method(delegate))]
89 #[unsafe(method_family = none)]
90 pub unsafe fn delegate(
91 &self,
92 ) -> Option<Retained<ProtocolObject<dyn SFSpeechRecognizerDelegate>>>;
93
94 #[unsafe(method(setDelegate:))]
97 #[unsafe(method_family = none)]
98 pub unsafe fn setDelegate(
99 &self,
100 delegate: Option<&ProtocolObject<dyn SFSpeechRecognizerDelegate>>,
101 );
102
103 #[cfg(feature = "SFSpeechRecognitionTaskHint")]
104 #[unsafe(method(defaultTaskHint))]
105 #[unsafe(method_family = none)]
106 pub unsafe fn defaultTaskHint(&self) -> SFSpeechRecognitionTaskHint;
107
108 #[cfg(feature = "SFSpeechRecognitionTaskHint")]
109 #[unsafe(method(setDefaultTaskHint:))]
111 #[unsafe(method_family = none)]
112 pub unsafe fn setDefaultTaskHint(&self, default_task_hint: SFSpeechRecognitionTaskHint);
113
114 #[cfg(all(
115 feature = "SFSpeechRecognitionRequest",
116 feature = "SFSpeechRecognitionResult",
117 feature = "SFSpeechRecognitionTask",
118 feature = "block2"
119 ))]
120 #[unsafe(method(recognitionTaskWithRequest:resultHandler:))]
121 #[unsafe(method_family = none)]
122 pub unsafe fn recognitionTaskWithRequest_resultHandler(
123 &self,
124 request: &SFSpeechRecognitionRequest,
125 result_handler: &block2::Block<dyn Fn(*mut SFSpeechRecognitionResult, *mut NSError)>,
126 ) -> Retained<SFSpeechRecognitionTask>;
127
128 #[cfg(all(
129 feature = "SFSpeechRecognitionRequest",
130 feature = "SFSpeechRecognitionTask"
131 ))]
132 #[unsafe(method(recognitionTaskWithRequest:delegate:))]
133 #[unsafe(method_family = none)]
134 pub unsafe fn recognitionTaskWithRequest_delegate(
135 &self,
136 request: &SFSpeechRecognitionRequest,
137 delegate: &ProtocolObject<dyn SFSpeechRecognitionTaskDelegate>,
138 ) -> Retained<SFSpeechRecognitionTask>;
139
140 #[unsafe(method(queue))]
141 #[unsafe(method_family = none)]
142 pub unsafe fn queue(&self) -> Retained<NSOperationQueue>;
143
144 #[unsafe(method(setQueue:))]
146 #[unsafe(method_family = none)]
147 pub unsafe fn setQueue(&self, queue: &NSOperationQueue);
148 );
149}
150
151impl SFSpeechRecognizer {
153 extern_methods!(
154 #[unsafe(method(new))]
155 #[unsafe(method_family = new)]
156 pub unsafe fn new() -> Retained<Self>;
157 );
158}
159
160extern_protocol!(
161 pub unsafe trait SFSpeechRecognizerDelegate: NSObjectProtocol {
163 #[optional]
164 #[unsafe(method(speechRecognizer:availabilityDidChange:))]
165 #[unsafe(method_family = none)]
166 unsafe fn speechRecognizer_availabilityDidChange(
167 &self,
168 speech_recognizer: &SFSpeechRecognizer,
169 available: bool,
170 );
171 }
172);