]> gitweb.factorcode.org Git - factor.git/blob - basis/cocoa/runtime/runtime.factor
use radix literals
[factor.git] / basis / cocoa / runtime / runtime.factor
1 ! Copyright (C) 2006, 2007 Slava Pestov
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien.c-types alien.syntax classes.struct ;
4 IN: cocoa.runtime
5
6 TYPEDEF: void* SEL
7
8 TYPEDEF: void* id
9
10 FUNCTION: c-string sel_getName ( SEL aSelector ) ;
11
12 FUNCTION: char sel_isMapped ( SEL aSelector ) ;
13
14 FUNCTION: SEL sel_registerName ( c-string str ) ;
15
16 TYPEDEF: void* Class
17 TYPEDEF: void* Method
18 TYPEDEF: void* Protocol
19
20 STRUCT: objc-super
21     { receiver id }
22     { class Class } ;
23
24 CONSTANT: CLS_CLASS        0x1
25 CONSTANT: CLS_META         0x2
26 CONSTANT: CLS_INITIALIZED  0x4
27 CONSTANT: CLS_POSING       0x8
28 CONSTANT: CLS_MAPPED       0x10
29 CONSTANT: CLS_FLUSH_CACHE  0x20
30 CONSTANT: CLS_GROW_CACHE   0x40
31 CONSTANT: CLS_NEED_BIND    0x80
32 CONSTANT: CLS_METHOD_ARRAY 0x100
33
34 FUNCTION: int objc_getClassList ( void* buffer, int bufferLen ) ;
35
36 FUNCTION: Class objc_getClass ( c-string class ) ;
37
38 FUNCTION: Class objc_getMetaClass ( c-string class ) ;
39
40 FUNCTION: Protocol objc_getProtocol ( c-string class ) ;
41
42 FUNCTION: Class objc_allocateClassPair ( Class superclass, c-string name, size_t extraBytes ) ;
43 FUNCTION: void objc_registerClassPair ( Class cls ) ;
44
45 FUNCTION: id class_createInstance ( Class class, uint additionalByteCount ) ;
46
47 FUNCTION: id class_createInstanceFromZone ( Class class, uint additionalByteCount, void* zone ) ;
48
49 FUNCTION: Method class_getInstanceMethod ( Class class, SEL selector ) ;
50
51 FUNCTION: Method class_getClassMethod ( Class class, SEL selector ) ;
52
53 FUNCTION: Method* class_copyMethodList ( Class class, uint* outCount ) ;
54
55 FUNCTION: Class class_getSuperclass ( Class cls ) ;
56
57 FUNCTION: c-string class_getName ( Class cls ) ;
58
59 FUNCTION: char class_addMethod ( Class class, SEL name, void* imp, void* types ) ;
60
61 FUNCTION: char class_addProtocol ( Class class, Protocol protocol ) ;
62
63 FUNCTION: uint method_getNumberOfArguments ( Method method ) ;
64
65 FUNCTION: void* method_copyReturnType ( Method method ) ;
66
67 FUNCTION: void* method_copyArgumentType ( Method method, uint index ) ;
68
69 FUNCTION: void* method_getTypeEncoding ( Method method ) ;
70
71 FUNCTION: SEL method_getName ( Method method ) ;
72
73 FUNCTION: void* method_setImplementation ( Method method, void* imp ) ; 
74 FUNCTION: void* method_getImplementation ( Method method ) ; 
75
76 FUNCTION: Class object_getClass ( id object ) ;