lua_state type interface