将Go函数导入Lua中供lua调用
有一个需求,就是使用go语言来实现一些基本模块,使用lua来实现基本逻辑,于是就有了在lua中调用go函数的需求。 go的资料非常少,好在go可以嵌入c语言,使得这个实现变得有可行性。 最终使用了lua中的full userdata来实现这个东西。将go中的函数全部封装成userdata,供lua调用。这样是可行的,由于userdata可以设置metatable,metatable内可以设置一个原方法__call,那么如下的调用:func(1, 3) 就可以变成func.metatable.__...阅读全文