Commit cfd1ecf
committed
expand: add BracesSeq with a config parameter and error returns
BracesSeq is a streaming, error-returning replacement for Braces.
A sequence brace whose count exceeds an internal limit yields an
error rather than taking too much memory or time.
FieldsSeq now drives BracesSeq, so the gosh interpreter surfaces
the error to stderr like bash does. An interp smoke test covers
the end-to-end path.
Braces is now deprecated with a short explanation why.1 parent 4d2f0ee commit cfd1ecf
4 files changed
Lines changed: 168 additions & 58 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
| 8 | + | |
7 | 9 | | |
8 | 10 | | |
9 | 11 | | |
| |||
15 | 17 | | |
16 | 18 | | |
17 | 19 | | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
18 | 23 | | |
19 | 24 | | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
20 | 62 | | |
21 | 63 | | |
22 | 64 | | |
23 | 65 | | |
24 | 66 | | |
25 | 67 | | |
26 | 68 | | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
27 | 78 | | |
28 | | - | |
29 | | - | |
30 | 79 | | |
31 | 80 | | |
32 | 81 | | |
33 | 82 | | |
| 83 | + | |
34 | 84 | | |
35 | 85 | | |
36 | 86 | | |
37 | 87 | | |
38 | | - | |
39 | | - | |
| 88 | + | |
| 89 | + | |
40 | 90 | | |
41 | 91 | | |
42 | 92 | | |
| |||
49 | 99 | | |
50 | 100 | | |
51 | 101 | | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
| 102 | + | |
60 | 103 | | |
61 | | - | |
62 | 104 | | |
63 | 105 | | |
64 | 106 | | |
65 | 107 | | |
66 | 108 | | |
67 | 109 | | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
72 | 113 | | |
73 | | - | |
74 | | - | |
75 | 114 | | |
76 | | - | |
| 115 | + | |
77 | 116 | | |
78 | 117 | | |
79 | 118 | | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
85 | 122 | | |
86 | | - | |
87 | 123 | | |
88 | | - | |
| 124 | + | |
89 | 125 | | |
90 | | - | |
| 126 | + | |
91 | 127 | | |
92 | 128 | | |
93 | 129 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
185 | 185 | | |
186 | 186 | | |
187 | 187 | | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
188 | 242 | | |
189 | 243 | | |
190 | 244 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
460 | 460 | | |
461 | 461 | | |
462 | 462 | | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
463 | 497 | | |
464 | 498 | | |
465 | | - | |
466 | | - | |
467 | | - | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
468 | 504 | | |
469 | | - | |
470 | | - | |
| 505 | + | |
471 | 506 | | |
472 | 507 | | |
473 | 508 | | |
474 | 509 | | |
475 | | - | |
476 | | - | |
477 | | - | |
478 | | - | |
479 | | - | |
480 | | - | |
481 | | - | |
482 | | - | |
483 | | - | |
484 | | - | |
485 | | - | |
486 | | - | |
487 | | - | |
488 | | - | |
489 | | - | |
490 | | - | |
491 | | - | |
492 | | - | |
493 | | - | |
494 | | - | |
495 | | - | |
496 | | - | |
497 | | - | |
498 | | - | |
499 | | - | |
| 510 | + | |
| 511 | + | |
500 | 512 | | |
501 | 513 | | |
502 | 514 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3352 | 3352 | | |
3353 | 3353 | | |
3354 | 3354 | | |
| 3355 | + | |
| 3356 | + | |
| 3357 | + | |
| 3358 | + | |
| 3359 | + | |
| 3360 | + | |
| 3361 | + | |
| 3362 | + | |
3355 | 3363 | | |
3356 | 3364 | | |
3357 | 3365 | | |
| |||
0 commit comments