use core::cell::UnsafeCell;
use core::ffi::*;
use core::marker::{PhantomData, PhantomPinned};
use core::ptr::NonNull;
#[cfg(feature = "dispatch2")]
use dispatch2::*;
#[cfg(feature = "objc2")]
use objc2::__framework_prelude::*;
use objc2_core_foundation::*;
use crate::*;
#[doc(alias = "MDQueryRef")]
#[repr(C)]
pub struct MDQuery {
inner: [u8; 0],
_p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
}
cf_type!(
unsafe impl MDQuery {}
);
#[cfg(feature = "objc2")]
cf_objc2_type!(
unsafe impl RefEncode<"__MDQuery"> for MDQuery {}
);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MDQueryOptionFlags(pub c_uint);
impl MDQueryOptionFlags {
#[doc(alias = "kMDQuerySynchronous")]
pub const Synchronous: Self = Self(1);
#[doc(alias = "kMDQueryWantsUpdates")]
pub const WantsUpdates: Self = Self(4);
#[doc(alias = "kMDQueryAllowFSTranslation")]
pub const AllowFSTranslation: Self = Self(8);
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MDQueryOptionFlags {
const ENCODING: Encoding = c_uint::ENCODING;
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MDQueryOptionFlags {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
unsafe impl ConcreteType for MDQuery {
#[doc(alias = "MDQueryGetTypeID")]
#[inline]
fn type_id() -> CFTypeID {
extern "C-unwind" {
fn MDQueryGetTypeID() -> CFTypeID;
}
unsafe { MDQueryGetTypeID() }
}
}
impl MDQuery {
#[doc(alias = "MDQueryCreate")]
#[inline]
pub unsafe fn new(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<CFRetained<MDQuery>> {
extern "C-unwind" {
fn MDQueryCreate(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<NonNull<MDQuery>>;
}
let ret =
unsafe { MDQueryCreate(allocator, query_string, value_list_attrs, sorting_attrs) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[doc(alias = "MDQueryCreateSubset")]
#[inline]
pub unsafe fn new_subset(
allocator: Option<&CFAllocator>,
query: Option<&MDQuery>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<CFRetained<MDQuery>> {
extern "C-unwind" {
fn MDQueryCreateSubset(
allocator: Option<&CFAllocator>,
query: Option<&MDQuery>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<NonNull<MDQuery>>;
}
let ret = unsafe {
MDQueryCreateSubset(
allocator,
query,
query_string,
value_list_attrs,
sorting_attrs,
)
};
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[doc(alias = "MDQueryCreateForItems")]
#[inline]
pub unsafe fn new_for_items(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
items: Option<&CFArray>,
) -> Option<CFRetained<MDQuery>> {
extern "C-unwind" {
fn MDQueryCreateForItems(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
items: Option<&CFArray>,
) -> Option<NonNull<MDQuery>>;
}
let ret = unsafe {
MDQueryCreateForItems(
allocator,
query_string,
value_list_attrs,
sorting_attrs,
items,
)
};
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[doc(alias = "MDQueryCopyQueryString")]
#[inline]
pub unsafe fn query_string(&self) -> Option<CFRetained<CFString>> {
extern "C-unwind" {
fn MDQueryCopyQueryString(query: &MDQuery) -> Option<NonNull<CFString>>;
}
let ret = unsafe { MDQueryCopyQueryString(self) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[doc(alias = "MDQueryCopyValueListAttributes")]
#[inline]
pub unsafe fn value_list_attributes(&self) -> Option<CFRetained<CFArray>> {
extern "C-unwind" {
fn MDQueryCopyValueListAttributes(query: &MDQuery) -> Option<NonNull<CFArray>>;
}
let ret = unsafe { MDQueryCopyValueListAttributes(self) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[doc(alias = "MDQueryCopySortingAttributes")]
#[inline]
pub unsafe fn sorting_attributes(&self) -> Option<CFRetained<CFArray>> {
extern "C-unwind" {
fn MDQueryCopySortingAttributes(query: &MDQuery) -> Option<NonNull<CFArray>>;
}
let ret = unsafe { MDQueryCopySortingAttributes(self) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct MDQueryBatchingParams {
pub first_max_num: usize,
pub first_max_ms: usize,
pub progress_max_num: usize,
pub progress_max_ms: usize,
pub update_max_num: usize,
pub update_max_ms: usize,
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MDQueryBatchingParams {
const ENCODING: Encoding = Encoding::Struct(
"?",
&[
<usize>::ENCODING,
<usize>::ENCODING,
<usize>::ENCODING,
<usize>::ENCODING,
<usize>::ENCODING,
<usize>::ENCODING,
],
);
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MDQueryBatchingParams {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
impl MDQuery {
#[doc(alias = "MDQueryGetBatchingParameters")]
#[inline]
pub unsafe fn batching_parameters(&self) -> MDQueryBatchingParams {
extern "C-unwind" {
fn MDQueryGetBatchingParameters(query: &MDQuery) -> MDQueryBatchingParams;
}
unsafe { MDQueryGetBatchingParameters(self) }
}
#[doc(alias = "MDQuerySetBatchingParameters")]
#[inline]
pub unsafe fn set_batching_parameters(&self, params: MDQueryBatchingParams) {
extern "C-unwind" {
fn MDQuerySetBatchingParameters(query: &MDQuery, params: MDQueryBatchingParams);
}
unsafe { MDQuerySetBatchingParameters(self, params) }
}
}
#[cfg(feature = "MDItem")]
pub type MDQueryCreateResultFunction =
Option<unsafe extern "C-unwind" fn(*mut MDQuery, *mut MDItem, *mut c_void) -> *const c_void>;
impl MDQuery {
#[doc(alias = "MDQuerySetCreateResultFunction")]
#[cfg(feature = "MDItem")]
#[inline]
pub unsafe fn set_create_result_function(
&self,
func: MDQueryCreateResultFunction,
context: *mut c_void,
cb: *const CFArrayCallBacks,
) {
extern "C-unwind" {
fn MDQuerySetCreateResultFunction(
query: &MDQuery,
func: MDQueryCreateResultFunction,
context: *mut c_void,
cb: *const CFArrayCallBacks,
);
}
unsafe { MDQuerySetCreateResultFunction(self, func, context, cb) }
}
}
pub type MDQueryCreateValueFunction = Option<
unsafe extern "C-unwind" fn(
*mut MDQuery,
*const CFString,
*const CFType,
*mut c_void,
) -> *const c_void,
>;
impl MDQuery {
#[doc(alias = "MDQuerySetCreateValueFunction")]
#[inline]
pub unsafe fn set_create_value_function(
&self,
func: MDQueryCreateValueFunction,
context: *mut c_void,
cb: *const CFArrayCallBacks,
) {
extern "C-unwind" {
fn MDQuerySetCreateValueFunction(
query: &MDQuery,
func: MDQueryCreateValueFunction,
context: *mut c_void,
cb: *const CFArrayCallBacks,
);
}
unsafe { MDQuerySetCreateValueFunction(self, func, context, cb) }
}
#[doc(alias = "MDQuerySetDispatchQueue")]
#[cfg(feature = "dispatch2")]
#[inline]
pub unsafe fn set_dispatch_queue(&self, queue: Option<&DispatchQueue>) {
extern "C-unwind" {
fn MDQuerySetDispatchQueue(query: &MDQuery, queue: Option<&DispatchQueue>);
}
unsafe { MDQuerySetDispatchQueue(self, queue) }
}
#[doc(alias = "MDQueryExecute")]
#[inline]
pub unsafe fn execute(&self, option_flags: CFOptionFlags) -> bool {
extern "C-unwind" {
fn MDQueryExecute(query: &MDQuery, option_flags: CFOptionFlags) -> Boolean;
}
let ret = unsafe { MDQueryExecute(self, option_flags) };
ret != 0
}
#[doc(alias = "MDQueryStop")]
#[inline]
pub unsafe fn stop(&self) {
extern "C-unwind" {
fn MDQueryStop(query: &MDQuery);
}
unsafe { MDQueryStop(self) }
}
#[doc(alias = "MDQueryDisableUpdates")]
#[inline]
pub unsafe fn disable_updates(&self) {
extern "C-unwind" {
fn MDQueryDisableUpdates(query: &MDQuery);
}
unsafe { MDQueryDisableUpdates(self) }
}
#[doc(alias = "MDQueryEnableUpdates")]
#[inline]
pub unsafe fn enable_updates(&self) {
extern "C-unwind" {
fn MDQueryEnableUpdates(query: &MDQuery);
}
unsafe { MDQueryEnableUpdates(self) }
}
#[doc(alias = "MDQueryIsGatheringComplete")]
#[inline]
pub unsafe fn is_gathering_complete(&self) -> bool {
extern "C-unwind" {
fn MDQueryIsGatheringComplete(query: &MDQuery) -> Boolean;
}
let ret = unsafe { MDQueryIsGatheringComplete(self) };
ret != 0
}
#[doc(alias = "MDQueryGetResultCount")]
#[inline]
pub unsafe fn result_count(&self) -> CFIndex {
extern "C-unwind" {
fn MDQueryGetResultCount(query: &MDQuery) -> CFIndex;
}
unsafe { MDQueryGetResultCount(self) }
}
#[doc(alias = "MDQueryGetResultAtIndex")]
#[inline]
pub unsafe fn result_at_index(&self, idx: CFIndex) -> *const c_void {
extern "C-unwind" {
fn MDQueryGetResultAtIndex(query: &MDQuery, idx: CFIndex) -> *const c_void;
}
unsafe { MDQueryGetResultAtIndex(self, idx) }
}
#[doc(alias = "MDQueryGetIndexOfResult")]
#[inline]
pub unsafe fn index_of_result(&self, result: *const c_void) -> CFIndex {
extern "C-unwind" {
fn MDQueryGetIndexOfResult(query: &MDQuery, result: *const c_void) -> CFIndex;
}
unsafe { MDQueryGetIndexOfResult(self, result) }
}
#[doc(alias = "MDQueryGetAttributeValueOfResultAtIndex")]
#[inline]
pub unsafe fn attribute_value_of_result_at_index(
&self,
name: Option<&CFString>,
idx: CFIndex,
) -> *mut c_void {
extern "C-unwind" {
fn MDQueryGetAttributeValueOfResultAtIndex(
query: &MDQuery,
name: Option<&CFString>,
idx: CFIndex,
) -> *mut c_void;
}
unsafe { MDQueryGetAttributeValueOfResultAtIndex(self, name, idx) }
}
#[doc(alias = "MDQueryCopyValuesOfAttribute")]
#[inline]
pub unsafe fn values_of_attribute(
&self,
name: Option<&CFString>,
) -> Option<CFRetained<CFArray>> {
extern "C-unwind" {
fn MDQueryCopyValuesOfAttribute(
query: &MDQuery,
name: Option<&CFString>,
) -> Option<NonNull<CFArray>>;
}
let ret = unsafe { MDQueryCopyValuesOfAttribute(self, name) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[doc(alias = "MDQueryGetCountOfResultsWithAttributeValue")]
#[inline]
pub unsafe fn count_of_results_with_attribute_value(
&self,
name: Option<&CFString>,
value: Option<&CFType>,
) -> CFIndex {
extern "C-unwind" {
fn MDQueryGetCountOfResultsWithAttributeValue(
query: &MDQuery,
name: Option<&CFString>,
value: Option<&CFType>,
) -> CFIndex;
}
unsafe { MDQueryGetCountOfResultsWithAttributeValue(self, name, value) }
}
#[doc(alias = "MDQuerySetSortOrder")]
#[inline]
pub unsafe fn set_sort_order(&self, sorting_attrs: Option<&CFArray>) -> bool {
extern "C-unwind" {
fn MDQuerySetSortOrder(query: &MDQuery, sorting_attrs: Option<&CFArray>) -> Boolean;
}
let ret = unsafe { MDQuerySetSortOrder(self, sorting_attrs) };
ret != 0
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MDQuerySortOptionFlags(pub c_uint);
impl MDQuerySortOptionFlags {
#[doc(alias = "kMDQueryReverseSortOrderFlag")]
pub const ReverseSortOrderFlag: Self = Self(1 << 0);
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MDQuerySortOptionFlags {
const ENCODING: Encoding = c_uint::ENCODING;
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MDQuerySortOptionFlags {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
impl MDQuery {
#[doc(alias = "MDQuerySetSortOptionFlagsForAttribute")]
#[inline]
pub unsafe fn set_sort_option_flags_for_attribute(
&self,
field_name: Option<&CFString>,
flags: u32,
) -> bool {
extern "C-unwind" {
fn MDQuerySetSortOptionFlagsForAttribute(
query: &MDQuery,
field_name: Option<&CFString>,
flags: u32,
) -> Boolean;
}
let ret = unsafe { MDQuerySetSortOptionFlagsForAttribute(self, field_name, flags) };
ret != 0
}
#[doc(alias = "MDQueryGetSortOptionFlagsForAttribute")]
#[inline]
pub unsafe fn sort_option_flags_for_attribute(&self, field_name: Option<&CFString>) -> u32 {
extern "C-unwind" {
fn MDQueryGetSortOptionFlagsForAttribute(
query: &MDQuery,
field_name: Option<&CFString>,
) -> u32;
}
unsafe { MDQueryGetSortOptionFlagsForAttribute(self, field_name) }
}
}
pub type MDQuerySortComparatorFunction = Option<
unsafe extern "C-unwind" fn(
*mut *const CFType,
*mut *const CFType,
*mut c_void,
) -> CFComparisonResult,
>;
impl MDQuery {
#[doc(alias = "MDQuerySetSortComparator")]
#[inline]
pub unsafe fn set_sort_comparator(
&self,
comparator: MDQuerySortComparatorFunction,
context: *mut c_void,
) {
extern "C-unwind" {
fn MDQuerySetSortComparator(
query: &MDQuery,
comparator: MDQuerySortComparatorFunction,
context: *mut c_void,
);
}
unsafe { MDQuerySetSortComparator(self, comparator, context) }
}
#[doc(alias = "MDQuerySetSortComparatorBlock")]
#[cfg(feature = "block2")]
#[inline]
pub unsafe fn set_sort_comparator_block(
&self,
comparator: Option<
&block2::DynBlock<dyn Fn(*mut *const CFType, *mut *const CFType) -> CFComparisonResult>,
>,
) {
extern "C-unwind" {
fn MDQuerySetSortComparatorBlock(
query: &MDQuery,
comparator: Option<
&block2::DynBlock<
dyn Fn(*mut *const CFType, *mut *const CFType) -> CFComparisonResult,
>,
>,
);
}
unsafe { MDQuerySetSortComparatorBlock(self, comparator) }
}
}
extern "C" {
pub static kMDQueryProgressNotification: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryDidFinishNotification: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryDidUpdateNotification: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryUpdateAddedItems: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryUpdateChangedItems: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryUpdateRemovedItems: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryResultContentRelevance: Option<&'static CFString>;
}
impl MDQuery {
#[doc(alias = "MDQuerySetSearchScope")]
#[inline]
pub unsafe fn set_search_scope(
&self,
scope_directories: Option<&CFArray>,
scope_options: OptionBits,
) {
extern "C-unwind" {
fn MDQuerySetSearchScope(
query: &MDQuery,
scope_directories: Option<&CFArray>,
scope_options: OptionBits,
);
}
unsafe { MDQuerySetSearchScope(self, scope_directories, scope_options) }
}
}
extern "C" {
pub static kMDQueryScopeHome: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryScopeComputer: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryScopeNetwork: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryScopeAllIndexed: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryScopeComputerIndexed: Option<&'static CFString>;
}
extern "C" {
pub static kMDQueryScopeNetworkIndexed: Option<&'static CFString>;
}
impl MDQuery {
#[doc(alias = "MDQuerySetMaxCount")]
#[inline]
pub unsafe fn set_max_count(&self, size: CFIndex) {
extern "C-unwind" {
fn MDQuerySetMaxCount(query: &MDQuery, size: CFIndex);
}
unsafe { MDQuerySetMaxCount(self, size) }
}
}
#[deprecated = "renamed to `MDQuery::new`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryCreate(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<CFRetained<MDQuery>> {
extern "C-unwind" {
fn MDQueryCreate(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<NonNull<MDQuery>>;
}
let ret = unsafe { MDQueryCreate(allocator, query_string, value_list_attrs, sorting_attrs) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[deprecated = "renamed to `MDQuery::new_subset`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryCreateSubset(
allocator: Option<&CFAllocator>,
query: Option<&MDQuery>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<CFRetained<MDQuery>> {
extern "C-unwind" {
fn MDQueryCreateSubset(
allocator: Option<&CFAllocator>,
query: Option<&MDQuery>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
) -> Option<NonNull<MDQuery>>;
}
let ret = unsafe {
MDQueryCreateSubset(
allocator,
query,
query_string,
value_list_attrs,
sorting_attrs,
)
};
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[deprecated = "renamed to `MDQuery::new_for_items`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryCreateForItems(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
items: Option<&CFArray>,
) -> Option<CFRetained<MDQuery>> {
extern "C-unwind" {
fn MDQueryCreateForItems(
allocator: Option<&CFAllocator>,
query_string: Option<&CFString>,
value_list_attrs: Option<&CFArray>,
sorting_attrs: Option<&CFArray>,
items: Option<&CFArray>,
) -> Option<NonNull<MDQuery>>;
}
let ret = unsafe {
MDQueryCreateForItems(
allocator,
query_string,
value_list_attrs,
sorting_attrs,
items,
)
};
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[deprecated = "renamed to `MDQuery::query_string`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryCopyQueryString(
query: &MDQuery,
) -> Option<CFRetained<CFString>> {
extern "C-unwind" {
fn MDQueryCopyQueryString(query: &MDQuery) -> Option<NonNull<CFString>>;
}
let ret = unsafe { MDQueryCopyQueryString(query) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[deprecated = "renamed to `MDQuery::value_list_attributes`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryCopyValueListAttributes(
query: &MDQuery,
) -> Option<CFRetained<CFArray>> {
extern "C-unwind" {
fn MDQueryCopyValueListAttributes(query: &MDQuery) -> Option<NonNull<CFArray>>;
}
let ret = unsafe { MDQueryCopyValueListAttributes(query) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
#[deprecated = "renamed to `MDQuery::sorting_attributes`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryCopySortingAttributes(
query: &MDQuery,
) -> Option<CFRetained<CFArray>> {
extern "C-unwind" {
fn MDQueryCopySortingAttributes(query: &MDQuery) -> Option<NonNull<CFArray>>;
}
let ret = unsafe { MDQueryCopySortingAttributes(query) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::batching_parameters`"]
pub fn MDQueryGetBatchingParameters(query: &MDQuery) -> MDQueryBatchingParams;
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::set_batching_parameters`"]
pub fn MDQuerySetBatchingParameters(query: &MDQuery, params: MDQueryBatchingParams);
}
extern "C-unwind" {
#[cfg(feature = "MDItem")]
#[deprecated = "renamed to `MDQuery::set_create_result_function`"]
pub fn MDQuerySetCreateResultFunction(
query: &MDQuery,
func: MDQueryCreateResultFunction,
context: *mut c_void,
cb: *const CFArrayCallBacks,
);
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::set_create_value_function`"]
pub fn MDQuerySetCreateValueFunction(
query: &MDQuery,
func: MDQueryCreateValueFunction,
context: *mut c_void,
cb: *const CFArrayCallBacks,
);
}
extern "C-unwind" {
#[cfg(feature = "dispatch2")]
#[deprecated = "renamed to `MDQuery::set_dispatch_queue`"]
pub fn MDQuerySetDispatchQueue(query: &MDQuery, queue: Option<&DispatchQueue>);
}
#[deprecated = "renamed to `MDQuery::execute`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryExecute(
query: &MDQuery,
option_flags: CFOptionFlags,
) -> bool {
extern "C-unwind" {
fn MDQueryExecute(query: &MDQuery, option_flags: CFOptionFlags) -> Boolean;
}
let ret = unsafe { MDQueryExecute(query, option_flags) };
ret != 0
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::stop`"]
pub fn MDQueryStop(query: &MDQuery);
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::disable_updates`"]
pub fn MDQueryDisableUpdates(query: &MDQuery);
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::enable_updates`"]
pub fn MDQueryEnableUpdates(query: &MDQuery);
}
#[deprecated = "renamed to `MDQuery::is_gathering_complete`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryIsGatheringComplete(query: &MDQuery) -> bool {
extern "C-unwind" {
fn MDQueryIsGatheringComplete(query: &MDQuery) -> Boolean;
}
let ret = unsafe { MDQueryIsGatheringComplete(query) };
ret != 0
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::result_count`"]
pub fn MDQueryGetResultCount(query: &MDQuery) -> CFIndex;
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::result_at_index`"]
pub fn MDQueryGetResultAtIndex(query: &MDQuery, idx: CFIndex) -> *const c_void;
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::index_of_result`"]
pub fn MDQueryGetIndexOfResult(query: &MDQuery, result: *const c_void) -> CFIndex;
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::attribute_value_of_result_at_index`"]
pub fn MDQueryGetAttributeValueOfResultAtIndex(
query: &MDQuery,
name: Option<&CFString>,
idx: CFIndex,
) -> *mut c_void;
}
#[deprecated = "renamed to `MDQuery::values_of_attribute`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQueryCopyValuesOfAttribute(
query: &MDQuery,
name: Option<&CFString>,
) -> Option<CFRetained<CFArray>> {
extern "C-unwind" {
fn MDQueryCopyValuesOfAttribute(
query: &MDQuery,
name: Option<&CFString>,
) -> Option<NonNull<CFArray>>;
}
let ret = unsafe { MDQueryCopyValuesOfAttribute(query, name) };
ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::count_of_results_with_attribute_value`"]
pub fn MDQueryGetCountOfResultsWithAttributeValue(
query: &MDQuery,
name: Option<&CFString>,
value: Option<&CFType>,
) -> CFIndex;
}
#[deprecated = "renamed to `MDQuery::set_sort_order`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQuerySetSortOrder(
query: &MDQuery,
sorting_attrs: Option<&CFArray>,
) -> bool {
extern "C-unwind" {
fn MDQuerySetSortOrder(query: &MDQuery, sorting_attrs: Option<&CFArray>) -> Boolean;
}
let ret = unsafe { MDQuerySetSortOrder(query, sorting_attrs) };
ret != 0
}
#[deprecated = "renamed to `MDQuery::set_sort_option_flags_for_attribute`"]
#[inline]
pub unsafe extern "C-unwind" fn MDQuerySetSortOptionFlagsForAttribute(
query: &MDQuery,
field_name: Option<&CFString>,
flags: u32,
) -> bool {
extern "C-unwind" {
fn MDQuerySetSortOptionFlagsForAttribute(
query: &MDQuery,
field_name: Option<&CFString>,
flags: u32,
) -> Boolean;
}
let ret = unsafe { MDQuerySetSortOptionFlagsForAttribute(query, field_name, flags) };
ret != 0
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::sort_option_flags_for_attribute`"]
pub fn MDQueryGetSortOptionFlagsForAttribute(
query: &MDQuery,
field_name: Option<&CFString>,
) -> u32;
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::set_sort_comparator`"]
pub fn MDQuerySetSortComparator(
query: &MDQuery,
comparator: MDQuerySortComparatorFunction,
context: *mut c_void,
);
}
extern "C-unwind" {
#[cfg(feature = "block2")]
#[deprecated = "renamed to `MDQuery::set_sort_comparator_block`"]
pub fn MDQuerySetSortComparatorBlock(
query: &MDQuery,
comparator: Option<
&block2::DynBlock<dyn Fn(*mut *const CFType, *mut *const CFType) -> CFComparisonResult>,
>,
);
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::set_search_scope`"]
pub fn MDQuerySetSearchScope(
query: &MDQuery,
scope_directories: Option<&CFArray>,
scope_options: OptionBits,
);
}
extern "C-unwind" {
#[deprecated = "renamed to `MDQuery::set_max_count`"]
pub fn MDQuerySetMaxCount(query: &MDQuery, size: CFIndex);
}