#num kCFCompareEqualTo
#num kCFCompareGreaterThan
#synonym_t CFComparisonResult, <CFIndex>
+
+#callback CFComparatorFunction, Ptr () -> Ptr () -> Ptr () -> IO <CFComparisonResult>
+
+#num kCFNotFound
+
+#starttype CFRange
+# field location, <CFIndex>
+# field length , <CFIndex>
+#stoptype
+
+#if MAC_OS_X_VERSION_10_2 <= MAC_OS_X_VERSION_MAX_ALLOWED
+# opaque_t __CFNull
+# synonym_t CFNullRef , Ptr <__CFNull>
+# ccall CFNullGetTypeID, IO <CFTypeID>
+# cinline kCFNull , IO <CFNullRef>
+#endif
+
+#opaque_t __CFAllocator
+#synonym_t CFAllocatorRef , Ptr <__CFAllocator>
+#cinline kCFAllocatorDefault , IO <CFAllocatorRef>
+#cinline kCFAllocatorSystemDefault, IO <CFAllocatorRef>
+#cinline kCFAllocatorMalloc , IO <CFAllocatorRef>
+#cinline kCFAllocatorMallocZone , IO <CFAllocatorRef>
+#cinline kCFAllocatorNull , IO <CFAllocatorRef>
+#cinline kCFAllocatorUseContext , IO <CFAllocatorRef>
+
+#callback CFAllocatorRetainCallBack , Ptr () -> IO (Ptr ())
+#callback CFAllocatorReleaseCallBack , Ptr () -> IO ()
+#callback CFAllocatorCopyDescriptionCallBack, Ptr () -> IO <CFStringRef>
+#callback CFAllocatorAllocateCallBack , <CFIndex> -> <CFOptionFlags> -> Ptr () -> IO (Ptr ())
+#callback CFAllocatorReallocateCallBack , Ptr () -> <CFIndex> -> <CFOptionFlags> -> Ptr () -> IO (Ptr ())
+#callback CFAllocatorDeallocateCallBack , Ptr () -> Ptr () -> IO ()
+#callback CFAllocatorPreferredSizeCallBack , <CFIndex> -> <CFOptionFlags> -> Ptr () -> IO <CFIndex>
+
+#starttype CFAllocatorContext
+# field version , <CFIndex>
+# field info , Ptr ()
+# field retain , <CFAllocatorRetainCallBack>
+# field release , <CFAllocatorReleaseCallBack>
+# field copyDescription, <CFAllocatorCopyDescriptionCallBack>
+# field allocate , <CFAllocatorAllocateCallBack>
+# field reallocate , <CFAllocatorReallocateCallBack>
+# field deallocate , <CFAllocatorDeallocateCallBack>
+# field preferredSize , <CFAllocatorPreferredSizeCallBack>
+#stoptype
+
+#ccall CFAllocatorGetTypeID , IO <CFTypeID>
+#ccall CFAllocatorSetDefault, <CFAllocatorRef> -> IO ()
+#ccall CFAllocatorGetDefault, IO <CFAllocatorRef>
+#ccall CFAllocatorCreate , <CFAllocatorRef> -> Ptr <CFAllocatorContext> -> IO <CFAllocatorRef>
+#ccall CFAllocatorAllocate , <CFAllocatorRef> -> <CFIndex> -> <CFOptionFlags> -> IO (Ptr ())
+#ccall CFAllocatorReallocate, <CFAllocatorRef> -> Ptr () -> <CFIndex> -> <CFOptionFlags> -> IO (Ptr ())
+#ccall CFAllocatorDeallocate, <CFAllocatorRef> -> Ptr () -> IO ()
+#ccall CFAllocatorGetPreferredSizeForSize, <CFAllocatorRef> -> <CFIndex> -> <CFOptionFlags> -> IO <CFIndex>
+#ccall CFAllocatorGetContext, <CFAllocatorRef> -> Ptr <CFAllocatorContext> -> IO ()
+
+#ccall CFGetTypeID , <CFTypeRef> -> IO <CFTypeID>
+#ccall CFCopyTypeIDDescription, <CFTypeID> -> IO <CFStringRef>
+#ccall CFRetain , <CFTypeRef> -> IO <CFTypeRef>
+#ccall CFRelease , <CFTypeRef> -> IO ()
+#ccall CFGetRetainCount , <CFTypeRef> -> IO <CFIndex>
+#ccall CFMakeCollectable, <CFTypeRef> -> IO <CFTypeRef>
+#ccall CFEqual , <CFTypeRef> -> <CFTypeRef> -> IO <Boolean>
+#ccall CFHash , <CFTypeRef> -> IO <CFHashCode>
+#ccall CFCopyDescription, <CFTypeRef> -> IO <CFStringRef>
+#ccall CFGetAllocator , <CFTypeRef> -> IO <CFAllocatorRef>