summaryrefslogtreecommitdiffstats
path: root/vendor/core-foundation-sys/src
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 02:49:50 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 02:49:50 +0000
commit9835e2ae736235810b4ea1c162ca5e65c547e770 (patch)
tree3fcebf40ed70e581d776a8a4c65923e8ec20e026 /vendor/core-foundation-sys/src
parentReleasing progress-linux version 1.70.0+dfsg2-1~progress7.99u1. (diff)
downloadrustc-9835e2ae736235810b4ea1c162ca5e65c547e770.tar.xz
rustc-9835e2ae736235810b4ea1c162ca5e65c547e770.zip
Merging upstream version 1.71.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/core-foundation-sys/src')
-rw-r--r--vendor/core-foundation-sys/src/array.rs36
-rw-r--r--vendor/core-foundation-sys/src/lib.rs10
2 files changed, 34 insertions, 12 deletions
diff --git a/vendor/core-foundation-sys/src/array.rs b/vendor/core-foundation-sys/src/array.rs
index 5090302fc..c73896125 100644
--- a/vendor/core-foundation-sys/src/array.rs
+++ b/vendor/core-foundation-sys/src/array.rs
@@ -9,13 +9,15 @@
use std::os::raw::c_void;
-use base::{CFRange, CFIndex, CFAllocatorRef, CFTypeID, Boolean};
+use base::{CFRange, CFIndex, CFAllocatorRef, CFTypeID, Boolean, CFComparisonResult};
use string::CFStringRef;
pub type CFArrayRetainCallBack = extern "C" fn(allocator: CFAllocatorRef, value: *const c_void) -> *const c_void;
pub type CFArrayReleaseCallBack = extern "C" fn(allocator: CFAllocatorRef, value: *const c_void);
pub type CFArrayCopyDescriptionCallBack = extern "C" fn(value: *const c_void) -> CFStringRef;
pub type CFArrayEqualCallBack = extern "C" fn(value1: *const c_void, value2: *const c_void) -> Boolean;
+pub type CFArrayApplierFunction = extern "C" fn(value: *const c_void, context: *mut c_void);
+pub type CFComparatorFunction = extern "C" fn(val1: *const c_void, val2: *const c_void) -> CFComparisonResult;
#[repr(C)]
#[derive(Clone, Copy)]
@@ -31,6 +33,7 @@ pub struct CFArrayCallBacks {
pub struct __CFArray(c_void);
pub type CFArrayRef = *const __CFArray;
+pub type CFMutableArrayRef = *mut __CFArray;
extern {
/*
@@ -38,18 +41,27 @@ extern {
*/
pub static kCFTypeArrayCallBacks: CFArrayCallBacks;
- pub fn CFArrayCreate(allocator: CFAllocatorRef, values: *const *const c_void,
- numValues: CFIndex, callBacks: *const CFArrayCallBacks) -> CFArrayRef;
+ pub fn CFArrayGetTypeID() -> CFTypeID;
+ pub fn CFArrayCreate(allocator: CFAllocatorRef, values: *const *const c_void, numValues: CFIndex, callBacks: *const CFArrayCallBacks) -> CFArrayRef;
pub fn CFArrayCreateCopy(allocator: CFAllocatorRef , theArray: CFArrayRef) -> CFArrayRef;
-
- // CFArrayBSearchValues
- // CFArrayContainsValue
+ pub fn CFArrayCreateMutable(allocator: CFAllocatorRef, capacity: CFIndex, callBacks: *const CFArrayCallBacks) -> CFMutableArrayRef;
+ pub fn CFArrayCreateMutableCopy(allocator: CFAllocatorRef, capacity: CFIndex, theArray: CFArrayRef)-> CFMutableArrayRef;
pub fn CFArrayGetCount(theArray: CFArrayRef) -> CFIndex;
- // CFArrayGetCountOfValue
- // CFArrayGetFirstIndexOfValue
- // CFArrayGetLastIndexOfValue
- pub fn CFArrayGetValues(theArray: CFArrayRef, range: CFRange, values: *mut *const c_void);
+ pub fn CFArrayGetCountOfValue(theArray: CFArrayRef, range: CFRange, value: *const c_void) -> CFIndex;
+ pub fn CFArrayContainsValue(theArray: CFArrayRef, range: CFRange, value: *const c_void) -> Boolean;
pub fn CFArrayGetValueAtIndex(theArray: CFArrayRef, idx: CFIndex) -> *const c_void;
- // CFArrayApplyFunction
- pub fn CFArrayGetTypeID() -> CFTypeID;
+ pub fn CFArrayGetValues(theArray: CFArrayRef, range: CFRange, values: *mut *const c_void);
+ pub fn CFArrayApplyFunction(theArray: CFArrayRef, range: CFRange, applier: CFArrayApplierFunction, context: *mut c_void);
+ pub fn CFArrayGetFirstIndexOfValue(theArray: CFArrayRef, range: CFRange, value: *const c_void) -> CFIndex;
+ pub fn CFArrayGetLastIndexOfValue(theArray: CFArrayRef, range: CFRange, value: *const c_void) -> CFIndex;
+ pub fn CFArrayBSearchValues(theArray: CFArrayRef, range: CFRange, value: *const c_void, comparator: CFComparatorFunction, context: *mut c_void) -> CFIndex;
+ pub fn CFArrayAppendValue(theArray: CFMutableArrayRef, value: *const c_void);
+ pub fn CFArrayInsertValueAtIndex(theArray: CFMutableArrayRef, idx: CFIndex, value: *const c_void);
+ pub fn CFArraySetValueAtIndex(theArray: CFMutableArrayRef, idx: CFIndex, value: *const c_void);
+ pub fn CFArrayRemoveValueAtIndex(theArray: CFMutableArrayRef, idx: CFIndex);
+ pub fn CFArrayRemoveAllValues(theArray: CFMutableArrayRef);
+ pub fn CFArrayReplaceValues(theArray: CFMutableArrayRef, range: CFRange, newValues: *mut *const c_void, newCount: CFIndex);
+ pub fn CFArrayExchangeValuesAtIndices(theArray: CFMutableArrayRef, idx1: CFIndex, idx2: CFIndex);
+ pub fn CFArraySortValues(theArray: CFMutableArrayRef, range: CFRange, comparator: CFComparatorFunction, context: *mut c_void);
+ pub fn CFArrayAppendArray(theArray: CFMutableArrayRef, otherArray: CFArrayRef, otherRange: CFRange );
}
diff --git a/vendor/core-foundation-sys/src/lib.rs b/vendor/core-foundation-sys/src/lib.rs
index f9a188416..48c08878b 100644
--- a/vendor/core-foundation-sys/src/lib.rs
+++ b/vendor/core-foundation-sys/src/lib.rs
@@ -10,6 +10,16 @@
#![cfg_attr(all(feature="mac_os_10_7_support", feature="mac_os_10_8_features"), feature(linkage))] // back-compat requires weak linkage
+// Link to CoreFoundation on any Apple device.
+//
+// We don't use `target_vendor` since that is going to be deprecated:
+// https://github.com/rust-lang/lang-team/issues/102
+#[cfg_attr(
+ any(target_os = "macos", target_os = "ios", target_os = "tvos"),
+ link(name = "CoreFoundation", kind = "framework")
+)]
+extern "C" {}
+
pub mod array;
pub mod attributed_string;
pub mod base;