objc2_core_services/generated/Metadata/MDItem.rs
1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use 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/// This is the type of a reference to MDItems.
14///
15/// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/mditem?language=objc)
16#[doc(alias = "MDItemRef")]
17#[repr(C)]
18pub struct MDItem {
19 inner: [u8; 0],
20 _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
21}
22
23cf_type!(
24 unsafe impl MDItem {}
25);
26#[cfg(feature = "objc2")]
27cf_objc2_type!(
28 unsafe impl RefEncode<"__MDItem"> for MDItem {}
29);
30
31unsafe impl ConcreteType for MDItem {
32 /// Returns the type identifier of all MDItem instances.
33 #[doc(alias = "MDItemGetTypeID")]
34 #[inline]
35 fn type_id() -> CFTypeID {
36 extern "C-unwind" {
37 fn MDItemGetTypeID() -> CFTypeID;
38 }
39 unsafe { MDItemGetTypeID() }
40 }
41}
42
43impl MDItem {
44 /// Returns an metadata item for the given path.
45 ///
46 /// Parameter `allocator`: The CFAllocator which should be used to allocate
47 /// memory for the query and its sub-storage. This
48 /// parameter may be NULL in which case the current default
49 /// CFAllocator is used.
50 ///
51 /// Parameter `path`: A path to the file for which to create the MDItem.
52 /// [[Currently, the path must exist. MDItemRefs may or
53 /// may not be uniqued. Use CFEqual() to compare them.]]
54 ///
55 /// Returns: An MDItemRef, or NULL on failure.
56 ///
57 /// # Safety
58 ///
59 /// - `allocator` might not allow `None`.
60 /// - `path` might not allow `None`.
61 #[doc(alias = "MDItemCreate")]
62 #[inline]
63 pub unsafe fn new(
64 allocator: Option<&CFAllocator>,
65 path: Option<&CFString>,
66 ) -> Option<CFRetained<MDItem>> {
67 extern "C-unwind" {
68 fn MDItemCreate(
69 allocator: Option<&CFAllocator>,
70 path: Option<&CFString>,
71 ) -> Option<NonNull<MDItem>>;
72 }
73 let ret = unsafe { MDItemCreate(allocator, path) };
74 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
75 }
76
77 /// Returns an metadata item for the given path.
78 ///
79 /// Parameter `allocator`: The CFAllocator which should be used to allocate
80 /// memory for the query and its sub-storage. This
81 /// parameter may be NULL in which case the current default
82 /// CFAllocator is used.
83 ///
84 /// Parameter `url`: A url to the file for which to create the MDItem.
85 /// [[Currently, the file must exist. MDItemRefs may or
86 /// may not be uniqued. Use CFEqual() to compare them.]]
87 ///
88 /// Returns: An MDItemRef, or NULL on failure.
89 ///
90 /// # Safety
91 ///
92 /// - `allocator` might not allow `None`.
93 /// - `url` might not allow `None`.
94 #[doc(alias = "MDItemCreateWithURL")]
95 #[inline]
96 pub unsafe fn with_url(
97 allocator: Option<&CFAllocator>,
98 url: Option<&CFURL>,
99 ) -> Option<CFRetained<MDItem>> {
100 extern "C-unwind" {
101 fn MDItemCreateWithURL(
102 allocator: Option<&CFAllocator>,
103 url: Option<&CFURL>,
104 ) -> Option<NonNull<MDItem>>;
105 }
106 let ret = unsafe { MDItemCreateWithURL(allocator, url) };
107 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
108 }
109}
110
111/// Returns metadata items for the given urls.
112///
113/// Parameter `allocator`: The CFAllocator which should be used to allocate
114/// memory for the array. This parameter may be NULL in which case the current default
115/// CFAllocator is used.
116///
117/// Parameter `urls`: A CFArray of urls to the file for which to create the MDItem.
118///
119/// Returns: A CFArrayRef of MDItemRefs, or NULL on failure. Missing items will have kCFNull entries in the result array.
120///
121/// # Safety
122///
123/// - `allocator` might not allow `None`.
124/// - `urls` generic must be of the correct type.
125/// - `urls` might not allow `None`.
126#[inline]
127pub unsafe extern "C-unwind" fn MDItemsCreateWithURLs(
128 allocator: Option<&CFAllocator>,
129 urls: Option<&CFArray>,
130) -> Option<CFRetained<CFArray>> {
131 extern "C-unwind" {
132 fn MDItemsCreateWithURLs(
133 allocator: Option<&CFAllocator>,
134 urls: Option<&CFArray>,
135 ) -> Option<NonNull<CFArray>>;
136 }
137 let ret = unsafe { MDItemsCreateWithURLs(allocator, urls) };
138 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
139}
140
141impl MDItem {
142 /// Returns the value of the given attribute for the item.
143 ///
144 /// Parameter `item`: The item to be interrogated.
145 ///
146 /// Parameter `name`: The name of the desired attribute.
147 ///
148 /// Returns: A CFTypeRef, or NULL on failure, or if the attribute
149 /// does not exist, of if the attribute is not readable.
150 ///
151 /// # Safety
152 ///
153 /// `name` might not allow `None`.
154 #[doc(alias = "MDItemCopyAttribute")]
155 #[inline]
156 pub unsafe fn attribute(&self, name: Option<&CFString>) -> Option<CFRetained<CFType>> {
157 extern "C-unwind" {
158 fn MDItemCopyAttribute(
159 item: &MDItem,
160 name: Option<&CFString>,
161 ) -> Option<NonNull<CFType>>;
162 }
163 let ret = unsafe { MDItemCopyAttribute(self, name) };
164 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
165 }
166
167 /// Returns the values of the given attributes for the item.
168 ///
169 /// Parameter `item`: The item to be interrogated.
170 ///
171 /// Parameter `names`: A CFArray of the names of the desired attributes.
172 ///
173 /// Returns: A CFDictionary where the keys are the attribute names,
174 /// and the values are the attribute values, or NULL on
175 /// failure. If an attribute does not exist, or is
176 /// unreadable, there will be no key-value pair for it
177 /// in the dictionary.
178 ///
179 /// # Safety
180 ///
181 /// - `names` generic must be of the correct type.
182 /// - `names` might not allow `None`.
183 #[doc(alias = "MDItemCopyAttributes")]
184 #[inline]
185 pub unsafe fn attributes(&self, names: Option<&CFArray>) -> Option<CFRetained<CFDictionary>> {
186 extern "C-unwind" {
187 fn MDItemCopyAttributes(
188 item: &MDItem,
189 names: Option<&CFArray>,
190 ) -> Option<NonNull<CFDictionary>>;
191 }
192 let ret = unsafe { MDItemCopyAttributes(self, names) };
193 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
194 }
195
196 /// Returns an array of the attribute names existing in the item.
197 ///
198 /// Parameter `item`: The item to be interrogated.
199 ///
200 /// Returns: A CFArray of CFString attribute names, or NULL on
201 /// failure.
202 #[doc(alias = "MDItemCopyAttributeNames")]
203 #[inline]
204 pub unsafe fn attribute_names(&self) -> Option<CFRetained<CFArray>> {
205 extern "C-unwind" {
206 fn MDItemCopyAttributeNames(item: &MDItem) -> Option<NonNull<CFArray>>;
207 }
208 let ret = unsafe { MDItemCopyAttributeNames(self) };
209 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
210 }
211}
212
213/// Returns metadata for the given items.
214///
215/// Parameter `items`: A CFArray of MDItemRefs to items for which to fetch data
216///
217/// Parameter `names`: A CFArray of attribute names for which to fetch data.
218/// The attribute names are CFStrings
219///
220/// Returns: A CFArrayRef, or NULL on failure. Each entry in the array is either kCFNull,
221/// if the item is not accessible, or a CFArray of attribute values.
222/// If an attribute is not available, there will be a kCFNull in its slot in the nested array.
223///
224/// # Safety
225///
226/// - `items` generic must be of the correct type.
227/// - `items` might not allow `None`.
228/// - `names` generic must be of the correct type.
229/// - `names` might not allow `None`.
230#[inline]
231pub unsafe extern "C-unwind" fn MDItemsCopyAttributes(
232 items: Option<&CFArray>,
233 names: Option<&CFArray>,
234) -> Option<CFRetained<CFArray>> {
235 extern "C-unwind" {
236 fn MDItemsCopyAttributes(
237 items: Option<&CFArray>,
238 names: Option<&CFArray>,
239 ) -> Option<NonNull<CFArray>>;
240 }
241 let ret = unsafe { MDItemsCopyAttributes(items, names) };
242 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
243}
244
245impl MDItem {
246 /// # Safety
247 ///
248 /// - `items` generic must be of the correct type.
249 /// - `items` might not allow `None`.
250 /// - `completion_handler` might not allow `None`.
251 #[doc(alias = "MDItemGetCacheFileDescriptors")]
252 #[cfg(feature = "block2")]
253 #[inline]
254 pub unsafe fn cache_file_descriptors(
255 items: Option<&CFArray>,
256 completion_handler: Option<&block2::DynBlock<dyn Fn(*const CFArray)>>,
257 ) {
258 extern "C-unwind" {
259 fn MDItemGetCacheFileDescriptors(
260 items: Option<&CFArray>,
261 completion_handler: Option<&block2::DynBlock<dyn Fn(*const CFArray)>>,
262 );
263 }
264 unsafe { MDItemGetCacheFileDescriptors(items, completion_handler) }
265 }
266}
267
268extern "C" {
269 /// This is the date that the last metadata attribute was changed.
270 ///
271 ///
272 /// UTI Type pedigree for a file for example a jpeg file will have the
273 /// following ItemContentType public.jpeg/public.image/public.data
274 /// the kMDItemContentType is set by the sniffer, any changes to this
275 /// value will get over written by the sniffer when the contents of
276 /// this MDItemRef changes. Type is a CFStringRef
277 ///
278 ///
279 /// Represents keywords associated with this particular
280 /// MDItemRef. Example Keywords might be Birthday,Important etc. Type
281 /// is a CFArray of CFStrings
282 ///
283 ///
284 /// The title of this particular MDItemRef. Title of the document, or
285 /// it could be the title of this mp3 or a subject of a mail
286 /// message. Type is a CFString
287 ///
288 ///
289 /// The list of author/authors that has worked on this file. There
290 /// could be 0 or more authors of a particular file. The order of the
291 /// authors in the array is preserved, but is not intended to represent
292 /// the main author or relative importance of the authors. Type is a
293 /// CFArray of CFStrings.
294 ///
295 ///
296 /// The list of editor/editors that has worked on this file. There
297 /// could be 0 or more editors of a particular file. The order of the
298 /// editors in the array is preserved, but is not intended to represent
299 /// the main editor or relative importance of the editors. Type is a
300 /// CFArray of CFStrings.
301 ///
302 ///
303 /// The list of people who are visible in an image or movie or
304 /// written about in a document. Type is CFArray of CFStrings.
305 ///
306 ///
307 /// The list of projects etc that this file is part of. For example if
308 /// you were working on a movie, all of the movie files could be marked
309 /// as belonging to the project "My movie" then a query could be done
310 /// kMDItemProjects = "My movie" and all of the related files would
311 /// show up. Type is a CFArray of CFStrings
312 ///
313 ///
314 /// This is a comment related to a file, and can be any random
315 /// string. Type is a CFString
316 ///
317 ///
318 /// This is the copyright of the content. Type is a CFString
319 ///
320 ///
321 /// This is the date that the file was last downloaded / received.
322 ///
323 ///
324 /// This attribute indicates where the item was obtained from.
325 /// Examples:
326 /// - downloaded file may refer to the site they were downloaded from,
327 /// the refering URL, etc
328 /// - files reveived by email may indicate who sent the file, the
329 /// message subject, etc
330 /// Type is a CFArray of CFStrings
331 ///
332 ///
333 /// This is the date that the file was last used, this field is updated
334 /// by LaunchServices everytime a file is opend by double clicking or
335 /// by asking LaunchServices to open a file. Type is a CFDate
336 ///
337 ///
338 /// This is the date that the contents of the file were created,
339 /// has an application specific semantic.
340 /// Type is a CFDate.
341 ///
342 ///
343 /// This is the date that the contents of the file were last
344 /// modified, has an application specific semantic. For example an
345 /// application can use this field to mark when the file was last
346 /// modified, this date is not related to the file system modification
347 /// date, but can be independent of that. This allows tracking of the
348 /// last time the content was modified irrespective of the last time the
349 /// file was modified. Type is a CFDate.
350 ///
351 ///
352 /// This is the date that the file was moved into the current location.
353 /// Not all files will have this attribute. Not all file systems support
354 /// this attribute.
355 ///
356 ///
357 /// This is the duration, in seconds, of the content of the file (if
358 /// appropriate). A value of 10.5 represents media whose content is
359 /// 10 and 1/2 seconds long. Type is a CFNumber.
360 ///
361 ///
362 /// A list of contacts that are somehow associated with this document,
363 /// beyond what is captured as Author.
364 ///
365 ///
366 /// A version number for this item. Type is a CFString
367 ///
368 ///
369 /// The height of the document in pixels (ie Image height or Video frame height)
370 ///
371 ///
372 /// The width of the document in pixels (ie Image width or Video frame width)
373 ///
374 ///
375 /// The total number of pixels in the document. Type is a CFNumber.
376 ///
377 ///
378 /// What color space model is this document following
379 /// (For example, are examples "RGB", "CMYK", "YUV", "YCbCr")
380 ///
381 ///
382 /// Number of bits per sample
383 /// For example bit depth of an image (8-bit, 16-bit etc..) or bit
384 /// depth per audio sample of uncompressed audio data (8, 16, 24, 32,
385 /// 64, etc..)
386 ///
387 ///
388 /// Indicates if the flash was used to take the picture. 0 means flash did not fire
389 ///
390 ///
391 /// The actual focal length of the lens in mm.
392 ///
393 ///
394 /// Device make that was used to acquire this document
395 ///
396 ///
397 /// Device model that was used to acquire this document
398 ///
399 ///
400 /// The ISO Speed the camera was set to when the image was
401 /// taken. Examples are 100, 200, 400, etc.
402 ///
403 ///
404 /// The orientation of the data. Values are 0 is "Landscape" or 1 is "Portrait"
405 ///
406 ///
407 /// The names of the various layers in the file
408 ///
409 ///
410 /// The white balance setting of the camera when the image was
411 /// acquired. 0 is auto white balance and 1 is manual
412 ///
413 ///
414 /// The size of the lens aperture as a log-scale APEX value
415 /// when the image was acquired.
416 ///
417 ///
418 /// Name of the color profile used for the image
419 ///
420 ///
421 /// Resolution width of this image in DPI
422 ///
423 ///
424 /// Resolution height of this image in DPI
425 ///
426 ///
427 /// Mode that was used for the exposure. 0 is auto exposure, 1 is
428 /// manual, and 2 is auto bracket.
429 ///
430 ///
431 /// Time that the lens was open during exposure
432 ///
433 ///
434 /// Lens model that was used to acquire this document
435 ///
436 ///
437 /// The verion of the EXIF header that was used to generate the metadata
438 ///
439 ///
440 /// The version of GPSInfoIFD header that was used to generate the metadata
441 ///
442 ///
443 /// The codecs used to encode/decode the media
444 ///
445 ///
446 /// The media extensions used to decode the media
447 ///
448 ///
449 /// Media types present in the content
450 ///
451 ///
452 /// Whether the content is prepared for streaming
453 ///
454 ///
455 /// The total byte rate (audio
456 /// &
457 /// video combined) of the media
458 ///
459 ///
460 /// The video byte rate
461 ///
462 ///
463 /// The audio byte rate
464 ///
465 ///
466 /// Delivery type Fast start or RTSP
467 ///
468 ///
469 /// The title for a collection of media. This is analagous to a record album,
470 /// or photo album whichs are collections of audio or images. Type is a CFString.
471 ///
472 ///
473 /// Boolean indicating if this image file has an alpha channel. Type is
474 /// a CFBoolean.
475 ///
476 ///
477 /// Indicates if the flash was used to take the picture. 0 means no
478 /// red-eye reduction mode or unknown. 1 means red-eye reduction
479 /// supported.
480 ///
481 ///
482 /// The metering mode (Unknown, Average, CenterWeightedAverage, Spot,
483 /// MultiSpot, Pattern, Partial)
484 ///
485 ///
486 /// The smallest F number of the lens. The unit is the APEX
487 /// value. Ordinarily it is given in the range of 00.00 to 99.99.
488 ///
489 ///
490 /// The focal length of the lens divided by the diameter of the aperture
491 /// when the image was acquired.
492 ///
493 ///
494 /// The class of the program used by the camera to set exposure when
495 /// the picture is taken (Manual, Normal, Aperture priority, ...)
496 ///
497 ///
498 /// The time of the exposure.
499 ///
500 ///
501 /// A publishable entry providing a synopsis of the contents of the
502 /// objectdata.
503 ///
504 ///
505 /// Other editorial instructions concerning the use of the objectdata,
506 /// such as embargoes and warnings.
507 ///
508 ///
509 /// Identifies city of objectdata origin according to guidelines
510 /// established by the provider.
511 ///
512 ///
513 /// Identifies Province/State of origin according to guidelines
514 /// established by the provider.
515 ///
516 ///
517 /// Provides full, publishable, name of the country/primary location
518 /// where the intellectual property of the objectdata was created,
519 /// according to guidelines of the provider.
520 ///
521 ///
522 /// The version of GPSInfoIFD in EXIF used to generate the metadata.
523 ///
524 ///
525 /// The altitude of the item in meters above sea level, expressed
526 /// using the WGS84 datum. Negative values lie below sea level.
527 ///
528 ///
529 /// The latitude of the item in degrees north of the equator, expressed
530 /// using the WGS84 datum. Negative values lie south of the equator.
531 ///
532 ///
533 /// The longitude of the item in degrees east of the prime meridian,
534 /// expressed using the WGS84 datum. Negative values lie west of the prime meridian.
535 ///
536 ///
537 /// The timestamp on the item. This generally is used to indicate the time at
538 /// which the event captured by the item took place.
539 ///
540 ///
541 /// The speed of the item, in kilometers per hour.
542 ///
543 ///
544 /// The direction of travel of the item, in degrees from true north.
545 ///
546 ///
547 /// The direction of the item's image, in degrees from true north.
548 ///
549 ///
550 /// The name of the location or point of interest associated with the item.
551 /// The name may be user provided.
552 ///
553 /// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemattributechangedate?language=objc)
554 pub static kMDItemAttributeChangeDate: Option<&'static CFString>;
555}
556
557extern "C" {
558 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcontenttype?language=objc)
559 pub static kMDItemContentType: Option<&'static CFString>;
560}
561
562extern "C" {
563 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcontenttypetree?language=objc)
564 pub static kMDItemContentTypeTree: Option<&'static CFString>;
565}
566
567extern "C" {
568 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemkeywords?language=objc)
569 pub static kMDItemKeywords: Option<&'static CFString>;
570}
571
572extern "C" {
573 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemtitle?language=objc)
574 pub static kMDItemTitle: Option<&'static CFString>;
575}
576
577extern "C" {
578 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemauthors?language=objc)
579 pub static kMDItemAuthors: Option<&'static CFString>;
580}
581
582extern "C" {
583 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemeditors?language=objc)
584 pub static kMDItemEditors: Option<&'static CFString>;
585}
586
587extern "C" {
588 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemparticipants?language=objc)
589 pub static kMDItemParticipants: Option<&'static CFString>;
590}
591
592extern "C" {
593 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemprojects?language=objc)
594 pub static kMDItemProjects: Option<&'static CFString>;
595}
596
597extern "C" {
598 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemdownloadeddate?language=objc)
599 pub static kMDItemDownloadedDate: Option<&'static CFString>;
600}
601
602extern "C" {
603 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemwherefroms?language=objc)
604 pub static kMDItemWhereFroms: Option<&'static CFString>;
605}
606
607extern "C" {
608 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcomment?language=objc)
609 pub static kMDItemComment: Option<&'static CFString>;
610}
611
612extern "C" {
613 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcopyright?language=objc)
614 pub static kMDItemCopyright: Option<&'static CFString>;
615}
616
617extern "C" {
618 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlastuseddate?language=objc)
619 pub static kMDItemLastUsedDate: Option<&'static CFString>;
620}
621
622extern "C" {
623 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcontentcreationdate?language=objc)
624 pub static kMDItemContentCreationDate: Option<&'static CFString>;
625}
626
627extern "C" {
628 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcontentmodificationdate?language=objc)
629 pub static kMDItemContentModificationDate: Option<&'static CFString>;
630}
631
632extern "C" {
633 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemdateadded?language=objc)
634 pub static kMDItemDateAdded: Option<&'static CFString>;
635}
636
637extern "C" {
638 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemdurationseconds?language=objc)
639 pub static kMDItemDurationSeconds: Option<&'static CFString>;
640}
641
642extern "C" {
643 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcontactkeywords?language=objc)
644 pub static kMDItemContactKeywords: Option<&'static CFString>;
645}
646
647extern "C" {
648 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemversion?language=objc)
649 pub static kMDItemVersion: Option<&'static CFString>;
650}
651
652extern "C" {
653 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditempixelheight?language=objc)
654 pub static kMDItemPixelHeight: Option<&'static CFString>;
655}
656
657extern "C" {
658 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemxmpcredit?language=objc)
659 pub static kMDItemXMPCredit: Option<&'static CFString>;
660}
661
662extern "C" {
663 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemxmpdigitalsourcetype?language=objc)
664 pub static kMDItemXMPDigitalSourceType: Option<&'static CFString>;
665}
666
667extern "C" {
668 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditempixelwidth?language=objc)
669 pub static kMDItemPixelWidth: Option<&'static CFString>;
670}
671
672extern "C" {
673 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditempixelcount?language=objc)
674 pub static kMDItemPixelCount: Option<&'static CFString>;
675}
676
677extern "C" {
678 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcolorspace?language=objc)
679 pub static kMDItemColorSpace: Option<&'static CFString>;
680}
681
682extern "C" {
683 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditembitspersample?language=objc)
684 pub static kMDItemBitsPerSample: Option<&'static CFString>;
685}
686
687extern "C" {
688 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemflashonoff?language=objc)
689 pub static kMDItemFlashOnOff: Option<&'static CFString>;
690}
691
692extern "C" {
693 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfocallength?language=objc)
694 pub static kMDItemFocalLength: Option<&'static CFString>;
695}
696
697extern "C" {
698 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemacquisitionmake?language=objc)
699 pub static kMDItemAcquisitionMake: Option<&'static CFString>;
700}
701
702extern "C" {
703 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemacquisitionmodel?language=objc)
704 pub static kMDItemAcquisitionModel: Option<&'static CFString>;
705}
706
707extern "C" {
708 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemisospeed?language=objc)
709 pub static kMDItemISOSpeed: Option<&'static CFString>;
710}
711
712extern "C" {
713 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemorientation?language=objc)
714 pub static kMDItemOrientation: Option<&'static CFString>;
715}
716
717extern "C" {
718 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlayernames?language=objc)
719 pub static kMDItemLayerNames: Option<&'static CFString>;
720}
721
722extern "C" {
723 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemwhitebalance?language=objc)
724 pub static kMDItemWhiteBalance: Option<&'static CFString>;
725}
726
727extern "C" {
728 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaperture?language=objc)
729 pub static kMDItemAperture: Option<&'static CFString>;
730}
731
732extern "C" {
733 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemprofilename?language=objc)
734 pub static kMDItemProfileName: Option<&'static CFString>;
735}
736
737extern "C" {
738 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemresolutionwidthdpi?language=objc)
739 pub static kMDItemResolutionWidthDPI: Option<&'static CFString>;
740}
741
742extern "C" {
743 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemresolutionheightdpi?language=objc)
744 pub static kMDItemResolutionHeightDPI: Option<&'static CFString>;
745}
746
747extern "C" {
748 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexposuremode?language=objc)
749 pub static kMDItemExposureMode: Option<&'static CFString>;
750}
751
752extern "C" {
753 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexposuretimeseconds?language=objc)
754 pub static kMDItemExposureTimeSeconds: Option<&'static CFString>;
755}
756
757extern "C" {
758 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexifversion?language=objc)
759 pub static kMDItemEXIFVersion: Option<&'static CFString>;
760}
761
762extern "C" {
763 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcameraowner?language=objc)
764 pub static kMDItemCameraOwner: Option<&'static CFString>;
765}
766
767extern "C" {
768 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfocallength35mm?language=objc)
769 pub static kMDItemFocalLength35mm: Option<&'static CFString>;
770}
771
772extern "C" {
773 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlensmodel?language=objc)
774 pub static kMDItemLensModel: Option<&'static CFString>;
775}
776
777extern "C" {
778 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexifgpsversion?language=objc)
779 pub static kMDItemEXIFGPSVersion: Option<&'static CFString>;
780}
781
782extern "C" {
783 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaltitude?language=objc)
784 pub static kMDItemAltitude: Option<&'static CFString>;
785}
786
787extern "C" {
788 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlatitude?language=objc)
789 pub static kMDItemLatitude: Option<&'static CFString>;
790}
791
792extern "C" {
793 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlongitude?language=objc)
794 pub static kMDItemLongitude: Option<&'static CFString>;
795}
796
797extern "C" {
798 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemspeed?language=objc)
799 pub static kMDItemSpeed: Option<&'static CFString>;
800}
801
802extern "C" {
803 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemtimestamp?language=objc)
804 pub static kMDItemTimestamp: Option<&'static CFString>;
805}
806
807extern "C" {
808 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpstrack?language=objc)
809 pub static kMDItemGPSTrack: Option<&'static CFString>;
810}
811
812extern "C" {
813 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemimagedirection?language=objc)
814 pub static kMDItemImageDirection: Option<&'static CFString>;
815}
816
817extern "C" {
818 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemnamedlocation?language=objc)
819 pub static kMDItemNamedLocation: Option<&'static CFString>;
820}
821
822extern "C" {
823 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsstatus?language=objc)
824 pub static kMDItemGPSStatus: Option<&'static CFString>;
825}
826
827extern "C" {
828 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsmeasuremode?language=objc)
829 pub static kMDItemGPSMeasureMode: Option<&'static CFString>;
830}
831
832extern "C" {
833 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsdop?language=objc)
834 pub static kMDItemGPSDOP: Option<&'static CFString>;
835}
836
837extern "C" {
838 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsmapdatum?language=objc)
839 pub static kMDItemGPSMapDatum: Option<&'static CFString>;
840}
841
842extern "C" {
843 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsdestlatitude?language=objc)
844 pub static kMDItemGPSDestLatitude: Option<&'static CFString>;
845}
846
847extern "C" {
848 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsdestlongitude?language=objc)
849 pub static kMDItemGPSDestLongitude: Option<&'static CFString>;
850}
851
852extern "C" {
853 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsdestbearing?language=objc)
854 pub static kMDItemGPSDestBearing: Option<&'static CFString>;
855}
856
857extern "C" {
858 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsdestdistance?language=objc)
859 pub static kMDItemGPSDestDistance: Option<&'static CFString>;
860}
861
862extern "C" {
863 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsprocessingmethod?language=objc)
864 pub static kMDItemGPSProcessingMethod: Option<&'static CFString>;
865}
866
867extern "C" {
868 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsareainformation?language=objc)
869 pub static kMDItemGPSAreaInformation: Option<&'static CFString>;
870}
871
872extern "C" {
873 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsdatestamp?language=objc)
874 pub static kMDItemGPSDateStamp: Option<&'static CFString>;
875}
876
877extern "C" {
878 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgpsdifferental?language=objc)
879 pub static kMDItemGPSDifferental: Option<&'static CFString>;
880}
881
882extern "C" {
883 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemmediaextensions?language=objc)
884 pub static kMDItemMediaExtensions: Option<&'static CFString>;
885}
886
887extern "C" {
888 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcodecs?language=objc)
889 pub static kMDItemCodecs: Option<&'static CFString>;
890}
891
892extern "C" {
893 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemmediatypes?language=objc)
894 pub static kMDItemMediaTypes: Option<&'static CFString>;
895}
896
897extern "C" {
898 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemstreamable?language=objc)
899 pub static kMDItemStreamable: Option<&'static CFString>;
900}
901
902extern "C" {
903 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemtotalbitrate?language=objc)
904 pub static kMDItemTotalBitRate: Option<&'static CFString>;
905}
906
907extern "C" {
908 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemvideobitrate?language=objc)
909 pub static kMDItemVideoBitRate: Option<&'static CFString>;
910}
911
912extern "C" {
913 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaudiobitrate?language=objc)
914 pub static kMDItemAudioBitRate: Option<&'static CFString>;
915}
916
917extern "C" {
918 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemdeliverytype?language=objc)
919 pub static kMDItemDeliveryType: Option<&'static CFString>;
920}
921
922extern "C" {
923 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemalbum?language=objc)
924 pub static kMDItemAlbum: Option<&'static CFString>;
925}
926
927extern "C" {
928 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemhasalphachannel?language=objc)
929 pub static kMDItemHasAlphaChannel: Option<&'static CFString>;
930}
931
932extern "C" {
933 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemredeyeonoff?language=objc)
934 pub static kMDItemRedEyeOnOff: Option<&'static CFString>;
935}
936
937extern "C" {
938 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemmeteringmode?language=objc)
939 pub static kMDItemMeteringMode: Option<&'static CFString>;
940}
941
942extern "C" {
943 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemmaxaperture?language=objc)
944 pub static kMDItemMaxAperture: Option<&'static CFString>;
945}
946
947extern "C" {
948 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfnumber?language=objc)
949 pub static kMDItemFNumber: Option<&'static CFString>;
950}
951
952extern "C" {
953 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexposureprogram?language=objc)
954 pub static kMDItemExposureProgram: Option<&'static CFString>;
955}
956
957extern "C" {
958 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexposuretimestring?language=objc)
959 pub static kMDItemExposureTimeString: Option<&'static CFString>;
960}
961
962extern "C" {
963 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemheadline?language=objc)
964 pub static kMDItemHeadline: Option<&'static CFString>;
965}
966
967extern "C" {
968 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditeminstructions?language=objc)
969 pub static kMDItemInstructions: Option<&'static CFString>;
970}
971
972extern "C" {
973 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcity?language=objc)
974 pub static kMDItemCity: Option<&'static CFString>;
975}
976
977extern "C" {
978 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemstateorprovince?language=objc)
979 pub static kMDItemStateOrProvince: Option<&'static CFString>;
980}
981
982extern "C" {
983 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcountry?language=objc)
984 pub static kMDItemCountry: Option<&'static CFString>;
985}
986
987extern "C" {
988 /// Contains the HTML content of the document. Type is a CFString.
989 /// This field is only used by Spotlight importers to return HTML contents of a file. Except in special cases,
990 /// this field is not a replacement for kMDItemTextContent which should still be returned.
991 /// This field does not particpate in Spotlight queries.
992 ///
993 ///
994 /// Contains the text content of the document. Type is a CFString.
995 ///
996 ///
997 /// This is the localized version of the LaunchServices call
998 /// LSCopyDisplayNameForURL()/LSCopyDisplayNameForRef().
999 ///
1000 ///
1001 /// This is the file name of the MDItemRef. Type is a CFString
1002 ///
1003 ///
1004 /// This is the complete path to the MDItemRef. Type is a CFString.
1005 ///
1006 ///
1007 /// The total logical size of the file (data and resources) on disk in bytes. Type is a CFNumber.
1008 ///
1009 ///
1010 /// This is the date that the file was created. Type is a CFDate.
1011 ///
1012 ///
1013 /// This is the date the the file content last changed. This is a CFDate.
1014 ///
1015 ///
1016 /// User-id of owner of the file. Type is a CFNumber.
1017 ///
1018 ///
1019 /// Group-id of owner of the file. Type is a CFNumber.
1020 ///
1021 ///
1022 /// Boolean indicating if this MDItem references a file that still
1023 /// exists. The file that the MDItem references might have been
1024 /// deleted. Type is a CFBoolean.
1025 ///
1026 ///
1027 /// Boolean indicating if this file is readable. Type is a CFBoolean.
1028 ///
1029 ///
1030 /// Boolean indicating if this file is writable. Type is a CFBoolean.
1031 ///
1032 ///
1033 /// Number of files in directory. Type is a CFNumber.
1034 ///
1035 ///
1036 /// Boolean indicating if this file has a custom icon. Type is a CFBoolean.
1037 ///
1038 ///
1039 /// Boolean indicating if this file has its extension hidden. Type is a CFBoolean.
1040 ///
1041 ///
1042 /// Boolean indicating if this file is stationery. Type is a CFBoolean.
1043 ///
1044 ///
1045 /// Boolean indicating if this file is visible. Type is a CFBoolean.
1046 ///
1047 ///
1048 /// Number indicating which finder label is in use (0-7). Type is a CFNumber.
1049 ///
1050 /// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsname?language=objc)
1051 pub static kMDItemFSName: Option<&'static CFString>;
1052}
1053
1054extern "C" {
1055 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemdisplayname?language=objc)
1056 pub static kMDItemDisplayName: Option<&'static CFString>;
1057}
1058
1059extern "C" {
1060 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditempath?language=objc)
1061 pub static kMDItemPath: Option<&'static CFString>;
1062}
1063
1064extern "C" {
1065 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfssize?language=objc)
1066 pub static kMDItemFSSize: Option<&'static CFString>;
1067}
1068
1069extern "C" {
1070 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfscreationdate?language=objc)
1071 pub static kMDItemFSCreationDate: Option<&'static CFString>;
1072}
1073
1074extern "C" {
1075 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfscontentchangedate?language=objc)
1076 pub static kMDItemFSContentChangeDate: Option<&'static CFString>;
1077}
1078
1079extern "C" {
1080 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsowneruserid?language=objc)
1081 pub static kMDItemFSOwnerUserID: Option<&'static CFString>;
1082}
1083
1084extern "C" {
1085 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsownergroupid?language=objc)
1086 pub static kMDItemFSOwnerGroupID: Option<&'static CFString>;
1087}
1088
1089extern "C" {
1090 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsexists?language=objc)
1091 #[deprecated = "No longer supported"]
1092 pub static kMDItemFSExists: Option<&'static CFString>;
1093}
1094
1095extern "C" {
1096 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsisreadable?language=objc)
1097 #[deprecated = "No longer supported"]
1098 pub static kMDItemFSIsReadable: Option<&'static CFString>;
1099}
1100
1101extern "C" {
1102 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsiswriteable?language=objc)
1103 #[deprecated = "No longer supported"]
1104 pub static kMDItemFSIsWriteable: Option<&'static CFString>;
1105}
1106
1107extern "C" {
1108 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfshascustomicon?language=objc)
1109 pub static kMDItemFSHasCustomIcon: Option<&'static CFString>;
1110}
1111
1112extern "C" {
1113 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsisextensionhidden?language=objc)
1114 pub static kMDItemFSIsExtensionHidden: Option<&'static CFString>;
1115}
1116
1117extern "C" {
1118 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsisstationery?language=objc)
1119 pub static kMDItemFSIsStationery: Option<&'static CFString>;
1120}
1121
1122extern "C" {
1123 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsinvisible?language=objc)
1124 pub static kMDItemFSInvisible: Option<&'static CFString>;
1125}
1126
1127extern "C" {
1128 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfslabel?language=objc)
1129 pub static kMDItemFSLabel: Option<&'static CFString>;
1130}
1131
1132extern "C" {
1133 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfsnodecount?language=objc)
1134 pub static kMDItemFSNodeCount: Option<&'static CFString>;
1135}
1136
1137extern "C" {
1138 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemhtmlcontent?language=objc)
1139 pub static kMDItemHTMLContent: Option<&'static CFString>;
1140}
1141
1142extern "C" {
1143 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemtextcontent?language=objc)
1144 pub static kMDItemTextContent: Option<&'static CFString>;
1145}
1146
1147extern "C" {
1148 /// The sample rate of the audio data contained in the file. The sample rate is a
1149 /// float value representing hz (audio_frames/second). For example: 44100.0, 22254.54.
1150 /// Type is a CFNumber (float).
1151 ///
1152 ///
1153 /// The number of channels in the audio data contained in the file. This item only represents
1154 /// the number of discreet channels of audio data found in the file. It does not indicate
1155 /// any configuration of the data in regards to a user's speaker setup.
1156 /// Type is a CFNumber (integer).
1157 ///
1158 ///
1159 /// The tempo of the music contained in the audio file in Beats Per Minute.
1160 /// Type is a CFNumber (float).
1161 ///
1162 ///
1163 /// The musical key of the song/composition contained in an audio file.
1164 /// For example: C, Dm, F#m, Bb. Type is a CFString.
1165 ///
1166 ///
1167 /// The time signature of the musical composition contained in the audio/MIDI file.
1168 /// For example: "4/4", "7/8". Type is a CFString.
1169 ///
1170 ///
1171 /// The name of the application that encoded the data contained in the audio file.
1172 /// Type is a CFString.
1173 ///
1174 ///
1175 /// The composer of the song/composition contained in the audio file.
1176 /// Type is a CFString.
1177 ///
1178 ///
1179 /// The lyricist/text writer for song/composition contained in the audio file.
1180 /// Type is a CFString.
1181 ///
1182 ///
1183 /// The track number of a song/composition when it is part of an album (kMDItemAlbum).
1184 /// Type is a CFNumber (integer).
1185 ///
1186 ///
1187 /// The recording date of the song/composition. This information differs from
1188 /// the kMDItemContentCreationDate attribute as it indicates the date that the
1189 /// 'art' was created, in contrast to ContentCreationDate which for example, could indicate
1190 /// the creation date of an edited or 'mastered' version of the original art.
1191 /// Type is a CFDate.
1192 ///
1193 ///
1194 /// The musical genre of the song/composition contained in the audio file.
1195 /// For example: Jazz, Pop, Rock, Classical. Type is a CFString.
1196 ///
1197 ///
1198 /// This attribute indicates whether the MIDI sequence contained in the file
1199 /// is setup for use with a General MIDI device. Type is a CFBoolean.
1200 ///
1201 ///
1202 /// This attribute indicates what year the item was recorded on.
1203 /// Type is a CFNumber
1204 ///
1205 /// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaudiosamplerate?language=objc)
1206 pub static kMDItemAudioSampleRate: Option<&'static CFString>;
1207}
1208
1209extern "C" {
1210 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaudiochannelcount?language=objc)
1211 pub static kMDItemAudioChannelCount: Option<&'static CFString>;
1212}
1213
1214extern "C" {
1215 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemtempo?language=objc)
1216 pub static kMDItemTempo: Option<&'static CFString>;
1217}
1218
1219extern "C" {
1220 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemkeysignature?language=objc)
1221 pub static kMDItemKeySignature: Option<&'static CFString>;
1222}
1223
1224extern "C" {
1225 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemtimesignature?language=objc)
1226 pub static kMDItemTimeSignature: Option<&'static CFString>;
1227}
1228
1229extern "C" {
1230 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaudioencodingapplication?language=objc)
1231 pub static kMDItemAudioEncodingApplication: Option<&'static CFString>;
1232}
1233
1234extern "C" {
1235 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcomposer?language=objc)
1236 pub static kMDItemComposer: Option<&'static CFString>;
1237}
1238
1239extern "C" {
1240 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlyricist?language=objc)
1241 pub static kMDItemLyricist: Option<&'static CFString>;
1242}
1243
1244extern "C" {
1245 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaudiotracknumber?language=objc)
1246 pub static kMDItemAudioTrackNumber: Option<&'static CFString>;
1247}
1248
1249extern "C" {
1250 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemrecordingdate?language=objc)
1251 pub static kMDItemRecordingDate: Option<&'static CFString>;
1252}
1253
1254extern "C" {
1255 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemmusicalgenre?language=objc)
1256 pub static kMDItemMusicalGenre: Option<&'static CFString>;
1257}
1258
1259extern "C" {
1260 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemisgeneralmidisequence?language=objc)
1261 pub static kMDItemIsGeneralMIDISequence: Option<&'static CFString>;
1262}
1263
1264extern "C" {
1265 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemrecordingyear?language=objc)
1266 pub static kMDItemRecordingYear: Option<&'static CFString>;
1267}
1268
1269extern "C" {
1270 /// Used to indicate company/Organization that created the document.
1271 /// Type is a CFArray of CFStrings.
1272 ///
1273 ///
1274 /// Used to designate the languages of the intellectual content of the
1275 /// resource. Recommended best practice for the values of the Language
1276 /// element is defined by RFC 3066.
1277 /// Type is a CFArray of CFStrings.
1278 ///
1279 ///
1280 /// Used to provide a link to information about rights held in and
1281 /// over the resource. Typically a Rights element will contain a
1282 /// rights management statement for the resource, or reference a
1283 /// service providing such information. Rights information often
1284 /// encompasses Intellectual Property Rights (IPR), Copyright, and
1285 /// various Property Rights. If the rights element is absent, no
1286 /// assumptions can be made about the status of these and other rights
1287 /// with respect to the resource. Type is a CFString type.
1288 ///
1289 ///
1290 /// Used to designate the entity responsible for making the resource
1291 /// available. Examples of a Publisher include a person, an
1292 /// organization, or a service. Typically, the name of a Publisher
1293 /// should be used to indicate the entity. Type is a CFArray of CFStrings.
1294 ///
1295 ///
1296 /// Used to designate the entity responsible for making contributions
1297 /// to the content of the resource. Examples of a Contributor include
1298 /// a person, an organization or a service. Typically, the name of a
1299 /// Contributor should be used to indicate the entity. Type is a
1300 /// CFArray of CFStrings.
1301 ///
1302 ///
1303 /// Used to designate the extent or scope of the content of the
1304 /// resource. Coverage will typically include spatial location (a
1305 /// place name or geographic co-ordinates), temporal period (a period
1306 /// label, date, or date range) or jurisdiction (such as a named
1307 /// administrative entity). Recommended best practice is to select a
1308 /// value from a controlled vocabulary, and that, where appropriate,
1309 /// named places or time periods be used in preference to numeric
1310 /// identifiers such as sets of co-ordinates or date ranges. Type is a
1311 /// CFString.
1312 ///
1313 ///
1314 /// Subject of the this item. Type is a CFString.
1315 ///
1316 ///
1317 /// Theme of the this item. Type is a CFString.
1318 ///
1319 ///
1320 /// An account of the content of the resource. Description may include
1321 /// but is not limited to: an abstract, table of contents, reference
1322 /// to a graphical representation of content or a free-text account of
1323 /// the content. Type is a CFString.
1324 ///
1325 ///
1326 /// Used to reference to the resource within a given
1327 /// context. Recommended best practice is to identify the resource by
1328 /// means of a string or number conforming to a formal identification
1329 /// system. Type is a CFString.
1330 ///
1331 ///
1332 /// A class of entity for whom the resource is intended or useful. A
1333 /// class of entity may be determined by the creator or the publisher
1334 /// or by a third party. Type is a CFArray of CFString.
1335 ///
1336 /// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemorganizations?language=objc)
1337 pub static kMDItemOrganizations: Option<&'static CFString>;
1338}
1339
1340extern "C" {
1341 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlanguages?language=objc)
1342 pub static kMDItemLanguages: Option<&'static CFString>;
1343}
1344
1345extern "C" {
1346 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemrights?language=objc)
1347 pub static kMDItemRights: Option<&'static CFString>;
1348}
1349
1350extern "C" {
1351 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditempublishers?language=objc)
1352 pub static kMDItemPublishers: Option<&'static CFString>;
1353}
1354
1355extern "C" {
1356 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcontributors?language=objc)
1357 pub static kMDItemContributors: Option<&'static CFString>;
1358}
1359
1360extern "C" {
1361 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcoverage?language=objc)
1362 pub static kMDItemCoverage: Option<&'static CFString>;
1363}
1364
1365extern "C" {
1366 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemsubject?language=objc)
1367 pub static kMDItemSubject: Option<&'static CFString>;
1368}
1369
1370extern "C" {
1371 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemtheme?language=objc)
1372 pub static kMDItemTheme: Option<&'static CFString>;
1373}
1374
1375extern "C" {
1376 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemdescription?language=objc)
1377 pub static kMDItemDescription: Option<&'static CFString>;
1378}
1379
1380extern "C" {
1381 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemidentifier?language=objc)
1382 pub static kMDItemIdentifier: Option<&'static CFString>;
1383}
1384
1385extern "C" {
1386 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemaudiences?language=objc)
1387 pub static kMDItemAudiences: Option<&'static CFString>;
1388}
1389
1390extern "C" {
1391 /// Number of pages in the item. Type is a CFNumberRef
1392 ///
1393 ///
1394 /// Width in points (72 points per inch) of the document page
1395 /// (first page only for PDF's - other pages within the PDF may
1396 /// not be the same width). Type is a CFNumber.
1397 ///
1398 ///
1399 /// Height in points (72 points per inch) of the document page
1400 /// (first page only for PDF's - other pages within the PDF may
1401 /// not be the same height). Type is a CFNumber.
1402 ///
1403 ///
1404 /// Security (encryption) method used in the file, for a PDF will be one of:
1405 /// "Password Encrypted" or "None". Type is a CFStrings.
1406 ///
1407 ///
1408 /// Application used to create the document content (e.g. "Word",
1409 /// "Framemaker", etc.). Type is a CFStrings.
1410 ///
1411 ///
1412 /// Software used to convert the original content into a PDF stream
1413 /// (e.g. "Distiller", etc.). Type is a Array of CFStrings.
1414 ///
1415 ///
1416 /// Date this item is due. Type is a CFDate.
1417 ///
1418 ///
1419 /// User rate of this item like iTunes. Type is a CFNumber
1420 ///
1421 ///
1422 /// Phone numbers for this item. Type is an Array of CFStrings.
1423 ///
1424 ///
1425 /// Email addresses for this item. Type is an Array of CFStrings.
1426 ///
1427 ///
1428 /// Instant message addresses for this item. Type is an Array of CFStrings.
1429 ///
1430 ///
1431 /// Kind that this item represents. Type is a CFString.
1432 ///
1433 ///
1434 /// This attribute indicates the recipients of this item. Type is a Array of CFStrings
1435 ///
1436 ///
1437 /// These are the finder comments for this item. Type is a CFString.
1438 ///
1439 ///
1440 /// Array of font names used in the item. Attribute would store the Fonts
1441 /// full name, the postscript name or the font family name based on whats available.
1442 /// Type is an Array of CFStrings.
1443 ///
1444 /// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemnumberofpages?language=objc)
1445 pub static kMDItemNumberOfPages: Option<&'static CFString>;
1446}
1447
1448extern "C" {
1449 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditempagewidth?language=objc)
1450 pub static kMDItemPageWidth: Option<&'static CFString>;
1451}
1452
1453extern "C" {
1454 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditempageheight?language=objc)
1455 pub static kMDItemPageHeight: Option<&'static CFString>;
1456}
1457
1458extern "C" {
1459 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemsecuritymethod?language=objc)
1460 pub static kMDItemSecurityMethod: Option<&'static CFString>;
1461}
1462
1463extern "C" {
1464 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcreator?language=objc)
1465 pub static kMDItemCreator: Option<&'static CFString>;
1466}
1467
1468extern "C" {
1469 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemencodingapplications?language=objc)
1470 pub static kMDItemEncodingApplications: Option<&'static CFString>;
1471}
1472
1473extern "C" {
1474 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemduedate?language=objc)
1475 pub static kMDItemDueDate: Option<&'static CFString>;
1476}
1477
1478extern "C" {
1479 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemstarrating?language=objc)
1480 pub static kMDItemStarRating: Option<&'static CFString>;
1481}
1482
1483extern "C" {
1484 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemphonenumbers?language=objc)
1485 pub static kMDItemPhoneNumbers: Option<&'static CFString>;
1486}
1487
1488extern "C" {
1489 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditememailaddresses?language=objc)
1490 pub static kMDItemEmailAddresses: Option<&'static CFString>;
1491}
1492
1493extern "C" {
1494 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditeminstantmessageaddresses?language=objc)
1495 pub static kMDItemInstantMessageAddresses: Option<&'static CFString>;
1496}
1497
1498extern "C" {
1499 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemkind?language=objc)
1500 pub static kMDItemKind: Option<&'static CFString>;
1501}
1502
1503extern "C" {
1504 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemrecipients?language=objc)
1505 pub static kMDItemRecipients: Option<&'static CFString>;
1506}
1507
1508extern "C" {
1509 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfindercomment?language=objc)
1510 pub static kMDItemFinderComment: Option<&'static CFString>;
1511}
1512
1513extern "C" {
1514 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemfonts?language=objc)
1515 pub static kMDItemFonts: Option<&'static CFString>;
1516}
1517
1518extern "C" {
1519 /// Meta data attribute that stores the root note or tonic for the
1520 /// loop, and does not include the scale type. The root key is
1521 /// represented as follows: "C" "C#/Db" "D" "D#/Eb" "E" "F"
1522 /// "F#/Gb" "G" "G#/Ab" "A" "A#/Bb" "B" "NoKey"
1523 ///
1524 ///
1525 /// Meta data attribute that stores key filtering information
1526 /// about a loop. Loops are matched against projects that often in
1527 /// a major or minor key. To assist users in identifying loops
1528 /// that will "fit" with their compositions, loops can be tagged
1529 /// with one of the following key filters: "AnyKey" "Minor"
1530 /// "Major" "NeitherKey" "BothKeys". AnyKey means that it fits
1531 /// with anything (whether in a major key, minor key or
1532 /// neither). Minor fits with compositions in a minor
1533 /// key. NeitherKey doesn't work well with compositions that are
1534 /// in major or minor key. BothKeys means it fits with major or
1535 /// minor key.
1536 ///
1537 ///
1538 /// Meta data attribute that stores how a file should be
1539 /// played. Tagged files can either be loops or non-loops (e.g., a
1540 /// cymbal crash). "Looping" indicates if the file should be
1541 /// treated as a loop. "Non-looping" indicates the file should not
1542 /// be treated as a loop.
1543 ///
1544 ///
1545 /// Meta data attribute that stores multiple pieces of descriptive
1546 /// information about a loop. Besides genre and instrument, files
1547 /// can contain descriptive information that help users in
1548 /// refining searches. A file can have multiple descriptors
1549 /// associated with them, though they come in pairs of antonyms
1550 /// (e.g., "Acoustic" and "Electric"). A file can have zero or
1551 /// more descriptors.
1552 ///
1553 ///
1554 /// Meta data attribute that stores the category of
1555 /// instrument. Files should have an instrument associated with
1556 /// them ("Other Instrument" is provided as a catch-all). For some
1557 /// categories, like "Keyboards" there are instrument names which
1558 /// provide a more detailed instrument definition (e.g., Piano,
1559 /// Organ, etc.)
1560 ///
1561 ///
1562 /// Meta data attribute that stores the name of instrument
1563 /// (relative to the instrument category) Files can have an
1564 /// instrument name associated with them if they have certain
1565 /// instrument categories (e.g., the category Percussion has
1566 /// multiple instruments, including Conga and Bongo).
1567 ///
1568 ///
1569 /// If this item is a bundle, then this is the CFBundleIdentifier
1570 ///
1571 /// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemappleloopsrootkey?language=objc)
1572 pub static kMDItemAppleLoopsRootKey: Option<&'static CFString>;
1573}
1574
1575extern "C" {
1576 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemappleloopskeyfiltertype?language=objc)
1577 pub static kMDItemAppleLoopsKeyFilterType: Option<&'static CFString>;
1578}
1579
1580extern "C" {
1581 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemappleloopsloopmode?language=objc)
1582 pub static kMDItemAppleLoopsLoopMode: Option<&'static CFString>;
1583}
1584
1585extern "C" {
1586 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemappleloopdescriptors?language=objc)
1587 pub static kMDItemAppleLoopDescriptors: Option<&'static CFString>;
1588}
1589
1590extern "C" {
1591 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemmusicalinstrumentcategory?language=objc)
1592 pub static kMDItemMusicalInstrumentCategory: Option<&'static CFString>;
1593}
1594
1595extern "C" {
1596 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemmusicalinstrumentname?language=objc)
1597 pub static kMDItemMusicalInstrumentName: Option<&'static CFString>;
1598}
1599
1600extern "C" {
1601 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemcfbundleidentifier?language=objc)
1602 pub static kMDItemCFBundleIdentifier: Option<&'static CFString>;
1603}
1604
1605extern "C" {
1606 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemsupportfiletype?language=objc)
1607 #[deprecated = "No longer supported"]
1608 pub static kMDItemSupportFileType: Option<&'static CFString>;
1609}
1610
1611extern "C" {
1612 /// Information about the item
1613 ///
1614 ///
1615 /// Director of the movie
1616 ///
1617 ///
1618 /// Producer of the content
1619 ///
1620 ///
1621 /// Genre of the movie
1622 ///
1623 ///
1624 /// Performers in the movie
1625 ///
1626 ///
1627 /// Original format of the movie
1628 ///
1629 ///
1630 /// Original source of the movie
1631 ///
1632 ///
1633 /// This attribute indicates the author of the emails message addresses. (This is always
1634 /// the email address, and not the human readable version)
1635 ///
1636 ///
1637 /// This attribute indicates the recipients email addresses. (This is always the email
1638 /// address, and not the human readable version).
1639 ///
1640 ///
1641 /// This attribute indicates the author addresses of the document.
1642 ///
1643 ///
1644 /// This attribute indicates the recipient addresses of the document.
1645 ///
1646 ///
1647 /// Url of the item
1648 ///
1649 ///
1650 /// This attribute indicates if the document is likely to be considered junk.
1651 ///
1652 ///
1653 /// Array of executables architectures the item contains.
1654 ///
1655 ///
1656 /// Indicates platform required to execute this application.
1657 ///
1658 ///
1659 /// Array of categories the item application is a member of.
1660 ///
1661 /// See also [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditeminformation?language=objc)
1662 pub static kMDItemInformation: Option<&'static CFString>;
1663}
1664
1665extern "C" {
1666 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemdirector?language=objc)
1667 pub static kMDItemDirector: Option<&'static CFString>;
1668}
1669
1670extern "C" {
1671 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemproducer?language=objc)
1672 pub static kMDItemProducer: Option<&'static CFString>;
1673}
1674
1675extern "C" {
1676 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemgenre?language=objc)
1677 pub static kMDItemGenre: Option<&'static CFString>;
1678}
1679
1680extern "C" {
1681 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemperformers?language=objc)
1682 pub static kMDItemPerformers: Option<&'static CFString>;
1683}
1684
1685extern "C" {
1686 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemoriginalformat?language=objc)
1687 pub static kMDItemOriginalFormat: Option<&'static CFString>;
1688}
1689
1690extern "C" {
1691 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemoriginalsource?language=objc)
1692 pub static kMDItemOriginalSource: Option<&'static CFString>;
1693}
1694
1695extern "C" {
1696 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemauthoremailaddresses?language=objc)
1697 pub static kMDItemAuthorEmailAddresses: Option<&'static CFString>;
1698}
1699
1700extern "C" {
1701 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemrecipientemailaddresses?language=objc)
1702 pub static kMDItemRecipientEmailAddresses: Option<&'static CFString>;
1703}
1704
1705extern "C" {
1706 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemauthoraddresses?language=objc)
1707 pub static kMDItemAuthorAddresses: Option<&'static CFString>;
1708}
1709
1710extern "C" {
1711 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemrecipientaddresses?language=objc)
1712 pub static kMDItemRecipientAddresses: Option<&'static CFString>;
1713}
1714
1715extern "C" {
1716 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemurl?language=objc)
1717 pub static kMDItemURL: Option<&'static CFString>;
1718}
1719
1720extern "C" {
1721 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlabelicon?language=objc)
1722 #[deprecated = "No longer supported"]
1723 pub static kMDItemLabelIcon: Option<&'static CFString>;
1724}
1725
1726extern "C" {
1727 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlabelid?language=objc)
1728 #[deprecated = "No longer supported"]
1729 pub static kMDItemLabelID: Option<&'static CFString>;
1730}
1731
1732extern "C" {
1733 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlabelkind?language=objc)
1734 #[deprecated = "No longer supported"]
1735 pub static kMDItemLabelKind: Option<&'static CFString>;
1736}
1737
1738extern "C" {
1739 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemlabeluuid?language=objc)
1740 #[deprecated = "No longer supported"]
1741 pub static kMDItemLabelUUID: Option<&'static CFString>;
1742}
1743
1744extern "C" {
1745 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemislikelyjunk?language=objc)
1746 pub static kMDItemIsLikelyJunk: Option<&'static CFString>;
1747}
1748
1749extern "C" {
1750 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexecutablearchitectures?language=objc)
1751 pub static kMDItemExecutableArchitectures: Option<&'static CFString>;
1752}
1753
1754extern "C" {
1755 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemexecutableplatform?language=objc)
1756 pub static kMDItemExecutablePlatform: Option<&'static CFString>;
1757}
1758
1759extern "C" {
1760 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemapplicationcategories?language=objc)
1761 pub static kMDItemApplicationCategories: Option<&'static CFString>;
1762}
1763
1764extern "C" {
1765 /// [Apple's documentation](https://developer.apple.com/documentation/coreservices/kmditemisapplicationmanaged?language=objc)
1766 pub static kMDItemIsApplicationManaged: Option<&'static CFString>;
1767}
1768
1769#[deprecated = "renamed to `MDItem::new`"]
1770#[inline]
1771pub unsafe extern "C-unwind" fn MDItemCreate(
1772 allocator: Option<&CFAllocator>,
1773 path: Option<&CFString>,
1774) -> Option<CFRetained<MDItem>> {
1775 extern "C-unwind" {
1776 fn MDItemCreate(
1777 allocator: Option<&CFAllocator>,
1778 path: Option<&CFString>,
1779 ) -> Option<NonNull<MDItem>>;
1780 }
1781 let ret = unsafe { MDItemCreate(allocator, path) };
1782 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1783}
1784
1785#[deprecated = "renamed to `MDItem::with_url`"]
1786#[inline]
1787pub unsafe extern "C-unwind" fn MDItemCreateWithURL(
1788 allocator: Option<&CFAllocator>,
1789 url: Option<&CFURL>,
1790) -> Option<CFRetained<MDItem>> {
1791 extern "C-unwind" {
1792 fn MDItemCreateWithURL(
1793 allocator: Option<&CFAllocator>,
1794 url: Option<&CFURL>,
1795 ) -> Option<NonNull<MDItem>>;
1796 }
1797 let ret = unsafe { MDItemCreateWithURL(allocator, url) };
1798 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1799}
1800
1801#[deprecated = "renamed to `MDItem::attribute`"]
1802#[inline]
1803pub unsafe extern "C-unwind" fn MDItemCopyAttribute(
1804 item: &MDItem,
1805 name: Option<&CFString>,
1806) -> Option<CFRetained<CFType>> {
1807 extern "C-unwind" {
1808 fn MDItemCopyAttribute(item: &MDItem, name: Option<&CFString>) -> Option<NonNull<CFType>>;
1809 }
1810 let ret = unsafe { MDItemCopyAttribute(item, name) };
1811 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1812}
1813
1814#[deprecated = "renamed to `MDItem::attributes`"]
1815#[inline]
1816pub unsafe extern "C-unwind" fn MDItemCopyAttributes(
1817 item: &MDItem,
1818 names: Option<&CFArray>,
1819) -> Option<CFRetained<CFDictionary>> {
1820 extern "C-unwind" {
1821 fn MDItemCopyAttributes(
1822 item: &MDItem,
1823 names: Option<&CFArray>,
1824 ) -> Option<NonNull<CFDictionary>>;
1825 }
1826 let ret = unsafe { MDItemCopyAttributes(item, names) };
1827 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1828}
1829
1830#[deprecated = "renamed to `MDItem::attribute_names`"]
1831#[inline]
1832pub unsafe extern "C-unwind" fn MDItemCopyAttributeNames(
1833 item: &MDItem,
1834) -> Option<CFRetained<CFArray>> {
1835 extern "C-unwind" {
1836 fn MDItemCopyAttributeNames(item: &MDItem) -> Option<NonNull<CFArray>>;
1837 }
1838 let ret = unsafe { MDItemCopyAttributeNames(item) };
1839 ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1840}
1841
1842extern "C-unwind" {
1843 #[cfg(feature = "block2")]
1844 #[deprecated = "renamed to `MDItem::cache_file_descriptors`"]
1845 pub fn MDItemGetCacheFileDescriptors(
1846 items: Option<&CFArray>,
1847 completion_handler: Option<&block2::DynBlock<dyn Fn(*const CFArray)>>,
1848 );
1849}