objc2_application_services/generated/HIServices/
TranslationServices.rs1use core::cell::UnsafeCell;
4use core::ffi::*;
5use core::marker::{PhantomData, PhantomPinned};
6use core::ptr::NonNull;
7#[cfg(feature = "objc2")]
8use objc2::__framework_prelude::*;
9use objc2_core_foundation::*;
10
11use crate::*;
12
13#[doc(alias = "TranslationRef")]
15#[repr(C)]
16pub struct Translation {
17 inner: [u8; 0],
18 _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
19}
20
21cf_type!(
22 unsafe impl Translation {}
23);
24#[cfg(feature = "objc2")]
25cf_objc2_type!(
26 unsafe impl RefEncode<"OpaqueTranslationRef"> for Translation {}
27);
28
29pub const badTranslationRefErr: c_int = -3031;
31
32pub type TranslationFlags = OptionBits;
34
35pub const kTranslationDataTranslation: c_uint = 1 << 0;
37pub const kTranslationFileTranslation: c_uint = 1 << 1;
39
40unsafe impl ConcreteType for Translation {
41 #[doc(alias = "TranslationGetTypeID")]
42 #[inline]
43 fn type_id() -> CFTypeID {
44 extern "C-unwind" {
45 fn TranslationGetTypeID() -> CFTypeID;
46 }
47 unsafe { TranslationGetTypeID() }
48 }
49}
50
51impl Translation {
52 #[doc(alias = "TranslationCreate")]
58 #[inline]
59 pub unsafe fn create(
60 in_source_type: Option<&CFString>,
61 in_destination_type: Option<&CFString>,
62 in_translation_flags: TranslationFlags,
63 out_translation: *mut *mut Translation,
64 ) -> OSStatus {
65 extern "C-unwind" {
66 fn TranslationCreate(
67 in_source_type: Option<&CFString>,
68 in_destination_type: Option<&CFString>,
69 in_translation_flags: TranslationFlags,
70 out_translation: *mut *mut Translation,
71 ) -> OSStatus;
72 }
73 unsafe {
74 TranslationCreate(
75 in_source_type,
76 in_destination_type,
77 in_translation_flags,
78 out_translation,
79 )
80 }
81 }
82
83 #[doc(alias = "TranslationCreateWithSourceArray")]
90 #[inline]
91 pub unsafe fn create_with_source_array(
92 in_source_types: Option<&CFArray>,
93 in_translation_flags: TranslationFlags,
94 out_destination_types: *mut *const CFArray,
95 out_translations: *mut *const CFDictionary,
96 ) -> OSStatus {
97 extern "C-unwind" {
98 fn TranslationCreateWithSourceArray(
99 in_source_types: Option<&CFArray>,
100 in_translation_flags: TranslationFlags,
101 out_destination_types: *mut *const CFArray,
102 out_translations: *mut *const CFDictionary,
103 ) -> OSStatus;
104 }
105 unsafe {
106 TranslationCreateWithSourceArray(
107 in_source_types,
108 in_translation_flags,
109 out_destination_types,
110 out_translations,
111 )
112 }
113 }
114
115 #[doc(alias = "TranslationPerformForData")]
120 #[inline]
121 pub unsafe fn perform_for_data(
122 &self,
123 in_source_data: Option<&CFData>,
124 out_destination_data: *mut *const CFData,
125 ) -> OSStatus {
126 extern "C-unwind" {
127 fn TranslationPerformForData(
128 in_translation: &Translation,
129 in_source_data: Option<&CFData>,
130 out_destination_data: *mut *const CFData,
131 ) -> OSStatus;
132 }
133 unsafe { TranslationPerformForData(self, in_source_data, out_destination_data) }
134 }
135
136 #[doc(alias = "TranslationPerformForURL")]
142 #[inline]
143 pub unsafe fn perform_for_url(
144 &self,
145 in_source_url: Option<&CFURL>,
146 in_destination_url: Option<&CFURL>,
147 out_translated_url: *mut *const CFURL,
148 ) -> OSStatus {
149 extern "C-unwind" {
150 fn TranslationPerformForURL(
151 in_translation: &Translation,
152 in_source_url: Option<&CFURL>,
153 in_destination_url: Option<&CFURL>,
154 out_translated_url: *mut *const CFURL,
155 ) -> OSStatus;
156 }
157 unsafe {
158 TranslationPerformForURL(self, in_source_url, in_destination_url, out_translated_url)
159 }
160 }
161
162 #[doc(alias = "TranslationCopySourceType")]
166 #[inline]
167 pub unsafe fn copy_source_type(&self, out_source_type: *mut *const CFString) -> OSStatus {
168 extern "C-unwind" {
169 fn TranslationCopySourceType(
170 in_translation: &Translation,
171 out_source_type: *mut *const CFString,
172 ) -> OSStatus;
173 }
174 unsafe { TranslationCopySourceType(self, out_source_type) }
175 }
176
177 #[doc(alias = "TranslationCopyDestinationType")]
181 #[inline]
182 pub unsafe fn copy_destination_type(
183 &self,
184 out_destination_type: *mut *const CFString,
185 ) -> OSStatus {
186 extern "C-unwind" {
187 fn TranslationCopyDestinationType(
188 in_translation: &Translation,
189 out_destination_type: *mut *const CFString,
190 ) -> OSStatus;
191 }
192 unsafe { TranslationCopyDestinationType(self, out_destination_type) }
193 }
194
195 #[doc(alias = "TranslationGetTranslationFlags")]
199 #[inline]
200 pub unsafe fn translation_flags(
201 &self,
202 out_translation_flags: *mut TranslationFlags,
203 ) -> OSStatus {
204 extern "C-unwind" {
205 fn TranslationGetTranslationFlags(
206 in_translation: &Translation,
207 out_translation_flags: *mut TranslationFlags,
208 ) -> OSStatus;
209 }
210 unsafe { TranslationGetTranslationFlags(self, out_translation_flags) }
211 }
212}
213
214extern "C-unwind" {
215 #[deprecated = "renamed to `Translation::create`"]
216 pub fn TranslationCreate(
217 in_source_type: Option<&CFString>,
218 in_destination_type: Option<&CFString>,
219 in_translation_flags: TranslationFlags,
220 out_translation: *mut *mut Translation,
221 ) -> OSStatus;
222}
223
224extern "C-unwind" {
225 #[deprecated = "renamed to `Translation::create_with_source_array`"]
226 pub fn TranslationCreateWithSourceArray(
227 in_source_types: Option<&CFArray>,
228 in_translation_flags: TranslationFlags,
229 out_destination_types: *mut *const CFArray,
230 out_translations: *mut *const CFDictionary,
231 ) -> OSStatus;
232}
233
234extern "C-unwind" {
235 #[deprecated = "renamed to `Translation::perform_for_data`"]
236 pub fn TranslationPerformForData(
237 in_translation: &Translation,
238 in_source_data: Option<&CFData>,
239 out_destination_data: *mut *const CFData,
240 ) -> OSStatus;
241}
242
243extern "C-unwind" {
244 #[deprecated = "renamed to `Translation::perform_for_url`"]
245 pub fn TranslationPerformForURL(
246 in_translation: &Translation,
247 in_source_url: Option<&CFURL>,
248 in_destination_url: Option<&CFURL>,
249 out_translated_url: *mut *const CFURL,
250 ) -> OSStatus;
251}
252
253extern "C-unwind" {
254 #[deprecated = "renamed to `Translation::copy_source_type`"]
255 pub fn TranslationCopySourceType(
256 in_translation: &Translation,
257 out_source_type: *mut *const CFString,
258 ) -> OSStatus;
259}
260
261extern "C-unwind" {
262 #[deprecated = "renamed to `Translation::copy_destination_type`"]
263 pub fn TranslationCopyDestinationType(
264 in_translation: &Translation,
265 out_destination_type: *mut *const CFString,
266 ) -> OSStatus;
267}
268
269extern "C-unwind" {
270 #[deprecated = "renamed to `Translation::translation_flags`"]
271 pub fn TranslationGetTranslationFlags(
272 in_translation: &Translation,
273 out_translation_flags: *mut TranslationFlags,
274 ) -> OSStatus;
275}