From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpng3.m.smailru.net (smtpng3.m.smailru.net [94.100.177.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 0F61D469719 for ; Tue, 29 Sep 2020 01:21:09 +0300 (MSK) References: From: Vladislav Shpilevoy Message-ID: <847daa09-7b38-2663-ae88-951d8dfade01@tarantool.org> Date: Tue, 29 Sep 2020 00:21:07 +0200 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [Tarantool-patches] [PATCH 2.X 3/7] module api: luaT_newthread List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Timur Safin , alexander.turenko@tarantool.org Cc: tarantool-patches@dev.tarantool.org Thanks for the patch! See 3 comments below. On 24.09.2020 19:00, Timur Safin wrote: > Exporting `luaT_newthread` as it's necessary for external merger > > Part of #5273 > --- > src/exports.h | 1 + > src/lua/utils.h | 25 +++++++++++++------------ > 2 files changed, 14 insertions(+), 12 deletions(-) > > diff --git a/src/exports.h b/src/exports.h > index 202f5bf19..20070b240 100644 > --- a/src/exports.h > +++ b/src/exports.h > @@ -412,6 +412,7 @@ EXPORT(luaT_checktuple) > EXPORT(luaT_cpcall) > EXPORT(luaT_error) > EXPORT(luaT_istuple) > +EXPORT(luaT_newthread) > EXPORT(luaT_pushtuple) > EXPORT(luaT_state) > EXPORT(luaT_tolstring) > diff --git a/src/lua/utils.h b/src/lua/utils.h > index e9dd27d08..7639cd64a 100644 > --- a/src/lua/utils.h > +++ b/src/lua/utils.h > @@ -539,6 +539,19 @@ luaT_tolstring(lua_State *L, int idx, size_t *ssize); > LUA_API int > luaL_iscallable(lua_State *L, int idx); > > + 1. Extra empty line. > +/** > + * @brief Creates a new Lua coroutine in a protected frame. If > + * call underneath succeeds, the created Lua state > + * is on the top of the guest stack and a pointer to this state is > + * returned. Otherwise LUA_ERRMEM error is handled and the result > + * is NULL. > + * @param L is a Lua state 2. @param L Lua state. Or probably could be even dropped. Such description is useless anyway. > + * @sa 3. It is worth mentioning that the error is set into the diagnostics area. > + */ > +struct lua_State * > +luaT_newthread(struct lua_State *L); > +