TupleExtensions.Deconstruct Method

Definition

Deconstructs the components of a tuple into separate variables.

Overloads

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18,T19,T20,T21>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8, T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20,T21>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)

Deconstructs a tuple with 21 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18,T19,T20>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10, T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)

Deconstructs a tuple with 20 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18,T19>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11, T12,T13,T14,Tuple<T15,T16,T17,T18,T19>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)

Deconstructs a tuple with 19 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12, T13,T14,Tuple<T15,T16,T17,T18>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)

Deconstructs a tuple with 18 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13, T14,Tuple<T15,T16,T17>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)

Deconstructs a tuple with 17 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14, Tuple<T15,T16>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)

Deconstructs a tuple with 16 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

Deconstructs a tuple with 15 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

Deconstructs a tuple with 14 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

Deconstructs a tuple with 13 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Deconstructs a tuple with 12 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Deconstructs a tuple with 11 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Deconstructs a tuple with 10 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9>>, T1, T2, T3, T4, T5, T6, T7, T8, T9)

Deconstructs a tuple with 9 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8>>, T1, T2, T3, T4, T5, T6, T7, T8)

Deconstructs a tuple with 8 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6,T7>(Tuple<T1,T2,T3,T4,T5,T6,T7>, T1, T2, T3, T4, T5, T6, T7)

Deconstructs a tuple with 7 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5,T6>(Tuple<T1,T2,T3,T4,T5,T6>, T1, T2, T3, T4, T5, T6)

Deconstructs a tuple with 6 elements into separate variables.

Deconstruct<T1,T2,T3,T4,T5>(Tuple<T1,T2,T3,T4,T5>, T1, T2, T3, T4, T5)

Deconstructs a tuple with 5 elements into separate variables.

Deconstruct<T1,T2,T3,T4>(Tuple<T1,T2,T3,T4>, T1, T2, T3, T4)

Deconstructs a tuple with 4 elements into separate variables.

Deconstruct<T1,T2,T3>(Tuple<T1,T2,T3>, T1, T2, T3)

Deconstructs a tuple with 3 elements into separate variables.

Deconstruct<T1,T2>(Tuple<T1,T2>, T1, T2)

Deconstructs a tuple with 2 elements into separate variables.

Deconstruct<T1>(Tuple<T1>, T1)

Deconstructs a tuple with 1 element into a separate variable.

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18,T19,T20,T21>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8, T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20,T21>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 21 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15, typename T16, typename T17, typename T18, typename T19, typename T20, typename T21>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14, Tuple<T15, T16, T17, T18, T19, T20, T21> ^> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14, [Runtime::InteropServices::Out] T15 % item15, [Runtime::InteropServices::Out] T16 % item16, [Runtime::InteropServices::Out] T17 % item17, [Runtime::InteropServices::Out] T18 % item18, [Runtime::InteropServices::Out] T19 % item19, [Runtime::InteropServices::Out] T20 % item20, [Runtime::InteropServices::Out] T21 % item21);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20,T21>>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14, out T15 item15, out T16 item16, out T17 item17, out T18 item18, out T19 item19, out T20 item20, out T21 item21);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 * 'T19 * 'T20 * 'T21 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 * 'T19 * 'T20 * 'T21 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14, Tuple(Of T15, T16, T17, T18, T19, T20, T21))), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14, ByRef item15 As T15, ByRef item16 As T16, ByRef item17 As T17, ByRef item18 As T18, ByRef item19 As T19, ByRef item20 As T20, ByRef item21 As T21)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

T15

The type of the fifteenth element.

T16

The type of the sixteenth element.

T17

The type of the seventeenth element.

T18

The type of the eighteenth element.

T19

The type of the nineteenth element.

T20

The type of the twentieth element.

T21

The type of the twenty-first element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20,T21>>>

The 21-element tuple to deconstruct into 21 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

item15
T15

When this method returns, contains the value of the fifteenth element, or value.Rest.Rest.Item1.

item16
T16

When this method returns, contains the value of the sixteenth element, or value.Rest.Rest.Item2.

item17
T17

When this method returns, contains the value of the seventeenth element, or value.Rest.Rest.Item3.

item18
T18

When this method returns, contains the value of the eighteenth element, or value.Rest.Rest.Item4.

