lua_State* m_state;
luaL_newmetatable(m_state,LUA_DATACLIENT);
lua_pushcfunction(m_state,DataClient_Index);
lua_setfield(m_state,-2,"__index");
lua_pushcfunction(m_state,DataClient_newIndex);
lua_setfield(m_state,-2,"__newindex");
lua_pushcfunction(m_state,DataClient_RequestData);
lua_setfield(m_state,-2,"RequestData");
lua_pushcfunction(m_state,DataClient_free);
lua_setfield(m_state,-2,"__gc");
lua_pop(m_state,1);
一部の C 関数を Lua にエクスポートしたいのですが、 Lua でDataClient_Index
呼び出したときにその関数が呼び出されたのにRequestData
、Lua で特別なメソッドではなくインデックス メソッドを使用するのはなぜですか?