@@ -23,36 +23,52 @@ public static class Expr
23
23
/// <summary>Helper for type inference from the lambda expression.</summary>
24
24
/// <param name="actionExpression">The lambda expression.</param>
25
25
/// <returns>The lambda expression passed.</returns>
26
- [ Pure ]
27
- public static Expression < Action > Action ( Expression < Action > actionExpression ) =>
28
- actionExpression ;
26
+ [ Pure , NotNull ]
27
+ public static Expression < Action > Action (
28
+ [ NotNull ] Expression < Action > actionExpression )
29
+ {
30
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
31
+ return actionExpression ;
32
+ }
29
33
30
34
/// <summary>Helper for type inference from the lambda expression.</summary>
31
35
/// <typeparam name="T1">The type of argument #1.</typeparam>
32
36
/// <param name="actionExpression">The lambda expression.</param>
33
37
/// <returns>The lambda expression passed.</returns>
34
- [ Pure ]
35
- public static Expression < Action < T1 > > Action < T1 > ( Expression < Action < T1 > > actionExpression ) =>
36
- actionExpression ;
38
+ [ Pure , NotNull ]
39
+ public static Expression < Action < T1 > > Action < T1 > (
40
+ [ NotNull ] Expression < Action < T1 > > actionExpression )
41
+ {
42
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
43
+ return actionExpression ;
44
+ }
37
45
38
46
/// <summary>Helper for type inference from the lambda expression.</summary>
39
47
/// <typeparam name="T1">The type of argument #1.</typeparam>
40
48
/// <typeparam name="T2">The type of argument #2.</typeparam>
41
49
/// <param name="actionExpression">The lambda expression.</param>
42
50
/// <returns>The lambda expression passed.</returns>
43
- [ Pure ]
44
- public static Expression < Action < T1 , T2 > > Action < T1 , T2 > ( Expression < Action < T1 , T2 > > actionExpression ) =>
45
- actionExpression ;
51
+ [ Pure , NotNull ]
52
+ public static Expression < Action < T1 , T2 > > Action < T1 , T2 > (
53
+ [ NotNull ] Expression < Action < T1 , T2 > > actionExpression )
54
+ {
55
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
56
+ return actionExpression ;
57
+ }
46
58
47
59
/// <summary>Helper for type inference from the lambda expression.</summary>
48
60
/// <typeparam name="T1">The type of argument #1.</typeparam>
49
61
/// <typeparam name="T2">The type of argument #2.</typeparam>
50
62
/// <typeparam name="T3">The type of argument #3.</typeparam>
51
63
/// <param name="actionExpression">The lambda expression.</param>
52
64
/// <returns>The lambda expression passed.</returns>
53
- [ Pure ]
54
- public static Expression < Action < T1 , T2 , T3 > > Action < T1 , T2 , T3 > ( Expression < Action < T1 , T2 , T3 > > actionExpression ) =>
55
- actionExpression ;
65
+ [ Pure , NotNull ]
66
+ public static Expression < Action < T1 , T2 , T3 > > Action < T1 , T2 , T3 > (
67
+ [ NotNull ] Expression < Action < T1 , T2 , T3 > > actionExpression )
68
+ {
69
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
70
+ return actionExpression ;
71
+ }
56
72
57
73
/// <summary>Helper for type inference from the lambda expression.</summary>
58
74
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -61,9 +77,13 @@ public static Expression<Action<T1, T2, T3>> Action<T1, T2, T3>(Expression<Actio
61
77
/// <typeparam name="T4">The type of argument #4.</typeparam>
62
78
/// <param name="actionExpression">The lambda expression.</param>
63
79
/// <returns>The lambda expression passed.</returns>
64
- [ Pure ]
65
- public static Expression < Action < T1 , T2 , T3 , T4 > > Action < T1 , T2 , T3 , T4 > ( Expression < Action < T1 , T2 , T3 , T4 > > actionExpression ) =>
66
- actionExpression ;
80
+ [ Pure , NotNull ]
81
+ public static Expression < Action < T1 , T2 , T3 , T4 > > Action < T1 , T2 , T3 , T4 > (
82
+ [ NotNull ] Expression < Action < T1 , T2 , T3 , T4 > > actionExpression )
83
+ {
84
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
85
+ return actionExpression ;
86
+ }
67
87
68
88
/// <summary>Helper for type inference from the lambda expression.</summary>
69
89
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -73,9 +93,13 @@ public static Expression<Action<T1, T2, T3, T4>> Action<T1, T2, T3, T4>(Expressi
73
93
/// <typeparam name="T5">The type of argument #5.</typeparam>
74
94
/// <param name="actionExpression">The lambda expression.</param>
75
95
/// <returns>The lambda expression passed.</returns>
76
- [ Pure ]
77
- public static Expression < Action < T1 , T2 , T3 , T4 , T5 > > Action < T1 , T2 , T3 , T4 , T5 > ( Expression < Action < T1 , T2 , T3 , T4 , T5 > > actionExpression ) =>
78
- actionExpression ;
96
+ [ Pure , NotNull ]
97
+ public static Expression < Action < T1 , T2 , T3 , T4 , T5 > > Action < T1 , T2 , T3 , T4 , T5 > (
98
+ [ NotNull ] Expression < Action < T1 , T2 , T3 , T4 , T5 > > actionExpression )
99
+ {
100
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
101
+ return actionExpression ;
102
+ }
79
103
80
104
/// <summary>Helper for type inference from the lambda expression.</summary>
81
105
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -86,9 +110,13 @@ public static Expression<Action<T1, T2, T3, T4, T5>> Action<T1, T2, T3, T4, T5>(
86
110
/// <typeparam name="T6">The type of argument #6.</typeparam>
87
111
/// <param name="actionExpression">The lambda expression.</param>
88
112
/// <returns>The lambda expression passed.</returns>
89
- [ Pure ]
90
- public static Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 > > Action < T1 , T2 , T3 , T4 , T5 , T6 > ( Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 > > actionExpression ) =>
91
- actionExpression ;
113
+ [ Pure , NotNull ]
114
+ public static Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 > > Action < T1 , T2 , T3 , T4 , T5 , T6 > (
115
+ [ NotNull ] Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 > > actionExpression )
116
+ {
117
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
118
+ return actionExpression ;
119
+ }
92
120
93
121
/// <summary>Helper for type inference from the lambda expression.</summary>
94
122
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -100,38 +128,54 @@ public static Expression<Action<T1, T2, T3, T4, T5, T6>> Action<T1, T2, T3, T4,
100
128
/// <typeparam name="T7">The type of argument #7.</typeparam>
101
129
/// <param name="actionExpression">The lambda expression.</param>
102
130
/// <returns>The lambda expression passed.</returns>
103
- [ Pure ]
104
- public static Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 , T7 > > Action < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 , T7 > > actionExpression ) =>
105
- actionExpression ;
131
+ [ Pure , NotNull ]
132
+ public static Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 , T7 > > Action < T1 , T2 , T3 , T4 , T5 , T6 , T7 > (
133
+ [ NotNull ] Expression < Action < T1 , T2 , T3 , T4 , T5 , T6 , T7 > > actionExpression )
134
+ {
135
+ Code . NotNull ( actionExpression , nameof ( actionExpression ) ) ;
136
+ return actionExpression ;
137
+ }
106
138
#endregion
107
139
108
140
#region Func<...>
109
141
/// <summary>Helper for type inference from the lambda expression.</summary>
110
142
/// <typeparam name="TResult">The result type.</typeparam>
111
143
/// <param name="funcExpression">The lambda expression.</param>
112
144
/// <returns>The lambda expression passed.</returns>
113
- [ Pure ]
114
- public static Expression < Func < TResult > > Func < TResult > ( Expression < Func < TResult > > funcExpression ) =>
115
- funcExpression ;
145
+ [ Pure , NotNull ]
146
+ public static Expression < Func < TResult > > Func < TResult > (
147
+ [ NotNull ] Expression < Func < TResult > > funcExpression )
148
+ {
149
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
150
+ return funcExpression ;
151
+ }
116
152
117
153
/// <summary>Helper for type inference from the lambda expression.</summary>
118
154
/// <typeparam name="T1">The type of argument #1.</typeparam>
119
155
/// <typeparam name="TResult">The result type.</typeparam>
120
156
/// <param name="funcExpression">The lambda expression.</param>
121
157
/// <returns>The lambda expression passed.</returns>
122
- [ Pure ]
123
- public static Expression < Func < T1 , TResult > > Func < T1 , TResult > ( Expression < Func < T1 , TResult > > funcExpression ) =>
124
- funcExpression ;
158
+ [ Pure , NotNull ]
159
+ public static Expression < Func < T1 , TResult > > Func < T1 , TResult > (
160
+ [ NotNull ] Expression < Func < T1 , TResult > > funcExpression )
161
+ {
162
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
163
+ return funcExpression ;
164
+ }
125
165
126
166
/// <summary>Helper for type inference from the lambda expression.</summary>
127
167
/// <typeparam name="T1">The type of argument #1.</typeparam>
128
168
/// <typeparam name="T2">The type of argument #2.</typeparam>
129
169
/// <typeparam name="TResult">The result type.</typeparam>
130
170
/// <param name="funcExpression">The lambda expression.</param>
131
171
/// <returns>The lambda expression passed.</returns>
132
- [ Pure ]
133
- public static Expression < Func < T1 , T2 , TResult > > Func < T1 , T2 , TResult > ( Expression < Func < T1 , T2 , TResult > > funcExpression ) =>
134
- funcExpression ;
172
+ [ Pure , NotNull ]
173
+ public static Expression < Func < T1 , T2 , TResult > > Func < T1 , T2 , TResult > (
174
+ [ NotNull ] Expression < Func < T1 , T2 , TResult > > funcExpression )
175
+ {
176
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
177
+ return funcExpression ;
178
+ }
135
179
136
180
/// <summary>Helper for type inference from the lambda expression.</summary>
137
181
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -140,9 +184,13 @@ public static Expression<Func<T1, T2, TResult>> Func<T1, T2, TResult>(Expression
140
184
/// <typeparam name="TResult">The result type.</typeparam>
141
185
/// <param name="funcExpression">The lambda expression.</param>
142
186
/// <returns>The lambda expression passed.</returns>
143
- [ Pure ]
144
- public static Expression < Func < T1 , T2 , T3 , TResult > > Func < T1 , T2 , T3 , TResult > ( Expression < Func < T1 , T2 , T3 , TResult > > funcExpression ) =>
145
- funcExpression ;
187
+ [ Pure , NotNull ]
188
+ public static Expression < Func < T1 , T2 , T3 , TResult > > Func < T1 , T2 , T3 , TResult > (
189
+ [ NotNull ] Expression < Func < T1 , T2 , T3 , TResult > > funcExpression )
190
+ {
191
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
192
+ return funcExpression ;
193
+ }
146
194
147
195
/// <summary>Helper for type inference from the lambda expression.</summary>
148
196
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -152,9 +200,13 @@ public static Expression<Func<T1, T2, T3, TResult>> Func<T1, T2, T3, TResult>(Ex
152
200
/// <typeparam name="TResult">The result type.</typeparam>
153
201
/// <param name="funcExpression">The lambda expression.</param>
154
202
/// <returns>The lambda expression passed.</returns>
155
- [ Pure ]
156
- public static Expression < Func < T1 , T2 , T3 , T4 , TResult > > Func < T1 , T2 , T3 , T4 , TResult > ( Expression < Func < T1 , T2 , T3 , T4 , TResult > > funcExpression ) =>
157
- funcExpression ;
203
+ [ Pure , NotNull ]
204
+ public static Expression < Func < T1 , T2 , T3 , T4 , TResult > > Func < T1 , T2 , T3 , T4 , TResult > (
205
+ [ NotNull ] Expression < Func < T1 , T2 , T3 , T4 , TResult > > funcExpression )
206
+ {
207
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
208
+ return funcExpression ;
209
+ }
158
210
159
211
/// <summary>Helper for type inference from the lambda expression.</summary>
160
212
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -165,9 +217,13 @@ public static Expression<Func<T1, T2, T3, T4, TResult>> Func<T1, T2, T3, T4, TRe
165
217
/// <typeparam name="TResult">The result type.</typeparam>
166
218
/// <param name="funcExpression">The lambda expression.</param>
167
219
/// <returns>The lambda expression passed.</returns>
168
- [ Pure ]
169
- public static Expression < Func < T1 , T2 , T3 , T4 , T5 , TResult > > Func < T1 , T2 , T3 , T4 , T5 , TResult > ( Expression < Func < T1 , T2 , T3 , T4 , T5 , TResult > > funcExpression ) =>
170
- funcExpression ;
220
+ [ Pure , NotNull ]
221
+ public static Expression < Func < T1 , T2 , T3 , T4 , T5 , TResult > > Func < T1 , T2 , T3 , T4 , T5 , TResult > (
222
+ [ NotNull ] Expression < Func < T1 , T2 , T3 , T4 , T5 , TResult > > funcExpression )
223
+ {
224
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
225
+ return funcExpression ;
226
+ }
171
227
172
228
/// <summary>Helper for type inference from the lambda expression.</summary>
173
229
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -179,9 +235,13 @@ public static Expression<Func<T1, T2, T3, T4, T5, TResult>> Func<T1, T2, T3, T4,
179
235
/// <typeparam name="TResult">The result type.</typeparam>
180
236
/// <param name="funcExpression">The lambda expression.</param>
181
237
/// <returns>The lambda expression passed.</returns>
182
- [ Pure ]
183
- public static Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , TResult > > Func < T1 , T2 , T3 , T4 , T5 , T6 , TResult > ( Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , TResult > > funcExpression ) =>
184
- funcExpression ;
238
+ [ Pure , NotNull ]
239
+ public static Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , TResult > > Func < T1 , T2 , T3 , T4 , T5 , T6 , TResult > (
240
+ [ NotNull ] Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , TResult > > funcExpression )
241
+ {
242
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
243
+ return funcExpression ;
244
+ }
185
245
186
246
/// <summary>Helper for type inference from the lambda expression.</summary>
187
247
/// <typeparam name="T1">The type of argument #1.</typeparam>
@@ -194,9 +254,13 @@ public static Expression<Func<T1, T2, T3, T4, T5, T6, TResult>> Func<T1, T2, T3,
194
254
/// <typeparam name="TResult">The result type.</typeparam>
195
255
/// <param name="funcExpression">The lambda expression.</param>
196
256
/// <returns>The lambda expression passed.</returns>
197
- [ Pure ]
198
- public static Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , T7 , TResult > > Func < T1 , T2 , T3 , T4 , T5 , T6 , T7 , TResult > ( Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , T7 , TResult > > funcExpression ) =>
199
- funcExpression ;
257
+ [ Pure , NotNull ]
258
+ public static Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , T7 , TResult > > Func < T1 , T2 , T3 , T4 , T5 , T6 , T7 , TResult > (
259
+ [ NotNull ] Expression < Func < T1 , T2 , T3 , T4 , T5 , T6 , T7 , TResult > > funcExpression )
260
+ {
261
+ Code . NotNull ( funcExpression , nameof ( funcExpression ) ) ;
262
+ return funcExpression ;
263
+ }
200
264
#endregion
201
265
}
202
266
}
0 commit comments