item19
T19

When this method returns, contains the value of the nineteenth element, or value.Rest.Rest.Item5.

item20
T20

When this method returns, contains the value of the twentieth element, or value.Rest.Rest.Item6.

item21
T21

When this method returns, contains the value of the twenty-first element, or value.Rest.Rest.Item7.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item21 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18,T19,T20>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10, T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 20 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15, typename T16, typename T17, typename T18, typename T19, typename T20>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14, Tuple<T15, T16, T17, T18, T19, T20> ^> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14, [Runtime::InteropServices::Out] T15 % item15, [Runtime::InteropServices::Out] T16 % item16, [Runtime::InteropServices::Out] T17 % item17, [Runtime::InteropServices::Out] T18 % item18, [Runtime::InteropServices::Out] T19 % item19, [Runtime::InteropServices::Out] T20 % item20);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20>>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14, out T15 item15, out T16 item16, out T17 item17, out T18 item18, out T19 item19, out T20 item20);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 * 'T19 * 'T20 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 * 'T19 * 'T20 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14, Tuple(Of T15, T16, T17, T18, T19, T20))), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14, ByRef item15 As T15, ByRef item16 As T16, ByRef item17 As T17, ByRef item18 As T18, ByRef item19 As T19, ByRef item20 As T20)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

T15

The type of the fifteenth element.

T16

The type of the sixteenth element.

T17

The type of the seventeenth element.

T18

The type of the eighteenth element.

T19

The type of the nineteenth element.

T20

The type of the twentieth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19,T20>>>

The 20-element tuple to deconstruct into 20 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

item15
T15

When this method returns, contains the value of the fifteenth element, or value.Rest.Rest.Item1.

item16
T16

When this method returns, contains the value of the sixteenth element, or value.Rest.Rest.Item2.

item17
T17

When this method returns, contains the value of the seventeenth element, or value.Rest.Rest.Item3.

item18
T18

When this method returns, contains the value of the eighteenth element, or value.Rest.Rest.Item4.

item19
T19

When this method returns, contains the value of the nineteenth element, or value.Rest.Rest.Item5.

item20
T20

When this method returns, contains the value of the twentieth element, or value.Rest.Rest.Item6.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18,T19>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11, T12,T13,T14,Tuple<T15,T16,T17,T18,T19>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 19 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15, typename T16, typename T17, typename T18, typename T19>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14, Tuple<T15, T16, T17, T18, T19> ^> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14, [Runtime::InteropServices::Out] T15 % item15, [Runtime::InteropServices::Out] T16 % item16, [Runtime::InteropServices::Out] T17 % item17, [Runtime::InteropServices::Out] T18 % item18, [Runtime::InteropServices::Out] T19 % item19);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19>>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14, out T15 item15, out T16 item16, out T17 item17, out T18 item18, out T19 item19);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 * 'T19 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 * 'T19 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14, Tuple(Of T15, T16, T17, T18, T19))), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14, ByRef item15 As T15, ByRef item16 As T16, ByRef item17 As T17, ByRef item18 As T18, ByRef item19 As T19)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

T15

The type of the fifteenth element.

T16

The type of the sixteenth element.

T17

The type of the seventeenth element.

T18

The type of the eighteenth element.

T19

The type of the nineteenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18,T19>>>

The 19-element tuple to deconstruct into 19 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

item15
T15

When this method returns, contains the value of the fifteenth element, or value.Rest.Rest.Item1.

item16
T16

When this method returns, contains the value of the sixteenth element, or value.Rest.Rest.Item2.

item17
T17

When this method returns, contains the value of the seventeenth element, or value.Rest.Rest.Item3.

item18
T18

When this method returns, contains the value of the eighteenth element, or value.Rest.Rest.Item4.

item19
T19

When this method returns, contains the value of the nineteenth element, or value.Rest.Rest.Item5.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item19 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17,T18>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12, T13,T14,Tuple<T15,T16,T17,T18>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 18 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15, typename T16, typename T17, typename T18>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14, Tuple<T15, T16, T17, T18> ^> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14, [Runtime::InteropServices::Out] T15 % item15, [Runtime::InteropServices::Out] T16 % item16, [Runtime::InteropServices::Out] T17 % item17, [Runtime::InteropServices::Out] T18 % item18);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18>>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14, out T15 item15, out T16 item16, out T17 item17, out T18 item18);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T18 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14, Tuple(Of T15, T16, T17, T18))), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14, ByRef item15 As T15, ByRef item16 As T16, ByRef item17 As T17, ByRef item18 As T18)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

