1 #include <bindings.dsl.h>
2 #include <CoreFoundation/CFString.h>
4 module Bindings.CoreFoundation.CFString where
6 import Bindings.CoreFoundation.CFBase
7 import Bindings.CoreFoundation.CFArray
8 import Bindings.CoreFoundation.CFData
9 import Bindings.CoreFoundation.CFDictionary
10 import Bindings.CoreFoundation.CFCharacterSet
11 import Bindings.CoreFoundation.CFLocale
13 #integral_t CFStringEncoding
14 #num kCFStringEncodingInvalidId
15 #num kCFStringEncodingMacRoman
16 #num kCFStringEncodingWindowsLatin1
17 #num kCFStringEncodingISOLatin1
18 #num kCFStringEncodingNextStepLatin
19 #num kCFStringEncodingASCII
20 #num kCFStringEncodingUnicode
21 #num kCFStringEncodingUTF8
22 #num kCFStringEncodingNonLossyASCII
23 #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4
24 # num kCFStringEncodingUTF16
25 # num kCFStringEncodingUTF16BE
26 # num kCFStringEncodingUTF16LE
27 # num kCFStringEncodingUTF32
28 # num kCFStringEncodingUTF32BE
29 # num kCFStringEncodingUTF32LE
31 #synonym_t CFStringBuiltInEncodings, <CFStringEncoding>
33 #ccall CFStringGetTypeID, IO <CFTypeID>
35 -- NOTE: There's no way to import CFSTR(cStr) macro as it mentions
38 #ccall CFStringCreateWithPascalString, <CFAllocatorRef> -> <ConstStr255Param> -> <CFStringEncoding> -> IO <CFStringRef>
39 #ccall CFStringCreateWithCString , <CFAllocatorRef> -> Ptr CChar -> <CFStringEncoding> -> IO <CFStringRef>
40 #ccall CFStringCreateWithBytes , <CFAllocatorRef> -> Ptr <UInt8> -> <CFIndex> -> <CFStringEncoding> -> <Boolean> -> IO <CFStringRef>
41 #ccall CFStringCreateWithCharacters , <CFAllocatorRef> -> Ptr <UniChar> -> <CFIndex> -> IO <CFStringRef>
43 #ccall CFStringCreateWithPascalStringNoCopy, <CFAllocatorRef> -> <ConstStr255Param> -> <CFStringEncoding> -> <CFAllocatorRef> -> IO <CFStringRef>
44 #ccall CFStringCreateWithCStringNoCopy , <CFAllocatorRef> -> Ptr CChar -> <CFStringEncoding> -> <CFAllocatorRef> -> IO <CFStringRef>
46 #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4
47 # ccall CFStringCreateWithBytesNoCopy, <CFAllocatorRef> -> Ptr <UInt8> -> <CFIndex> -> <CFStringEncoding> -> <Boolean> -> <CFAllocatorRef> -> IO <CFStringRef>
50 #cinline CFStringCreateWithSubstring, <CFAllocatorRef> -> <CFStringRef> -> Ptr <CFRange> -> IO <CFStringRef>
51 #ccall CFStringCreateCopy , <CFAllocatorRef> -> <CFStringRef> -> IO <CFStringRef>
52 -- NOTE: CFStringCreateWithFormat takes varargs.
53 -- NOTE: CFStringCreateWithFormatAndArguments takes va_list.
54 #ccall CFStringCreateMutable , <CFAllocatorRef> -> <CFIndex> -> IO <CFMutableStringRef>
55 #ccall CFStringCreateMutableCopy , <CFAllocatorRef> -> <CFIndex> -> <CFStringRef> -> IO <CFMutableStringRef>
56 #ccall CFStringCreateMutableWithExternalCharactersNoCopy, <CFAllocatorRef> -> Ptr <UniChar> -> <CFIndex> -> <CFIndex> -> <CFAllocatorRef> -> IO <CFMutableStringRef>
57 #ccall CFStringGetLength , <CFStringRef> -> IO <CFIndex>
58 #ccall CFStringGetCharacterAtIndex, <CFStringRef> -> <CFIndex> -> IO <UniChar>
59 #cinline CFStringGetCharacters , <CFStringRef> -> Ptr <CFRange> -> Ptr <UniChar> -> IO ()
60 #ccall CFStringGetPascalString , <CFStringRef> -> <StringPtr> -> <CFIndex> -> <CFStringEncoding> -> IO <Boolean>
61 #ccall CFStringGetCString , <CFStringRef> -> Ptr CChar -> <CFIndex> -> <CFStringEncoding> -> IO <Boolean>
62 #ccall CFStringGetPascalStringPtr , <CFStringRef> -> <CFStringEncoding> -> IO <ConstStringPtr>
63 #ccall CFStringGetCStringPtr , <CFStringRef> -> <CFStringEncoding> -> IO (Ptr CChar)
64 #ccall CFStringGetCharactersPtr , <CFStringRef> -> IO (Ptr <UniChar>)
65 #cinline CFStringGetBytes , <CFStringRef> -> Ptr <CFRange> -> <CFStringEncoding> -> <UInt8> -> <Boolean> -> Ptr <UInt8> -> <CFIndex> -> Ptr <CFIndex> -> IO <CFIndex>
66 #ccall CFStringCreateFromExternalRepresentation, <CFAllocatorRef> -> <CFDataRef> -> <CFStringEncoding> -> IO <CFStringRef>
67 #ccall CFStringCreateExternalRepresentation , <CFAllocatorRef> -> <CFStringRef> -> <CFStringEncoding> -> <UInt8> -> IO <CFDataRef>
68 #ccall CFStringGetSmallestEncoding , <CFStringRef> -> IO <CFStringEncoding>
69 #ccall CFStringGetFastestEncoding , <CFStringRef> -> IO <CFStringEncoding>
70 #ccall CFStringGetSystemEncoding , IO <CFStringEncoding>
71 #ccall CFStringGetMaximumSizeForEncoding , <CFIndex> -> <CFStringEncoding> -> IO <CFIndex>
72 #ccall CFStringGetFileSystemRepresentation , <CFStringRef> -> Ptr CChar -> <CFIndex> -> IO <Boolean>
73 #ccall CFStringGetMaximumSizeOfFileSystemRepresentation, <CFStringRef> -> IO <CFIndex>
74 #ccall CFStringCreateWithFileSystemRepresentation , <CFAllocatorRef> -> Ptr CChar -> IO <CFStringRef>
76 #num kCFCompareCaseInsensitive
77 #num kCFCompareBackwards
78 #num kCFCompareAnchored
79 #num kCFCompareNonliteral
80 #num kCFCompareLocalized
81 #num kCFCompareNumerically
82 #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
83 # num kCFCompareDiacriticInsensitive
84 # num kCFCompareWidthInsensitive
85 # num kCFCompareForcedOrdering
87 #synonym_t CFStringCompareFlags, <CFOptionFlags>
89 #if !defined(__WIN32__)
90 # if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
91 # cinline CFStringCompareWithOptionsAndLocale, <CFStringRef> -> <CFStringRef> -> Ptr <CFRange> -> <CFOptionFlags> -> <CFLocaleRef> -> IO <CFComparisonResult>
95 #cinline CFStringCompareWithOptions, <CFStringRef> -> <CFStringRef> -> Ptr <CFRange> -> <CFOptionFlags> -> IO <CFComparisonResult>
96 #ccall CFStringCompare , <CFStringRef> -> <CFStringRef> -> <CFOptionFlags> -> IO <CFComparisonResult>
98 #if !defined(__WIN32__)
99 # if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
100 # cinline CFStringFindWithOptionsAndLocale, <CFStringRef> -> <CFStringRef> -> Ptr <CFRange> -> <CFOptionFlags> -> <CFLocaleRef> -> Ptr <CFRange> -> IO <Boolean>
104 #cinline CFStringFindWithOptions , <CFStringRef> -> <CFStringRef> -> Ptr <CFRange> -> <CFOptionFlags> -> Ptr <CFRange> -> IO <Boolean>
105 #cinline CFStringCreateArrayWithFindResults, <CFAllocatorRef> -> <CFStringRef> -> <CFStringRef> -> Ptr <CFRange> -> <CFOptionFlags> -> IO <CFArrayRef>
106 #cinline CFStringFind , <CFStringRef> -> <CFStringRef> -> <CFOptionFlags> -> Ptr <CFRange> -> IO ()
107 #ccall CFStringHasPrefix, <CFStringRef> -> <CFStringRef> -> IO <Boolean>
108 #ccall CFStringHasSuffix, <CFStringRef> -> <CFStringRef> -> IO <Boolean>
110 #if MAC_OS_X_VERSION_10_2 <= MAC_OS_X_VERSION_MAX_ALLOWED
111 # cinline CFStringGetRangeOfComposedCharactersAtIndex, <CFStringRef> -> <CFIndex> -> Ptr <CFRange> -> IO ()
112 # cinline CFStringFindCharacterFromSet , <CFStringRef> -> <CFCharacterSetRef> -> Ptr <CFRange> -> <CFOptionFlags> -> Ptr <CFRange> -> IO <Boolean>
115 #cinline CFStringGetLineBounds , <CFStringRef> -> Ptr <CFRange> -> Ptr <CFIndex> -> Ptr <CFIndex> -> Ptr <CFIndex> -> IO ()
116 #cinline CFStringGetParagraphBounds, <CFStringRef> -> Ptr <CFRange> -> Ptr <CFIndex> -> Ptr <CFIndex> -> Ptr <CFIndex> -> IO ()
117 #ccall CFStringCreateByCombiningStrings , <CFAllocatorRef> -> <CFArrayRef> -> <CFStringRef> -> IO <CFStringRef>
118 #ccall CFStringCreateArrayBySeparatingStrings, <CFAllocatorRef> -> <CFStringRef> -> <CFStringRef> -> IO <CFArrayRef>
119 #ccall CFStringGetIntValue , <CFStringRef> -> IO <SInt32>
120 #ccall CFStringGetDoubleValue , <CFStringRef> -> IO CDouble
121 #ccall CFStringAppend , <CFMutableStringRef> -> <CFStringRef> -> IO ()
122 #ccall CFStringAppendCharacters , <CFMutableStringRef> -> Ptr <UniChar> -> <CFIndex> -> IO ()
123 #ccall CFStringAppendPascalString, <CFMutableStringRef> -> <ConstStr255Param> -> <CFStringEncoding> -> IO ()
124 #ccall CFStringAppendCString , <CFMutableStringRef> -> Ptr CChar -> <CFStringEncoding> -> IO ()
125 -- NOTE: CFStringAppendFormat takes varargs.
126 -- NOTE: CFStringAppendFormatAndArguments takes va_list.
127 #ccall CFStringInsert , <CFMutableStringRef> -> <CFIndex> -> <CFStringRef> -> IO ()
128 #cinline CFStringDelete , <CFMutableStringRef> -> Ptr <CFRange> -> IO ()
129 #cinline CFStringReplace , <CFMutableStringRef> -> Ptr <CFRange> -> <CFStringRef> -> IO ()
130 #ccall CFStringReplaceAll , <CFMutableStringRef> -> <CFStringRef> -> IO ()
132 #if MAC_OS_X_VERSION_10_2 <= MAC_OS_X_VERSION_MAX_ALLOWED
133 # cinline CFStringFindAndReplace , <CFMutableStringRef> -> <CFStringRef> -> <CFStringRef> -> Ptr <CFRange> -> <CFOptionFlags> -> IO <CFIndex>
136 #ccall CFStringSetExternalCharactersNoCopy, <CFMutableStringRef> -> Ptr <UniChar> -> <CFIndex> -> <CFIndex> -> IO ()
137 #ccall CFStringPad , <CFMutableStringRef> -> <CFStringRef> -> <CFIndex> -> <CFIndex> -> IO ()
138 #ccall CFStringTrim , <CFMutableStringRef> -> <CFStringRef> -> IO ()
139 #ccall CFStringTrimWhitespace, <CFMutableStringRef> -> IO ()
141 #ccall CFStringLowercase , <CFMutableStringRef> -> <CFLocaleRef> -> IO ()
142 #ccall CFStringUppercase , <CFMutableStringRef> -> <CFLocaleRef> -> IO ()
143 #ccall CFStringCapitalize, <CFMutableStringRef> -> <CFLocaleRef> -> IO ()
145 #if MAC_OS_X_VERSION_10_2 <= MAC_OS_X_VERSION_MAX_ALLOWED
146 # num kCFStringNormalizationFormD
147 # num kCFStringNormalizationFormKD
148 # num kCFStringNormalizationFormC
149 # num kCFStringNormalizationFormKC
150 # synonym_t CFStringNormalizationForm , <CFIndex>
151 # ccall CFStringNormalize , <CFMutableStringRef> -> <CFStringNormalizationForm> -> IO ()
154 #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
155 # ccall CFStringFold, <CFMutableStringRef> -> <CFOptionFlags> -> <CFLocaleRef> -> IO ()
158 #ccall CFStringTransform, <CFMutableStringRef> -> Ptr <CFRange> -> <CFStringRef> -> <Boolean> -> IO <Boolean>