]> gitweb @ CieloNegro.org - bindings-CoreFoundation.git/commitdiff
CFDictionary.h
authorPHO <pho@cielonegro.org>
Mon, 18 Oct 2010 14:48:22 +0000 (23:48 +0900)
committerPHO <pho@cielonegro.org>
Mon, 18 Oct 2010 14:48:22 +0000 (23:48 +0900)
Bindings/CoreFoundation/CFDictionary.hsc [new file with mode: 0644]
bindings-CoreFoundation.cabal
cbits/helper_CFDictionary.c [new file with mode: 0644]

diff --git a/Bindings/CoreFoundation/CFDictionary.hsc b/Bindings/CoreFoundation/CFDictionary.hsc
new file mode 100644 (file)
index 0000000..2c64ca9
--- /dev/null
@@ -0,0 +1,59 @@
+#include <bindings.dsl.h>
+#include <CoreFoundation/CFDictionary.h>
+
+module Bindings.CoreFoundation.CFDictionary where
+#strict_import
+import Bindings.CoreFoundation.CFBase
+
+#callback CFDictionaryRetainCallBack , <CFAllocatorRef> -> Ptr () -> IO (Ptr ())
+#callback CFDictionaryReleaseCallBack, <CFAllocatorRef> -> Ptr () -> IO ()
+#callback CFDictionaryCopyDescriptionCallBack, Ptr () -> IO <CFStringRef>
+#callback CFDictionaryEqualCallBack  , Ptr () -> Ptr () -> IO <Boolean>
+#callback CFDictionaryHashCallBack   , Ptr () -> IO <CFHashCode>
+#starttype CFDictionaryKeyCallBacks
+#  field version        , <CFIndex>
+#  field retain         , <CFDictionaryRetainCallBack>
+#  field release        , <CFDictionaryReleaseCallBack>
+#  field copyDescription, <CFDictionaryCopyDescriptionCallBack>
+#  field equal          , <CFDictionaryEqualCallBack>
+#  field hash           , <CFDictionaryHashCallBack>
+#stoptype
+
+#cinline kCFTypeDictionaryKeyCallBacks      , IO (Ptr <CFDictionaryKeyCallBacks>)
+#cinline kCFCopyStringDictionaryKeyCallBacks, IO (Ptr <CFDictionaryKeyCallBacks>)
+
+#starttype CFDictionaryValueCallBacks
+#  field version        , <CFIndex>
+#  field retain         , <CFDictionaryRetainCallBack>
+#  field release        , <CFDictionaryReleaseCallBack>
+#  field copyDescription, <CFDictionaryCopyDescriptionCallBack>
+#  field equal          , <CFDictionaryEqualCallBack>
+#stoptype
+
+#cinline kCFTypeDictionaryValueCallBacks, IO (Ptr <CFDictionaryValueCallBacks>)
+
+#callback CFDictionaryApplierFunction, Ptr () -> Ptr () -> Ptr () -> IO ()
+
+#opaque_t  __CFDictionary
+#synonym_t CFDictionaryRef       , Ptr <__CFDictionary>
+#synonym_t CFMutableDictionaryRef, Ptr <__CFDictionary>
+
+#ccall CFDictionaryGetTypeID        , IO <CFTypeID>
+#ccall CFDictionaryCreate           , <CFAllocatorRef> -> Ptr (Ptr ()) -> Ptr (Ptr ()) -> <CFIndex> -> Ptr <CFDictionaryKeyCallBacks> -> Ptr <CFDictionaryValueCallBacks> -> IO <CFDictionaryRef>
+#ccall CFDictionaryCreateCopy       , <CFAllocatorRef> -> <CFDictionaryRef> -> IO <CFDictionaryRef>
+#ccall CFDictionaryCreateMutable    , <CFAllocatorRef> -> <CFIndex> -> Ptr <CFDictionaryKeyCallBacks> -> Ptr <CFDictionaryValueCallBacks> -> IO <CFMutableDictionaryRef>
+#ccall CFDictionaryCreateMutableCopy, <CFAllocatorRef> -> <CFIndex> -> <CFDictionaryRef> -> IO <CFMutableDictionaryRef>
+#ccall CFDictionaryGetCount         , <CFDictionaryRef> -> IO <CFIndex>
+#ccall CFDictionaryGetCountOfKey    , <CFDictionaryRef> -> Ptr () -> IO <CFIndex>
+#ccall CFDictionaryGetCountOfValue  , <CFDictionaryRef> -> Ptr () -> IO <CFIndex>
+#ccall CFDictionaryContainsKey      , <CFDictionaryRef> -> Ptr () -> IO <Boolean>
+#ccall CFDictionaryContainsValue    , <CFDictionaryRef> -> Ptr () -> IO <Boolean>
+#ccall CFDictionaryGetValue         , <CFDictionaryRef> -> Ptr () -> IO (Ptr ())
+#ccall CFDictionaryGetValueIfPresent, <CFDictionaryRef> -> Ptr () -> Ptr (Ptr ()) -> IO <Boolean>
+#ccall CFDictionaryGetKeysAndValues , <CFDictionaryRef> -> Ptr (Ptr ()) -> Ptr (Ptr ()) -> IO ()
+#ccall CFDictionaryApplyFunction    , <CFDictionaryRef> -> <CFDictionaryApplierFunction> -> Ptr () -> IO ()
+#ccall CFDictionaryAddValue         , <CFMutableDictionaryRef> -> Ptr () -> Ptr () -> IO ()
+#ccall CFDictionarySetValue         , <CFMutableDictionaryRef> -> Ptr () -> Ptr () -> IO ()
+#ccall CFDictionaryReplaceValue     , <CFMutableDictionaryRef> -> Ptr () -> Ptr () -> IO ()
+#ccall CFDictionaryRemoveValue      , <CFMutableDictionaryRef> -> Ptr () -> IO ()
+#ccall CFDictionaryRemoveAllValues  , <CFMutableDictionaryRef> -> IO ()
index 6e0dda0223249e73da56ddb9b94a764c581693ff..b097deb3cac3f30015f0d61eafcbaccccedba428 100644 (file)
@@ -32,11 +32,13 @@ Library
         Bindings.CoreFoundation.CFArray
         Bindings.CoreFoundation.CFBase
         Bindings.CoreFoundation.CFData
+        Bindings.CoreFoundation.CFDictionary
 
     C-Sources:
         cbits/helper_CFArray.c
         cbits/helper_CFBase.c
         cbits/helper_CFData.c
+        cbits/helper_CFDictionary.c
 
     Extensions:
         ForeignFunctionInterface
diff --git a/cbits/helper_CFDictionary.c b/cbits/helper_CFDictionary.c
new file mode 100644 (file)
index 0000000..8c1f0c4
--- /dev/null
@@ -0,0 +1,17 @@
+#include <bindings.cmacros.h>
+#include <CoreFoundation/CFDictionary.h>
+
+const CFDictionaryKeyCallBacks*
+inline_kCFTypeDictionaryKeyCallBacks() {
+    return &kCFTypeDictionaryKeyCallBacks;
+}
+
+const CFDictionaryKeyCallBacks*
+inline_kCFCopyStringDictionaryKeyCallBacks() {
+    return &kCFCopyStringDictionaryKeyCallBacks;
+}
+
+const CFDictionaryValueCallBacks*
+inline_kCFTypeDictionaryValueCallBacks() {
+    return &kCFTypeDictionaryValueCallBacks;
+}