#[repr(C)]pub struct MDItem { /* private fields */ }
MDItem
and Metadata
only.Expand description
This is the type of a reference to MDItems.
See also Apple’s documentation
Implementations§
Source§impl MDItem
impl MDItem
Sourcepub unsafe fn new(
allocator: Option<&CFAllocator>,
path: Option<&CFString>,
) -> Option<CFRetained<MDItem>>
pub unsafe fn new( allocator: Option<&CFAllocator>, path: Option<&CFString>, ) -> Option<CFRetained<MDItem>>
Returns an metadata item for the given path.
Parameter allocator
: The CFAllocator which should be used to allocate
memory for the query and its sub-storage. This
parameter may be NULL in which case the current default
CFAllocator is used.
Parameter path
: A path to the file for which to create the MDItem.
[[Currently, the path must exist. MDItemRefs may or
may not be uniqued. Use CFEqual() to compare them.]]
Returns: An MDItemRef, or NULL on failure.
Sourcepub unsafe fn with_url(
allocator: Option<&CFAllocator>,
url: Option<&CFURL>,
) -> Option<CFRetained<MDItem>>
pub unsafe fn with_url( allocator: Option<&CFAllocator>, url: Option<&CFURL>, ) -> Option<CFRetained<MDItem>>
Returns an metadata item for the given path.
Parameter allocator
: The CFAllocator which should be used to allocate
memory for the query and its sub-storage. This
parameter may be NULL in which case the current default
CFAllocator is used.
Parameter url
: A url to the file for which to create the MDItem.
[[Currently, the file must exist. MDItemRefs may or
may not be uniqued. Use CFEqual() to compare them.]]
Returns: An MDItemRef, or NULL on failure.
Source§impl MDItem
impl MDItem
Sourcepub unsafe fn attribute(
self: &MDItem,
name: Option<&CFString>,
) -> Option<CFRetained<CFType>>
pub unsafe fn attribute( self: &MDItem, name: Option<&CFString>, ) -> Option<CFRetained<CFType>>
Returns the value of the given attribute for the item.
Parameter item
: The item to be interrogated.
Parameter name
: The name of the desired attribute.
Returns: A CFTypeRef, or NULL on failure, or if the attribute does not exist, of if the attribute is not readable.
Sourcepub unsafe fn attributes(
self: &MDItem,
names: Option<&CFArray>,
) -> Option<CFRetained<CFDictionary>>
pub unsafe fn attributes( self: &MDItem, names: Option<&CFArray>, ) -> Option<CFRetained<CFDictionary>>
Returns the values of the given attributes for the item.
Parameter item
: The item to be interrogated.
Parameter names
: A CFArray of the names of the desired attributes.
Returns: A CFDictionary where the keys are the attribute names, and the values are the attribute values, or NULL on failure. If an attribute does not exist, or is unreadable, there will be no key-value pair for it in the dictionary.
Sourcepub unsafe fn attribute_names(self: &MDItem) -> Option<CFRetained<CFArray>>
pub unsafe fn attribute_names(self: &MDItem) -> Option<CFRetained<CFArray>>
Returns an array of the attribute names existing in the item.
Parameter item
: The item to be interrogated.
Returns: A CFArray of CFString attribute names, or NULL on failure.
Source§impl MDItem
impl MDItem
Sourcepub unsafe fn labels(self: &MDItem) -> Option<CFRetained<CFArray>>
Available on crate feature MDLabel
only.
pub unsafe fn labels(self: &MDItem) -> Option<CFRetained<CFArray>>
MDLabel
only.Returns an array of the labels set on the specified item.
Parameter item
: The item to be interrogated.
Returns: A CFArrayRef containing MDLabelRefs for the labels set on the item, or NULL on failure.
Sourcepub unsafe fn set_label(self: &MDItem, label: Option<&MDLabel>) -> bool
Available on crate feature MDLabel
only.
pub unsafe fn set_label(self: &MDItem, label: Option<&MDLabel>) -> bool
MDLabel
only.Sets a label on the specified item.
Parameter item
: The item to be updated.
Parameter label
: The label.
Returns: True if the label was successfully set on the item, false otherwise.
Sourcepub unsafe fn remove_label(self: &MDItem, label: Option<&MDLabel>) -> bool
Available on crate feature MDLabel
only.
pub unsafe fn remove_label(self: &MDItem, label: Option<&MDLabel>) -> bool
MDLabel
only.Removes a label from the specified item.
Parameter item
: The item to be updated.
Parameter label
: The label.
Returns: True if the label was successfully removed from the item, false otherwise.
Methods from Deref<Target = CFType>§
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: ConcreteType,
Available on crate features SearchKit
and SKDocument
only.
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: ConcreteType,
SearchKit
and SKDocument
only.Attempt to downcast the type to that of type T
.
This is the reference-variant. Use CFRetained::downcast
if you
want to convert a retained type. See also ConcreteType
for more
details on which types support being converted to.
Sourcepub fn retain_count(&self) -> usize
Available on crate features SearchKit
and SKDocument
only.
pub fn retain_count(&self) -> usize
SearchKit
and SKDocument
only.Get the reference count of the object.
This function may be useful for debugging. You normally do not use this function otherwise.
Beware that some things (like CFNumber
s, small CFString
s etc.) may
not have a normal retain count for optimization purposes, and can
return usize::MAX
in that case.
Trait Implementations§
Source§impl ConcreteType for MDItem
impl ConcreteType for MDItem
Source§impl RefEncode for MDItem
impl RefEncode for MDItem
Source§const ENCODING_REF: Encoding
const ENCODING_REF: Encoding
Source§impl Type for MDItem
impl Type for MDItem
Source§fn retain(&self) -> CFRetained<Self>where
Self: Sized,
fn retain(&self) -> CFRetained<Self>where
Self: Sized,
Source§fn as_concrete_TypeRef(&self) -> &Self
fn as_concrete_TypeRef(&self) -> &Self
core-foundation
crate.Source§unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
core-foundation
crate. Read moreSource§fn as_CFTypeRef(&self) -> &CFType
fn as_CFTypeRef(&self) -> &CFType
core-foundation
crate.Source§unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
core-foundation
crate. Read more