pub const PATH_MAX: u32 = 1024;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum sysdir_search_path_directory_t {
SYSDIR_DIRECTORY_APPLICATION = 1,
SYSDIR_DIRECTORY_DEMO_APPLICATION = 2,
SYSDIR_DIRECTORY_DEVELOPER_APPLICATION = 3,
SYSDIR_DIRECTORY_ADMIN_APPLICATION = 4,
SYSDIR_DIRECTORY_LIBRARY = 5,
SYSDIR_DIRECTORY_DEVELOPER = 6,
SYSDIR_DIRECTORY_USER = 7,
SYSDIR_DIRECTORY_DOCUMENTATION = 8,
SYSDIR_DIRECTORY_DOCUMENT = 9,
SYSDIR_DIRECTORY_CORESERVICE = 10,
SYSDIR_DIRECTORY_AUTOSAVED_INFORMATION = 11,
SYSDIR_DIRECTORY_DESKTOP = 12,
SYSDIR_DIRECTORY_CACHES = 13,
SYSDIR_DIRECTORY_APPLICATION_SUPPORT = 14,
SYSDIR_DIRECTORY_DOWNLOADS = 15,
SYSDIR_DIRECTORY_INPUT_METHODS = 16,
SYSDIR_DIRECTORY_MOVIES = 17,
SYSDIR_DIRECTORY_MUSIC = 18,
SYSDIR_DIRECTORY_PICTURES = 19,
SYSDIR_DIRECTORY_PRINTER_DESCRIPTION = 20,
SYSDIR_DIRECTORY_SHARED_PUBLIC = 21,
SYSDIR_DIRECTORY_PREFERENCE_PANES = 22,
SYSDIR_DIRECTORY_ALL_APPLICATIONS = 100,
SYSDIR_DIRECTORY_ALL_LIBRARIES = 101,
}
pub const SYSDIR_DOMAIN_MASK_USER: sysdir_search_path_domain_mask_t = 1;
pub const SYSDIR_DOMAIN_MASK_LOCAL: sysdir_search_path_domain_mask_t = 2;
pub const SYSDIR_DOMAIN_MASK_NETWORK: sysdir_search_path_domain_mask_t = 4;
pub const SYSDIR_DOMAIN_MASK_SYSTEM: sysdir_search_path_domain_mask_t = 8;
pub const SYSDIR_DOMAIN_MASK_ALL: sysdir_search_path_domain_mask_t = 65535;
pub type sysdir_search_path_domain_mask_t = ::core::ffi::c_uint;
extern "C" {
pub fn sysdir_start_search_path_enumeration(
dir: sysdir_search_path_directory_t,
domainMask: sysdir_search_path_domain_mask_t,
) -> sysdir_search_path_enumeration_state;
}
extern "C" {
pub fn sysdir_get_next_search_path_enumeration(
state: sysdir_search_path_enumeration_state,
path: *mut ::core::ffi::c_char,
) -> sysdir_search_path_enumeration_state;
}
#[repr(transparent)]
#[derive(Debug)]
#[allow(missing_copy_implementations)]
pub struct sysdir_search_path_enumeration_state(::core::ffi::c_uint);
impl PartialEq<::core::ffi::c_uint> for sysdir_search_path_enumeration_state {
fn eq(&self, other: &::core::ffi::c_uint) -> bool {
self.0 == *other
}
}
impl sysdir_search_path_enumeration_state {
#[must_use]
pub fn is_finished(&self) -> bool {
self.0 == 0
}
}