47 lines
1.4 KiB
Text
47 lines
1.4 KiB
Text
#scope_export;
|
|
|
|
UInt :: u64;
|
|
|
|
Id :: *object;
|
|
Class :: *class;
|
|
Sel :: *selector;
|
|
|
|
Bool :: u8;
|
|
|
|
True : Bool : 1;
|
|
False : Bool : 0;
|
|
|
|
msg_send :: () #foreign objc "objc_msgSend";
|
|
msg_send_super :: () #foreign objc "objc_msgSend_super";
|
|
msg_send_fpret :: () #foreign objc "objc_msgSend_fpret";
|
|
msg_send_stret :: () #foreign objc "objc_msgSend_stret";
|
|
|
|
get_class :: (name: *u8) -> Class #foreign objc "objc_getClass";
|
|
|
|
sel_get_name :: (sel: Sel) -> *u8 #foreign objc "sel_getName";
|
|
sel_register_name :: (str: *u8) -> Sel #foreign objc "sel_registerName";
|
|
sel_get_uid :: (str: *u8) -> Sel #foreign objc "sel_getUid";
|
|
|
|
obj_get_class :: (obj: Id) -> Class #foreign objc "object_getClass";
|
|
obj_set_class :: (obj: Id, cls: Class) -> Class #foreign objc "object_setClass";
|
|
obj_is_class :: (obj: Id) -> Bool #foreign objc "object_isClass";
|
|
obj_get_class_name :: (obj: Id) -> *u8 #foreign objc "object_getClassName";
|
|
obj_copy :: (obj: Id, size: u64) -> Id #foreign objc "object_copy";
|
|
obj_dispose :: (obj: Id) -> Id #foreign objc "object_dispose";
|
|
|
|
class_get_name :: (cls: Class) -> *u8 #foreign objc "class_getName";
|
|
class_get_super :: (cls: Class) -> Class #foreign objc "class_getSuperclass";
|
|
|
|
#scope_module;
|
|
|
|
class :: struct {};
|
|
object :: struct {};
|
|
method :: struct {};
|
|
ivar :: struct {};
|
|
category :: struct {};
|
|
protocol :: struct {};
|
|
selector :: struct {};
|
|
|
|
objc :: #library,system,link_always,no_dll "libobjc";
|
|
|
|
#import "jc";
|