]> gitweb.factorcode.org Git - factor.git/blob - basis/core-foundation/core-foundation.factor
2ef388563e06990f2ae00bb89978260d00c18b59
[factor.git] / basis / core-foundation / core-foundation.factor
1 ! Copyright (C) 2006, 2008 Slava Pestov
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien.syntax alien.c-types alien.destructors accessors classes.struct kernel ;
4 IN: core-foundation
5
6 TYPEDEF: void* CFTypeRef
7
8 TYPEDEF: void* CFAllocatorRef
9 CONSTANT: kCFAllocatorDefault f
10
11 TYPEDEF: bool      Boolean
12 TYPEDEF: long      CFIndex
13 TYPEDEF: uchar     UInt8
14 TYPEDEF: ushort    UInt16
15 TYPEDEF: uint      UInt32
16 TYPEDEF: ulonglong UInt64
17 TYPEDEF: char      SInt8
18 TYPEDEF: short     SInt16
19 TYPEDEF: int       SInt32
20 TYPEDEF: longlong  SInt64
21 TYPEDEF: ulong CFTypeID
22 TYPEDEF: UInt32 CFOptionFlags
23 TYPEDEF: void* CFUUIDRef
24
25 ALIAS: <CFIndex> <long>
26 ALIAS: *CFIndex *long
27
28 STRUCT: CFRange
29     { location CFIndex }
30     { length CFIndex } ;
31
32 : <CFRange> ( location length -- range )
33     CFRange <struct-boa> ;
34
35 FUNCTION: CFTypeRef CFRetain ( CFTypeRef cf ) ;
36
37 FUNCTION: void CFRelease ( CFTypeRef cf ) ;
38
39 DESTRUCTOR: CFRelease
40