Wrote helper functions for objc_getClass() and sel_getUid().
This commit is contained in:
parent
133a3102f1
commit
3347d7fa48
|
@ -16,24 +16,31 @@ import (
|
|||
// id objc_msgSend_strarg(id obj, SEL sel, char *a) { return objc_msgSend(obj, sel, a); }
|
||||
import "C"
|
||||
|
||||
func objc_getClass(class string) C.id {
|
||||
cclass := C.CString(class)
|
||||
defer C.free(unsafe.Pointer(cclass))
|
||||
|
||||
return C.objc_getClass(cclass)
|
||||
}
|
||||
|
||||
func sel_getUid(sel string) C.SEL {
|
||||
csel := C.CString(sel)
|
||||
defer C.free(unsafe.Pointer(csel))
|
||||
|
||||
return C.sel_getUid(csel)
|
||||
}
|
||||
|
||||
func main() {
|
||||
_NSString := C.CString("NSString")
|
||||
defer C.free(unsafe.Pointer(_NSString))
|
||||
_stringWithUTF8String := C.CString("stringWithUTF8String:")
|
||||
defer C.free(unsafe.Pointer(_stringWithUTF8String))
|
||||
_UTF8String := C.CString("UTF8String")
|
||||
defer C.free(unsafe.Pointer(_UTF8String))
|
||||
_hello := C.CString("hello, world\n")
|
||||
defer C.free(unsafe.Pointer(_hello))
|
||||
|
||||
NSString := C.objc_getClass(_NSString)
|
||||
NSString := objc_getClass("NSString")
|
||||
stringWithUTF8String :=
|
||||
C.sel_getUid(_stringWithUTF8String)
|
||||
sel_getUid("stringWithUTF8String:")
|
||||
str := C.objc_msgSend_strarg(NSString,
|
||||
stringWithUTF8String,
|
||||
_hello)
|
||||
UTF8String :=
|
||||
C.sel_getUid(_UTF8String)
|
||||
UTF8String := sel_getUid("UTF8String")
|
||||
res := C.objc_msgSend_noargs(str,
|
||||
UTF8String)
|
||||
cres := (*C.char)(unsafe.Pointer(res))
|
||||
|
|
Loading…
Reference in New Issue