Hey guys, I want to write a c wrapper around a go code that has a callback
func SomeGoComputation(address string, callback func(string,int)) { _, err = // do some computation with address, maybe go over the network if (err != nil) { callback(err.Error(), 0) } // I mean you get the gist callback("",1) } I've having trouble writing the callback signature which in c would be void(*c_callback)(*char, int) //export Ccomputation func Ccomputation(address *C.char, // how to write that callback) { SomeGoComputation(C.GoString(address), func(errString string, code int){ //passing the go callback values to the c callback wrapper e := C.CString(errString) c := C.int(code) c_callback(e, c) // then free both e and c via unsafe pointer }) } I look around and some (articles or not related answer from go posts) say to use an interface, so I did try `(C.char*, C.int)interface {}` but I did get an error missing , at line where the callback was declared in the wrapper. Any ideas, all advice are welcome thanks .. :) -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.