| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | ! Copyright (C) 2006, 2007 Slava Pestov | 
					
						
							|  |  |  | ! See http://factorcode.org/license.txt for BSD license. | 
					
						
							| 
									
										
										
										
											2009-09-27 00:14:57 -04:00
										 |  |  | USING: alien.c-types alien.syntax classes.struct ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | IN: cocoa.runtime | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | TYPEDEF: void* SEL | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | TYPEDEF: void* id | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-23 14:42:02 -05:00
										 |  |  | FUNCTION: c-string sel_getName ( SEL aSelector ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-13 12:32:47 -04:00
										 |  |  | FUNCTION: char sel_isMapped ( SEL aSelector ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-23 14:42:02 -05:00
										 |  |  | FUNCTION: SEL sel_registerName ( c-string str ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | TYPEDEF: void* Class | 
					
						
							|  |  |  | TYPEDEF: void* Method | 
					
						
							|  |  |  | TYPEDEF: void* Protocol | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-29 13:22:55 -04:00
										 |  |  | STRUCT: objc-super | 
					
						
							|  |  |  |     { receiver id } | 
					
						
							|  |  |  |     { class Class } ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-11-23 21:49:33 -05:00
										 |  |  | CONSTANT: CLS_CLASS        0x1
 | 
					
						
							|  |  |  | CONSTANT: CLS_META         0x2
 | 
					
						
							|  |  |  | CONSTANT: CLS_INITIALIZED  0x4
 | 
					
						
							|  |  |  | CONSTANT: CLS_POSING       0x8
 | 
					
						
							|  |  |  | CONSTANT: CLS_MAPPED       0x10
 | 
					
						
							|  |  |  | CONSTANT: CLS_FLUSH_CACHE  0x20
 | 
					
						
							|  |  |  | CONSTANT: CLS_GROW_CACHE   0x40
 | 
					
						
							|  |  |  | CONSTANT: CLS_NEED_BIND    0x80
 | 
					
						
							|  |  |  | CONSTANT: CLS_METHOD_ARRAY 0x100
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | FUNCTION: int objc_getClassList ( void* buffer, int bufferLen ) ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-23 14:42:02 -05:00
										 |  |  | FUNCTION: Class objc_getClass ( c-string class ) ;
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-23 14:42:02 -05:00
										 |  |  | FUNCTION: Class objc_getMetaClass ( c-string class ) ;
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-23 14:42:02 -05:00
										 |  |  | FUNCTION: Protocol objc_getProtocol ( c-string class ) ;
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-23 14:42:02 -05:00
										 |  |  | FUNCTION: Class objc_allocateClassPair ( Class superclass, c-string name, size_t extraBytes ) ;
 | 
					
						
							| 
									
										
										
										
											2008-09-09 01:47:20 -04:00
										 |  |  | FUNCTION: void objc_registerClassPair ( Class cls ) ;
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | FUNCTION: id class_createInstance ( Class class, uint additionalByteCount ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: id class_createInstanceFromZone ( Class class, uint additionalByteCount, void* zone ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: Method class_getInstanceMethod ( Class class, SEL selector ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: Method class_getClassMethod ( Class class, SEL selector ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: Method* class_copyMethodList ( Class class, uint* outCount ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: Class class_getSuperclass ( Class cls ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-23 14:42:02 -05:00
										 |  |  | FUNCTION: c-string class_getName ( Class cls ) ;
 | 
					
						
							| 
									
										
										
										
											2008-09-13 12:32:47 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: char class_addMethod ( Class class, SEL name, void* imp, void* types ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: char class_addProtocol ( Class class, Protocol protocol ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: uint method_getNumberOfArguments ( Method method ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: void* method_copyReturnType ( Method method ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: void* method_copyArgumentType ( Method method, uint index ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: void* method_getTypeEncoding ( Method method ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: SEL method_getName ( Method method ) ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: void* method_setImplementation ( Method method, void* imp ) ;  | 
					
						
							| 
									
										
										
										
											2008-09-13 12:32:47 -04:00
										 |  |  | FUNCTION: void* method_getImplementation ( Method method ) ;  | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-08 10:28:02 -04:00
										 |  |  | FUNCTION: Class object_getClass ( id object ) ;
 |