T15

The type of the fifteenth element.

T16

The type of the sixteenth element.

T17

The type of the seventeenth element.

T18

The type of the eighteenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17,T18>>>

The 18-element tuple to deconstruct into 18 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

item15
T15

When this method returns, contains the value of the fifteenth element, or value.Rest.Rest.Item1.

item16
T16

When this method returns, contains the value of the sixteenth element, or value.Rest.Rest.Item2.

item17
T17

When this method returns, contains the value of the seventeenth element, or value.Rest.Rest.Item3.

item18
T18

When this method returns, contains the value of the eighteenth element, or value.Rest.Rest.Item4.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item18 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16,T17>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13, T14,Tuple<T15,T16,T17>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 17 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15, typename T16, typename T17>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14, Tuple<T15, T16, T17> ^> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14, [Runtime::InteropServices::Out] T15 % item15, [Runtime::InteropServices::Out] T16 % item16, [Runtime::InteropServices::Out] T17 % item17);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17>>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14, out T15 item15, out T16 item16, out T17 item17);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T17 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14, Tuple(Of T15, T16, T17))), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14, ByRef item15 As T15, ByRef item16 As T16, ByRef item17 As T17)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

T15

The type of the fifteenth element.

T16

The type of the sixteenth element.

T17

The type of the seventeenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16,T17>>>

The 17-element tuple to deconstruct into 17 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

item15
T15

When this method returns, contains the value of the fifteenth element, or value.Rest.Rest.Item1.

item16
T16

When this method returns, contains the value of the sixteenth element, or value.Rest.Rest.Item2.

item17
T17

When this method returns, contains the value of the seventeenth element, or value.Rest.Rest.Item3.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item17 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15, T16>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14, Tuple<T15,T16>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 16 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15, typename T16>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14, Tuple<T15, T16> ^> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14, [Runtime::InteropServices::Out] T15 % item15, [Runtime::InteropServices::Out] T16 % item16);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16>>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14, out T15 item15, out T16 item16);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14, Tuple(Of T15, T16))), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14, ByRef item15 As T15, ByRef item16 As T16)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

T15

The type of the fifteenth element.

T16

The type of the sixteenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15,T16>>>

The 16-element tuple to deconstruct into 16 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

item15
T15

When this method returns, contains the value of the fifteenth element, or value.Rest.Rest.Item1.

item16
T16

When this method returns, contains the value of the sixteenth element, or value.Rest.Rest.Item2.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item16 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15>>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 15 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14, Tuple<T15> ^> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14, [Runtime::InteropServices::Out] T15 % item15);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15>>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14, out T15 item15);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14, Tuple(Of T15))), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14, ByRef item15 As T15)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

T15

The type of the fifteenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14,Tuple<T15>>>

The 15-element tuple to deconstruct into 15 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

item15
T15

When this method returns, contains the value of the fifteenth element, or value.Rest.Rest.Item1.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item15 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 14 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13, T14> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13, [Runtime::InteropServices::Out] T14 % item14);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13, out T14 item14);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13, T14)), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13, ByRef item14 As T14)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

T14

The type of the fourteenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13,T14>>

The 14-element tuple to deconstruct into 14 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

item14
T14

When this method returns, contains the value of the fourteenth element, or value.Rest.Item7.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 13 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12, T13> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12, [Runtime::InteropServices::Out] T13 % item13);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12, out T13 item13);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12, T13)), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12, ByRef item13 As T13)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

T13

The type of the thirteenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12,T13>>

The 13-element tuple to deconstruct into 13 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

item13
T13

When this method returns, contains the value of the thirteenth element, or value.Rest.Item6.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item13 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12>(Tuple<T1, T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 12 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11, T12> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11, [Runtime::InteropServices::Out] T12 % item12);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11, out T12 item12);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11, T12)), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11, ByRef item12 As T12)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

