lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

Follow question to below...

How does one pass an object method to C so the C can call the object method back?


Lobject = { callback = function (self...) .... end}

PassObjectCallbacktoC (Lobject.callback) -- note Lobject:callback cannot be passed.

Adam, Rici,

Thank you for the replys... so a quick guess at the code would be...

if (lua_isfunction (L,1)) // we have a function
   luacallbackfunction = luaL_ref(L, LUA_REGISTRYINDEX);

When I want to use the function I can do

lua_rawgeti(L, LUA_REGISTRYINDEX, luacallbackfunction);
lua_pushxxx for the params
lua_pcall (xxx)

Thanks again,