summaryrefslogtreecommitdiffstats
path: root/third_party/rust/core-foundation-sys/src/set.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/core-foundation-sys/src/set.rs')
-rw-r--r--third_party/rust/core-foundation-sys/src/set.rs64
1 files changed, 48 insertions, 16 deletions
diff --git a/third_party/rust/core-foundation-sys/src/set.rs b/third_party/rust/core-foundation-sys/src/set.rs
index a5cc1b16f7..8141c5999d 100644
--- a/third_party/rust/core-foundation-sys/src/set.rs
+++ b/third_party/rust/core-foundation-sys/src/set.rs
@@ -9,15 +9,17 @@
use std::os::raw::c_void;
-use base::{CFAllocatorRef, CFIndex, CFTypeID, Boolean};
+use crate::base::{Boolean, CFAllocatorRef, CFHashCode, CFIndex, CFTypeID};
+use crate::string::CFStringRef;
-pub type CFSetApplierFunction = extern "C" fn (value: *const c_void,
- context: *const c_void);
-pub type CFSetRetainCallBack = *const u8;
-pub type CFSetReleaseCallBack = *const u8;
-pub type CFSetCopyDescriptionCallBack = *const u8;
-pub type CFSetEqualCallBack = *const u8;
-pub type CFSetHashCallBack = *const u8;
+pub type CFSetApplierFunction = extern "C" fn(value: *const c_void, context: *const c_void);
+pub type CFSetRetainCallBack =
+ extern "C" fn(allocator: CFAllocatorRef, value: *const c_void) -> *const c_void;
+pub type CFSetReleaseCallBack = extern "C" fn(allocator: CFAllocatorRef, value: *const c_void);
+pub type CFSetCopyDescriptionCallBack = extern "C" fn(value: *const c_void) -> CFStringRef;
+pub type CFSetEqualCallBack =
+ extern "C" fn(value1: *const c_void, value2: *const c_void) -> Boolean;
+pub type CFSetHashCallBack = extern "C" fn(value: *const c_void) -> CFHashCode;
#[repr(C)]
#[derive(Clone, Copy)]
@@ -34,17 +36,24 @@ pub struct CFSetCallBacks {
pub struct __CFSet(c_void);
pub type CFSetRef = *const __CFSet;
+pub type CFMutableSetRef = *mut __CFSet;
-extern {
+extern "C" {
/*
* CFSet.h
*/
pub static kCFTypeSetCallBacks: CFSetCallBacks;
+ pub static kCFCopyStringSetCallBacks: CFSetCallBacks;
+ /* CFSet */
/* Creating Sets */
- pub fn CFSetCreate(allocator: CFAllocatorRef, values: *const *const c_void, numValues: CFIndex,
- callBacks: *const CFSetCallBacks) -> CFSetRef;
+ pub fn CFSetCreate(
+ allocator: CFAllocatorRef,
+ values: *const *const c_void,
+ numValues: CFIndex,
+ callBacks: *const CFSetCallBacks,
+ ) -> CFSetRef;
pub fn CFSetCreateCopy(allocator: CFAllocatorRef, theSet: CFSetRef) -> CFSetRef;
/* Examining a Set */
@@ -52,15 +61,38 @@ extern {
pub fn CFSetGetCount(theSet: CFSetRef) -> CFIndex;
pub fn CFSetGetCountOfValue(theSet: CFSetRef, value: *const c_void) -> CFIndex;
pub fn CFSetGetValue(theSet: CFSetRef, value: *const c_void) -> *const c_void;
- pub fn CFSetGetValueIfPresent(theSet: CFSetRef, candidate: *const c_void, value: *mut *const c_void) -> Boolean;
+ pub fn CFSetGetValueIfPresent(
+ theSet: CFSetRef,
+ candidate: *const c_void,
+ value: *mut *const c_void,
+ ) -> Boolean;
pub fn CFSetGetValues(theSet: CFSetRef, values: *mut *const c_void);
/* Applying a Function to Set Members */
- pub fn CFSetApplyFunction(theSet: CFSetRef,
- applier: CFSetApplierFunction,
- context: *const c_void);
+ pub fn CFSetApplyFunction(
+ theSet: CFSetRef,
+ applier: CFSetApplierFunction,
+ context: *const c_void,
+ );
/* Getting the CFSet Type ID */
pub fn CFSetGetTypeID() -> CFTypeID;
-}
+ /* CFMutableSet */
+ /* CFMutableSet Miscellaneous Functions */
+ pub fn CFSetAddValue(theSet: CFMutableSetRef, value: *const c_void);
+ pub fn CFSetCreateMutable(
+ allocator: CFAllocatorRef,
+ capacity: CFIndex,
+ callBacks: *const CFSetCallBacks,
+ ) -> CFMutableSetRef;
+ pub fn CFSetCreateMutableCopy(
+ allocator: CFAllocatorRef,
+ capacity: CFIndex,
+ theSet: CFSetRef,
+ ) -> CFMutableSetRef;
+ pub fn CFSetRemoveAllValues(theSet: CFMutableSetRef);
+ pub fn CFSetRemoveValue(theSet: CFMutableSetRef, value: *const c_void);
+ pub fn CFSetReplaceValue(theSet: CFMutableSetRef, value: *const c_void);
+ pub fn CFSetSetValue(theSet: CFMutableSetRef, value: *const c_void);
+}