T12

The type of the twelfth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11,T12>>

The 12-element tuple to deconstruct into 12 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

item12
T12

When this method returns, contains the value of the twelfth element, or value.Rest.Item5.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item12 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 11 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10, T11> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10, [Runtime::InteropServices::Out] T11 % item11);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10, out T11 item11);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10, T11)), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10, ByRef item11 As T11)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

T11

The type of the eleventh element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10,T11>>

The 11-element tuple to deconstruct into 11 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

item11
T11

When this method returns, contains the value of the eleventh element, or value.Rest.Item4.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item11 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 10 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9, T10> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9, [Runtime::InteropServices::Out] T10 % item10);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9, out T10 item10);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9, T10)), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9, ByRef item10 As T10)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

T10

The type of the tenth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9,T10>>

The 10-element tuple to deconstruct into 10 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

item10
T10

When this method returns, contains the value of the tenth element, or value.Rest.Item3.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 through item10 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9>>, T1, T2, T3, T4, T5, T6, T7, T8, T9)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 9 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8, T9> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8, [Runtime::InteropServices::Out] T9 % item9);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8,T9> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8, out T9 item9);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8, T9) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8, T9)), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8, ByRef item9 As T9)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

T9

The type of the ninth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8,T9>>

The 9-element tuple to deconstruct into 9 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

item9
T9

When this method returns, contains the value of the ninth element, or value.Rest.Item2.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 and item9 are elements of nested tuples.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8>(Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8>>, T1, T2, T3, T4, T5, T6, T7, T8)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 8 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8> ^> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7, [Runtime::InteropServices::Out] T8 % item8);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7,T8> (this Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8>> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7, out T8 item8);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7, T8) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7, Tuple(Of T8)), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7, ByRef item8 As T8)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

T8

The type of the eighth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7,Tuple<T8>>

The 8-element tuple to deconstruct into 8 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

item8
T8

When this method returns, contains the value of the eighth element, or value.Rest.Item1.

Remarks

This method is implemented primarily to support the tuple language features in C#.

Because the .NET Framework tuple types implement tuples with more than 7 elements by nesting a tuple in Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Rest, item8 is an element in a nested tuple.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6,T7>(Tuple<T1,T2,T3,T4,T5,T6,T7>, T1, T2, T3, T4, T5, T6, T7)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 7 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6, T7> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6, [Runtime::InteropServices::Out] T7 % item7);
public static void Deconstruct<T1,T2,T3,T4,T5,T6,T7> (this Tuple<T1,T2,T3,T4,T5,T6,T7> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6, out T7 item7);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6, T7) (value As Tuple(Of T1, T2, T3, T4, T5, T6, T7), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6, ByRef item7 As T7)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

T7

The type of the seventh element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6,T7>

The 7-element tuple to deconstruct into 7 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

item7
T7

When this method returns, contains the value of the seventh element.

Remarks

This method is implemented primarily to support the tuple language features in C#.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5,T6>(Tuple<T1,T2,T3,T4,T5,T6>, T1, T2, T3, T4, T5, T6)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 6 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5, T6> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5, [Runtime::InteropServices::Out] T6 % item6);
public static void Deconstruct<T1,T2,T3,T4,T5,T6> (this Tuple<T1,T2,T3,T4,T5,T6> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5, out T6 item6);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5, T6) (value As Tuple(Of T1, T2, T3, T4, T5, T6), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5, ByRef item6 As T6)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

T6

The type of the sixth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5,T6>

The 6-element tuple to deconstruct into 6 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

item6
T6

When this method returns, contains the value of the sixth element.

Remarks

This method is implemented primarily to support the tuple language features in C#.

See also

Applies to

Deconstruct<T1,T2,T3,T4,T5>(Tuple<T1,T2,T3,T4,T5>, T1, T2, T3, T4, T5)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 5 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4, typename T5>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4, T5> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4, [Runtime::InteropServices::Out] T5 % item5);
public static void Deconstruct<T1,T2,T3,T4,T5> (this Tuple<T1,T2,T3,T4,T5> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4, out T5 item5);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T1 * 'T2 * 'T3 * 'T4 * 'T5 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4, T5) (value As Tuple(Of T1, T2, T3, T4, T5), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4, ByRef item5 As T5)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

