void lua_setfield (lua_State *L, int index, const char *k);

Does the equivalent to t[k] = v, where t is the value at the given valid index index and v is the value at the top of the stack,

This function pops the value from the stack. As in Lua, this function may trigger a metamethod for the "newindex" event (see Metatables).