@@ -7,7 +7,7 @@ namespace System
7
7
/// <summary>
8
8
///
9
9
/// </summary>
10
- public readonly partial struct AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > : global ::System . IEquatable < AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > >
10
+ public readonly partial struct AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > : global ::System . IEquatable < AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > >
11
11
{
12
12
/// <summary>
13
13
///
@@ -29,12 +29,12 @@ namespace System
29
29
/// <summary>
30
30
///
31
31
/// </summary>
32
- public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( T1 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( value ) ;
32
+ public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( T1 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( value ) ;
33
33
34
34
/// <summary>
35
35
///
36
36
/// </summary>
37
- public static implicit operator T1 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > @this ) => @this . Value1 ;
37
+ public static implicit operator T1 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > @this ) => @this . Value1 ;
38
38
39
39
/// <summary>
40
40
///
@@ -64,12 +64,12 @@ public AnyOf(T1? value)
64
64
/// <summary>
65
65
///
66
66
/// </summary>
67
- public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( T2 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( value ) ;
67
+ public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( T2 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( value ) ;
68
68
69
69
/// <summary>
70
70
///
71
71
/// </summary>
72
- public static implicit operator T2 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > @this ) => @this . Value2 ;
72
+ public static implicit operator T2 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > @this ) => @this . Value2 ;
73
73
74
74
/// <summary>
75
75
///
@@ -99,12 +99,12 @@ public AnyOf(T2? value)
99
99
/// <summary>
100
100
///
101
101
/// </summary>
102
- public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( T3 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( value ) ;
102
+ public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( T3 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( value ) ;
103
103
104
104
/// <summary>
105
105
///
106
106
/// </summary>
107
- public static implicit operator T3 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > @this ) => @this . Value3 ;
107
+ public static implicit operator T3 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > @this ) => @this . Value3 ;
108
108
109
109
/// <summary>
110
110
///
@@ -134,12 +134,12 @@ public AnyOf(T3? value)
134
134
/// <summary>
135
135
///
136
136
/// </summary>
137
- public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( T4 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( value ) ;
137
+ public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( T4 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( value ) ;
138
138
139
139
/// <summary>
140
140
///
141
141
/// </summary>
142
- public static implicit operator T4 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > @this ) => @this . Value4 ;
142
+ public static implicit operator T4 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > @this ) => @this . Value4 ;
143
143
144
144
/// <summary>
145
145
///
@@ -169,12 +169,12 @@ public AnyOf(T4? value)
169
169
/// <summary>
170
170
///
171
171
/// </summary>
172
- public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( T5 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( value ) ;
172
+ public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( T5 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( value ) ;
173
173
174
174
/// <summary>
175
175
///
176
176
/// </summary>
177
- public static implicit operator T5 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > @this ) => @this . Value5 ;
177
+ public static implicit operator T5 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > @this ) => @this . Value5 ;
178
178
179
179
/// <summary>
180
180
///
@@ -204,12 +204,12 @@ public AnyOf(T5? value)
204
204
/// <summary>
205
205
///
206
206
/// </summary>
207
- public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( T6 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > ( value ) ;
207
+ public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( T6 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( value ) ;
208
208
209
209
/// <summary>
210
210
///
211
211
/// </summary>
212
- public static implicit operator T6 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > @this ) => @this . Value6 ;
212
+ public static implicit operator T6 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > @this ) => @this . Value6 ;
213
213
214
214
/// <summary>
215
215
///
@@ -219,6 +219,41 @@ public AnyOf(T6? value)
219
219
Value6 = value ;
220
220
}
221
221
222
+ /// <summary>
223
+ ///
224
+ /// </summary>
225
+ #if NET6_0_OR_GREATER
226
+ public T7 ? Value7 { get ; init ; }
227
+ #else
228
+ public T7 ? Value7 { get ; }
229
+ #endif
230
+
231
+ /// <summary>
232
+ ///
233
+ /// </summary>
234
+ #if NET6_0_OR_GREATER
235
+ [ global ::System . Diagnostics . CodeAnalysis . MemberNotNullWhen ( true , nameof ( Value7 ) ) ]
236
+ #endif
237
+ public bool IsValue7 => Value7 != null ;
238
+
239
+ /// <summary>
240
+ ///
241
+ /// </summary>
242
+ public static implicit operator AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( T7 value ) => new AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( value ) ;
243
+
244
+ /// <summary>
245
+ ///
246
+ /// </summary>
247
+ public static implicit operator T7 ? ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > @this ) => @this . Value7 ;
248
+
249
+ /// <summary>
250
+ ///
251
+ /// </summary>
252
+ public AnyOf ( T7 ? value )
253
+ {
254
+ Value7 = value ;
255
+ }
256
+
222
257
/// <summary>
223
258
///
224
259
/// </summary>
@@ -228,7 +263,8 @@ public AnyOf(
228
263
T3 ? value3 ,
229
264
T4 ? value4 ,
230
265
T5 ? value5 ,
231
- T6 ? value6
266
+ T6 ? value6 ,
267
+ T7 ? value7
232
268
)
233
269
{
234
270
Value1 = value1 ;
@@ -237,12 +273,14 @@ public AnyOf(
237
273
Value4 = value4 ;
238
274
Value5 = value5 ;
239
275
Value6 = value6 ;
276
+ Value7 = value7 ;
240
277
}
241
278
242
279
/// <summary>
243
280
///
244
281
/// </summary>
245
282
public object ? Object =>
283
+ Value7 as object ??
246
284
Value6 as object ??
247
285
Value5 as object ??
248
286
Value4 as object ??
@@ -256,7 +294,7 @@ Value1 as object
256
294
/// </summary>
257
295
public bool Validate ( )
258
296
{
259
- return IsValue1 || IsValue2 || IsValue3 || IsValue4 || IsValue5 || IsValue6 ;
297
+ return IsValue1 || IsValue2 || IsValue3 || IsValue4 || IsValue5 || IsValue6 || IsValue7 ;
260
298
}
261
299
262
300
/// <summary>
@@ -278,6 +316,8 @@ public override int GetHashCode()
278
316
typeof ( T5 ) ,
279
317
Value6 ,
280
318
typeof ( T6 ) ,
319
+ Value7 ,
320
+ typeof ( T7 ) ,
281
321
} ;
282
322
const int offset = unchecked ( ( int ) 2166136261 ) ;
283
323
const int prime = 16777619 ;
@@ -290,30 +330,31 @@ static int HashCodeAggregator(int hashCode, object? value) => value == null
290
330
/// <summary>
291
331
///
292
332
/// </summary>
293
- public bool Equals ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > other )
333
+ public bool Equals ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > other )
294
334
{
295
335
return
296
336
global ::System . Collections . Generic . EqualityComparer < T1 ? > . Default . Equals ( Value1 , other . Value1 ) &&
297
337
global ::System . Collections . Generic . EqualityComparer < T2 ? > . Default . Equals ( Value2 , other . Value2 ) &&
298
338
global ::System . Collections . Generic . EqualityComparer < T3 ? > . Default . Equals ( Value3 , other . Value3 ) &&
299
339
global ::System . Collections . Generic . EqualityComparer < T4 ? > . Default . Equals ( Value4 , other . Value4 ) &&
300
340
global ::System . Collections . Generic . EqualityComparer < T5 ? > . Default . Equals ( Value5 , other . Value5 ) &&
301
- global ::System . Collections . Generic . EqualityComparer < T6 ? > . Default . Equals ( Value6 , other . Value6 )
341
+ global ::System . Collections . Generic . EqualityComparer < T6 ? > . Default . Equals ( Value6 , other . Value6 ) &&
342
+ global ::System . Collections . Generic . EqualityComparer < T7 ? > . Default . Equals ( Value7 , other . Value7 )
302
343
;
303
344
}
304
345
305
346
/// <summary>
306
347
///
307
348
/// </summary>
308
- public static bool operator == ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > obj1 , AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > obj2 )
349
+ public static bool operator == ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > obj1 , AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > obj2 )
309
350
{
310
- return global ::System . Collections . Generic . EqualityComparer < AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > > . Default . Equals ( obj1 , obj2 ) ;
351
+ return global ::System . Collections . Generic . EqualityComparer < AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > > . Default . Equals ( obj1 , obj2 ) ;
311
352
}
312
353
313
354
/// <summary>
314
355
///
315
356
/// </summary>
316
- public static bool operator != ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > obj1 , AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > obj2 )
357
+ public static bool operator != ( AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > obj1 , AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > obj2 )
317
358
{
318
359
return ! ( obj1 == obj2 ) ;
319
360
}
@@ -323,7 +364,7 @@ public bool Equals(AnyOf<T1, T2, T3, T4, T5, T6> other)
323
364
/// </summary>
324
365
public override bool Equals ( object ? obj )
325
366
{
326
- return obj is AnyOf < T1 , T2 , T3 , T4 , T5 , T6 > o && Equals ( o ) ;
367
+ return obj is AnyOf < T1 , T2 , T3 , T4 , T5 , T6 , T7 > o && Equals ( o ) ;
327
368
}
328
369
}
329
370
}
0 commit comments