Commit 506cb2f
more flexible error reporting for SymbolResult (#2033)
* remove SymbolResult.ErrorMessage, use the new SymbolResult.AddError
* use all available information when creating error message for ArgumentConversionResult
* test coverage improvement (multiple errors for one result)
* refactor:
* merge validation and default values creation into one (20% perf gain on simple scenarios)
* move CommandResult validation logic to CommandResult type
* simplify command handler validation
* don't search for ArgumentResult when we know if up front
* re-implement OnlyTake, remove some virtual properties and get all the tests passing again
* reduce the number of ctors and methods
* remove null checks as it's internal API and we are covered by nullable annotations
* solve the TODO: use Enum.TryParse when available
* with recent changes it's guaranteed that every OptionResult has corresponding ArgumentResult
Co-authored-by: Jon Sequeira <[email protected]>1 parent 6524142 commit 506cb2f
File tree
39 files changed
+680
-772
lines changed- src
- System.CommandLine.ApiCompatibility.Tests
- System.CommandLine.NamingConventionBinder
- System.CommandLine.Tests
- System.CommandLine
- Binding
- Help
- Parsing
- Properties
- xlf
39 files changed
+680
-772
lines changedLines changed: 4 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
146 | 146 | | |
147 | 147 | | |
148 | 148 | | |
| 149 | + | |
149 | 150 | | |
| 151 | + | |
150 | 152 | | |
151 | 153 | | |
152 | 154 | | |
| |||
386 | 388 | | |
387 | 389 | | |
388 | 390 | | |
| 391 | + | |
389 | 392 | | |
390 | 393 | | |
391 | 394 | | |
| |||
423 | 426 | | |
424 | 427 | | |
425 | 428 | | |
426 | | - | |
427 | 429 | | |
428 | 430 | | |
429 | 431 | | |
| 432 | + | |
430 | 433 | | |
431 | 434 | | |
432 | 435 | | |
| |||
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
132 | 132 | | |
133 | 133 | | |
134 | 134 | | |
135 | | - | |
| 135 | + | |
136 | 136 | | |
137 | 137 | | |
138 | 138 | | |
| |||
277 | 277 | | |
278 | 278 | | |
279 | 279 | | |
280 | | - | |
| 280 | + | |
281 | 281 | | |
282 | 282 | | |
283 | 283 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
124 | 124 | | |
125 | 125 | | |
126 | 126 | | |
127 | | - | |
| 127 | + | |
128 | 128 | | |
129 | 129 | | |
130 | 130 | | |
| |||
143 | 143 | | |
144 | 144 | | |
145 | 145 | | |
146 | | - | |
| 146 | + | |
147 | 147 | | |
148 | 148 | | |
149 | 149 | | |
| |||
164 | 164 | | |
165 | 165 | | |
166 | 166 | | |
167 | | - | |
| 167 | + | |
168 | 168 | | |
169 | 169 | | |
170 | 170 | | |
| |||
389 | 389 | | |
390 | 390 | | |
391 | 391 | | |
392 | | - | |
| 392 | + | |
393 | 393 | | |
394 | 394 | | |
395 | 395 | | |
396 | 396 | | |
397 | 397 | | |
398 | 398 | | |
399 | 399 | | |
400 | | - | |
| 400 | + | |
401 | 401 | | |
402 | 402 | | |
403 | 403 | | |
| |||
426 | 426 | | |
427 | 427 | | |
428 | 428 | | |
429 | | - | |
| 429 | + | |
430 | 430 | | |
431 | 431 | | |
432 | 432 | | |
| |||
446 | 446 | | |
447 | 447 | | |
448 | 448 | | |
449 | | - | |
| 449 | + | |
450 | 450 | | |
451 | 451 | | |
452 | 452 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
287 | 287 | | |
288 | 288 | | |
289 | 289 | | |
290 | | - | |
| 290 | + | |
291 | 291 | | |
292 | 292 | | |
293 | 293 | | |
294 | | - | |
| 294 | + | |
295 | 295 | | |
296 | 296 | | |
297 | 297 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
62 | | - | |
| 62 | + | |
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
70 | 74 | | |
71 | 75 | | |
72 | 76 | | |
| |||
79 | 83 | | |
80 | 84 | | |
81 | 85 | | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
89 | 96 | | |
90 | 97 | | |
91 | 98 | | |
| |||
171 | 178 | | |
172 | 179 | | |
173 | 180 | | |
174 | | - | |
| 181 | + | |
175 | 182 | | |
176 | 183 | | |
177 | 184 | | |
| |||
185 | 192 | | |
186 | 193 | | |
187 | 194 | | |
188 | | - | |
189 | | - | |
| 195 | + | |
| 196 | + | |
190 | 197 | | |
191 | | - | |
192 | | - | |
193 | | - | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
194 | 206 | | |
195 | 207 | | |
196 | 208 | | |
| |||
334 | 346 | | |
335 | 347 | | |
336 | 348 | | |
337 | | - | |
| 349 | + | |
338 | 350 | | |
339 | 351 | | |
340 | 352 | | |
| |||
358 | 370 | | |
359 | 371 | | |
360 | 372 | | |
361 | | - | |
| 373 | + | |
362 | 374 | | |
363 | 375 | | |
364 | 376 | | |
| |||
385 | 397 | | |
386 | 398 | | |
387 | 399 | | |
388 | | - | |
| 400 | + | |
389 | 401 | | |
390 | 402 | | |
391 | 403 | | |
| |||
449 | 461 | | |
450 | 462 | | |
451 | 463 | | |
452 | | - | |
| 464 | + | |
453 | 465 | | |
454 | 466 | | |
455 | 467 | | |
| |||
484 | 496 | | |
485 | 497 | | |
486 | 498 | | |
487 | | - | |
| 499 | + | |
488 | 500 | | |
489 | 501 | | |
490 | 502 | | |
| |||
514 | 526 | | |
515 | 527 | | |
516 | 528 | | |
517 | | - | |
| 529 | + | |
518 | 530 | | |
519 | 531 | | |
520 | 532 | | |
| |||
541 | 553 | | |
542 | 554 | | |
543 | 555 | | |
544 | | - | |
| 556 | + | |
545 | 557 | | |
546 | 558 | | |
547 | 559 | | |
| |||
565 | 577 | | |
566 | 578 | | |
567 | 579 | | |
568 | | - | |
| 580 | + | |
569 | 581 | | |
570 | 582 | | |
571 | 583 | | |
| |||
1196 | 1208 | | |
1197 | 1209 | | |
1198 | 1210 | | |
1199 | | - | |
| 1211 | + | |
1200 | 1212 | | |
1201 | 1213 | | |
1202 | 1214 | | |
| |||
1214 | 1226 | | |
1215 | 1227 | | |
1216 | 1228 | | |
1217 | | - | |
| 1229 | + | |
1218 | 1230 | | |
1219 | 1231 | | |
1220 | 1232 | | |
| |||
1237 | 1249 | | |
1238 | 1250 | | |
1239 | 1251 | | |
1240 | | - | |
| 1252 | + | |
1241 | 1253 | | |
1242 | 1254 | | |
1243 | 1255 | | |
| |||
1262 | 1274 | | |
1263 | 1275 | | |
1264 | 1276 | | |
1265 | | - | |
| 1277 | + | |
1266 | 1278 | | |
1267 | 1279 | | |
1268 | 1280 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
107 | 107 | | |
108 | 108 | | |
109 | 109 | | |
| 110 | + | |
| 111 | + | |
110 | 112 | | |
111 | 113 | | |
112 | 114 | | |
| |||
0 commit comments