File: create.m

package info (click to toggle)
gnustep-corebase 0.1.1%2B20230710-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,608 kB
  • sloc: ansic: 25,359; objc: 4,347; cpp: 75; xml: 49; makefile: 24; sh: 7
file content (34 lines) | stat: -rw-r--r-- 917 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include "CoreFoundation/CFString.h"
#include "../CFTesting.h"

int main (void)
{
  CFStringRef str1;
  CFStringRef str2;
  CFStringRef string;
  CFStringRef arrayValues[2];
  CFArrayRef array;
  UniChar ubuffer[] = { 'O', 'K', '!', 0 };
  
  str1 = CFStringCreateWithBytes (NULL, (const UInt8*)"OK", 2, kCFStringEncodingASCII, false);
  
  str2 = CFStringCreateWithBytes (NULL, (const UInt8*)ubuffer, 2 * sizeof(UniChar), kCFStringEncodingUTF16, false);
  
  PASS_CFEQ(str1, str2, "Unicode and C-string are equal.");
  
  arrayValues[0] = str1;
  arrayValues[1] = str2;
  array = CFArrayCreate (NULL, (const void **)arrayValues, 2,
    &kCFTypeArrayCallBacks);
  string = CFStringCreateByCombiningStrings (NULL, array, CFSTR("! "));
  
  PASS_CFEQ(string, CFSTR("OK! OK"),
    "Strings were combined successfully.");
  
  CFRelease(str1);
  CFRelease(str2);
  CFRelease(string);
  CFRelease(array);
  
  return 0;
}