From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp36.i.mail.ru (smtp36.i.mail.ru [94.100.177.96]) (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 F2E0D469719 for ; Sun, 11 Oct 2020 18:51:07 +0300 (MSK) From: "Timur Safin" References: <65256995c6b71c4ea357688e7f19e7e2d7ef2323.1602425022.git.tsafin@tarantool.org> <9e8a9db4-77db-75ae-72a2-a0d3cacc5ba9@tarantool.org> In-Reply-To: <9e8a9db4-77db-75ae-72a2-a0d3cacc5ba9@tarantool.org> Date: Sun, 11 Oct 2020 18:51:01 +0300 Message-ID: <1a1201d69fe6$52ae2fd0$f80a8f70$@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Content-Language: ru Subject: Re: [Tarantool-patches] [PATCH 2.X v2.1 1/4] module api: export box_tuple_validate List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: 'Vladislav Shpilevoy' , alexander.turenko@tarantool.org Cc: tarantool-patches@dev.tarantool.org : From: Vladislav Shpilevoy : Subject: Re: [Tarantool-patches] [PATCH 2.X v2.1 1/4] module api: export : box_tuple_validate : : Hi! Thanks for the patch! : : On 11.10.2020 16:39, Timur Safin wrote: : > For external merger we need means to validate tuple data, : > thus exporting `box_tuple_validate` which is wrapper around : > `tuple_validate_raw` without revealing access to tuple : > internals. : > : > Part of #5384 : > --- : > src/box/tuple.c | 6 ++++++ : > src/box/tuple.h | 11 +++++++++++ : > src/exports.h | 1 + : > 3 files changed, 18 insertions(+) : > : > diff --git a/src/box/tuple.c b/src/box/tuple.c : > index f3965476e..ddf41567c 100644 : > --- a/src/box/tuple.c : > +++ b/src/box/tuple.c : > @@ -748,6 +748,12 @@ box_tuple_new(box_tuple_format_t *format, const : char *data, const char *end) : > return tuple_bless(ret); : > } : > : > +int : > +box_tuple_validate(box_tuple_format_t *format, box_tuple_t *tuple) : : If a function is a method of an object, it should have the object : name in prefix, and have the object pointer in the first argument. : For example, box_tuple_to_buf(), box_tuple_field(), box_tuple_update(), : box_tuple_upsert(). : : So here the tuple should be the first argument. Indeed, that makes sense.