From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <v.shpilevoy@tarantool.org>
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 <tarantool-patches@dev.tarantool.org>;
 Tue, 29 Sep 2020 01:21:09 +0300 (MSK)
References: <cover.1600955781.git.tsafin@tarantool.org>
 <f1c93189f822cb09756fe24ae64149b932abbb3d.1600955781.git.tsafin@tarantool.org>
From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
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: <f1c93189f822cb09756fe24ae64149b932abbb3d.1600955781.git.tsafin@tarantool.org>
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 <tarantool-patches.dev.tarantool.org>
List-Unsubscribe: <https://lists.tarantool.org/mailman/options/tarantool-patches>, 
 <mailto:tarantool-patches-request@dev.tarantool.org?subject=unsubscribe>
List-Archive: <https://lists.tarantool.org/pipermail/tarantool-patches/>
List-Post: <mailto:tarantool-patches@dev.tarantool.org>
List-Help: <mailto:tarantool-patches-request@dev.tarantool.org?subject=help>
List-Subscribe: <https://lists.tarantool.org/mailman/listinfo/tarantool-patches>, 
 <mailto:tarantool-patches-request@dev.tarantool.org?subject=subscribe>
To: Timur Safin <tsafin@tarantool.org>, 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
> + * <lua_newthread> 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 <lua_newthread>

3. It is worth mentioning that the error is set into the diagnostics
area.

> + */
> +struct lua_State *
> +luaT_newthread(struct lua_State *L);
> +