T5

The type of the fifth element.

Parameters

value
Tuple<T1,T2,T3,T4,T5>

The 5-element tuple to deconstruct into 5 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

item5
T5

When this method returns, contains the value of the fifth element.

Remarks

This method is implemented primarily to support the tuple language features in C#.

See also

Applies to

Deconstruct<T1,T2,T3,T4>(Tuple<T1,T2,T3,T4>, T1, T2, T3, T4)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 4 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3, typename T4>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3, T4> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3, [Runtime::InteropServices::Out] T4 % item4);
public static void Deconstruct<T1,T2,T3,T4> (this Tuple<T1,T2,T3,T4> value, out T1 item1, out T2 item2, out T3 item3, out T4 item4);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T4 * 'T1 * 'T2 * 'T3 * 'T4 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3, T4) (value As Tuple(Of T1, T2, T3, T4), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3, ByRef item4 As T4)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

T4

The type of the fourth element.

Parameters

value
Tuple<T1,T2,T3,T4>

The 4-element tuple to deconstruct into 4 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

item4
T4

When this method returns, contains the value of the fourth element.

Remarks

This method is implemented primarily to support the tuple language features in C#.

See also

Applies to

Deconstruct<T1,T2,T3>(Tuple<T1,T2,T3>, T1, T2, T3)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 3 elements into separate variables.

public:
generic <typename T1, typename T2, typename T3>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2, T3> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2, [Runtime::InteropServices::Out] T3 % item3);
public static void Deconstruct<T1,T2,T3> (this Tuple<T1,T2,T3> value, out T1 item1, out T2 item2, out T3 item3);
static member Deconstruct : 'T1 * 'T2 * 'T3 * 'T1 * 'T2 * 'T3 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2, T3) (value As Tuple(Of T1, T2, T3), ByRef item1 As T1, ByRef item2 As T2, ByRef item3 As T3)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

T3

The type of the third element.

Parameters

value
Tuple<T1,T2,T3>

The 3-element tuple to deconstruct into 3 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

item3
T3

When this method returns, contains the value of the third element.

Remarks

This method is implemented primarily to support the tuple language features in C#.

See also

Applies to

Deconstruct<T1,T2>(Tuple<T1,T2>, T1, T2)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 2 elements into separate variables.

public:
generic <typename T1, typename T2>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1, T2> ^ value, [Runtime::InteropServices::Out] T1 % item1, [Runtime::InteropServices::Out] T2 % item2);
public static void Deconstruct<T1,T2> (this Tuple<T1,T2> value, out T1 item1, out T2 item2);
static member Deconstruct : 'T1 * 'T2 * 'T1 * 'T2 -> unit
<Extension()>
Public Sub Deconstruct(Of T1, T2) (value As Tuple(Of T1, T2), ByRef item1 As T1, ByRef item2 As T2)

Type Parameters

T1

The type of the first element.

T2

The type of the second element.

Parameters

value
Tuple<T1,T2>

The 2-element tuple to deconstruct into 2 separate variables.

item1
T1

When this method returns, contains the value of the first element.

item2
T2

When this method returns, contains the value of the second element.

Remarks

This method is implemented primarily to support the tuple language features in C#.

See also

Applies to

Deconstruct<T1>(Tuple<T1>, T1)

Source:
TupleExtensions.cs
Source:
TupleExtensions.cs
Source:
TupleExtensions.cs

Deconstructs a tuple with 1 element into a separate variable.

public:
generic <typename T1>
[System::Runtime::CompilerServices::Extension]
 static void Deconstruct(Tuple<T1> ^ value, [Runtime::InteropServices::Out] T1 % item1);
public static void Deconstruct<T1> (this Tuple<T1> value, out T1 item1);
static member Deconstruct : 'T1 * 'T1 -> unit
<Extension()>
Public Sub Deconstruct(Of T1) (value As Tuple(Of T1), ByRef item1 As T1)

Type Parameters

T1

The type of the single element.

Parameters

value
Tuple<T1>

The 1-element tuple to deconstruct into a separate variable.

item1
T1

When this method returns, contains the value of the single element.

Remarks

This method is implemented primarily to support the tuple language features in C#.

See also

Applies to