summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-02-27 20:56:08 -0500
committerPietro Gagliardi <[email protected]>2014-02-27 20:56:08 -0500
commit3347d7fa4825d6eaab9d6af8e8cb7fa471922f18 (patch)
treeffaeec0f8b596bc759488f0e5f0ce0558dc1f470
parent133a3102f16269f9864a746fc9151efa13276e7c (diff)
Wrote helper functions for objc_getClass() and sel_getUid().
-rw-r--r--darwintest/runtimetest.go27
1 files changed, 17 insertions, 10 deletions
diff --git a/darwintest/runtimetest.go b/darwintest/runtimetest.go
index 7a36fb7..04a10c1 100644
--- a/darwintest/runtimetest.go
+++ b/darwintest/runtimetest.go
@@ -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))