@@ -28,13 +28,18 @@ public void Write(TarantoolTuple value, IMsgPackWriter writer)
2828 public TarantoolTuple Read ( IMsgPackReader reader )
2929 {
3030 var actual = reader . ReadArrayLength ( ) ;
31+ if ( actual == null )
32+ {
33+ return null ;
34+ }
35+
3136 const uint expected = 0u ;
3237 if ( actual != expected )
3338 {
3439 throw ExceptionHelper . InvalidArrayLength ( expected , actual ) ;
3540 }
3641
37- return TarantoolTuple . Create ( ) ;
42+ return TarantoolTuple . Empty ;
3843 }
3944 }
4045
@@ -64,6 +69,12 @@ public void Write(TarantoolTuple<T1> value, IMsgPackWriter writer)
6469 public TarantoolTuple < T1 > Read ( IMsgPackReader reader )
6570 {
6671 var actual = reader . ReadArrayLength ( ) ;
72+ if ( actual == null )
73+ {
74+ return null ;
75+ }
76+
77+
6778 const uint expected = 1u ;
6879 if ( actual != expected )
6980 {
@@ -105,6 +116,11 @@ public void Write(TarantoolTuple<T1, T2> value, IMsgPackWriter writer)
105116 public TarantoolTuple < T1 , T2 > Read ( IMsgPackReader reader )
106117 {
107118 var actual = reader . ReadArrayLength ( ) ;
119+ if ( actual == null )
120+ {
121+ return null ;
122+ }
123+
108124 const uint expected = 2u ;
109125 if ( actual != expected )
110126 {
@@ -150,6 +166,12 @@ public void Write(TarantoolTuple<T1, T2, T3> value, IMsgPackWriter writer)
150166 public TarantoolTuple < T1 , T2 , T3 > Read ( IMsgPackReader reader )
151167 {
152168 var actual = reader . ReadArrayLength ( ) ;
169+ if ( actual == null )
170+ {
171+ return null ;
172+ }
173+
174+
153175 const uint expected = 3u ;
154176 if ( actual != expected )
155177 {
@@ -199,6 +221,12 @@ public void Write(TarantoolTuple<T1, T2, T3, T4> value, IMsgPackWriter writer)
199221 public TarantoolTuple < T1 , T2 , T3 , T4 > Read ( IMsgPackReader reader )
200222 {
201223 var actual = reader . ReadArrayLength ( ) ;
224+ if ( actual == null )
225+ {
226+ return null ;
227+ }
228+
229+
202230 const uint expected = 4u ;
203231 if ( actual != expected )
204232 {
@@ -252,6 +280,12 @@ public void Write(TarantoolTuple<T1, T2, T3, T4, T5> value, IMsgPackWriter write
252280 public TarantoolTuple < T1 , T2 , T3 , T4 , T5 > Read ( IMsgPackReader reader )
253281 {
254282 var actual = reader . ReadArrayLength ( ) ;
283+ if ( actual == null )
284+ {
285+ return null ;
286+ }
287+
288+
255289 const uint expected = 5u ;
256290 if ( actual != expected )
257291 {
@@ -310,6 +344,12 @@ public TarantoolTuple<T1, T2, T3, T4, T5, T6> Read(
310344 IMsgPackReader reader )
311345 {
312346 var actual = reader . ReadArrayLength ( ) ;
347+ if ( actual == null )
348+ {
349+ return null ;
350+ }
351+
352+
313353 const uint expected = 6u ;
314354 if ( actual != expected )
315355 {
@@ -372,6 +412,12 @@ public TarantoolTuple<T1, T2, T3, T4, T5, T6, T7> Read(
372412 IMsgPackReader reader )
373413 {
374414 var actual = reader . ReadArrayLength ( ) ;
415+ if ( actual == null )
416+ {
417+ return null ;
418+ }
419+
420+
375421 const uint expected = 7u ;
376422 if ( actual != expected )
377423 {
@@ -438,6 +484,12 @@ public TarantoolTuple<T1, T2, T3, T4, T5, T6, T7, TRest> Read(
438484 IMsgPackReader reader )
439485 {
440486 var actual = reader . ReadArrayLength ( ) ;
487+ if ( actual == null )
488+ {
489+ return null ;
490+ }
491+
492+
441493 const uint expected = 8u ;
442494 if ( actual != expected )
443495 {
0 commit comments