public static extern IntPtr luaL_checkudata( IntPtr luaState, int ud, string tname);
public static int GetIndex(IntPtr luaState) { var instancePointer = Lua.luaL_checkudata(luaState, 1, _typeFullName); var instanceIndex = new IntPtr(Marshal.ReadInt32(instancePointer)); return(instanceIndex.ToInt32()); }