Tarantool development patches archive
 help / color / mirror / Atom feed
* Re: [Tarantool-patches] [tarantool-patches] Re: [PATCH] error: Add __concat method to error object
       [not found] ` <20191024062150.uzuct2lkmrix3cne@tarantool.org>
@ 2019-11-11 14:43   ` Oleg Babin
  0 siblings, 0 replies; only message in thread
From: Oleg Babin @ 2019-11-11 14:43 UTC (permalink / raw)
  To: tarantool-patches, Kirill Yukhin, tarantool-patches; +Cc: Oleg Babin

Hello, thank you for review!


I will add test in second version of patch.

> Hello,
>
> On 22 окт 16:14, Kirill Yukhin wrote:
> Why do you prohibit rhs to be nil. If needed, should we also disable
> box.NULL?
>

We expect that error will have behavior as usual string then we should
prohibit

using of nils and box.NULLs:


```


tarantool> 'simple string' .. nil
---
- error: '[string "return ''simple string'' .. nil"]:1: attempt to
concatenate a nil
    value'
...

tarantool> 'simple string' .. box.NULL
---
- error: '[string "return ''simple string'' .. box.NULL"]:1: attempt to
concatenate
    ''string'' and ''void *'''
...


```

In this case "attempt to concatenate struct error and nil" will be returned


On 24/10/2019 09:21, Kirill Yukhin wrote:
> Hello,
>
> On 22 окт 16:14, Kirill Yukhin wrote:
>> From: Oleg Babin <babinoleg@mail.ru>
>>
>> Usually functions return pair {nil, err} and expected that err is string.
>> Let's make the behaviour of error object closer to string
>> and define __concat metamethod.
>>
>> Closes tarantool/tarantool#4489
>> ---
>>  src/lua/error.lua | 8 ++++++++
>>  1 file changed, 8 insertions(+)
>>
>> diff --git a/src/lua/error.lua b/src/lua/error.lua
>> index 28fc0377d..b44fab7b6 100644
>> --- a/src/lua/error.lua
>> +++ b/src/lua/error.lua
>> @@ -150,9 +150,17 @@ local function error_index(err, key)
>>      return error_methods[key]
>>  end
>>  
>> +local function error_concat(lhs, rhs)
>> +    if lhs == nil or rhs == nil then
>> +        error("attempt to concatenate struct error and nil")
>> +    end
> Why do you prohibit rhs to be nil. If needed, should we also disable
> box.NULL?
>
> Why you didn't add a test?
>
> --
> Regards, Kirill Yukhin
>
--

Oleg Babin

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-11-11 14:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20191022131429.39400-1-olegrok@tarantool.org>
     [not found] ` <20191024062150.uzuct2lkmrix3cne@tarantool.org>
2019-11-11 14:43   ` [Tarantool-patches] [tarantool-patches] Re: [PATCH] error: Add __concat method to error object Oleg Babin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox