sh-ast 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analyze/enumerate-commands.d.ts +7 -1
- package/dist/analyze/enumerate-commands.d.ts.map +1 -1
- package/dist/analyze/enumerate-commands.js +7 -1
- package/dist/analyze/enumerate-commands.js.map +1 -1
- package/dist/analyze/index.d.ts +12 -4
- package/dist/analyze/index.d.ts.map +1 -1
- package/dist/analyze/index.js +18 -15
- package/dist/analyze/index.js.map +1 -1
- package/dist/analyze/resolve-argv0.d.ts +335 -0
- package/dist/analyze/resolve-argv0.d.ts.map +1 -0
- package/dist/analyze/resolve-argv0.js +510 -0
- package/dist/analyze/resolve-argv0.js.map +1 -0
- package/dist/analyze/resolve-word.d.ts +5 -0
- package/dist/analyze/resolve-word.d.ts.map +1 -1
- package/dist/analyze/resolve-word.js +5 -0
- package/dist/analyze/resolve-word.js.map +1 -1
- package/dist/analyze.d.ts +592 -211
- package/dist/errors.d.ts +81 -16
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +90 -17
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/parse-depth-guard.d.ts +11 -0
- package/dist/parse-depth-guard.d.ts.map +1 -0
- package/dist/parse-depth-guard.js +633 -0
- package/dist/parse-depth-guard.js.map +1 -0
- package/dist/parse.d.ts +7 -2
- package/dist/parse.d.ts.map +1 -1
- package/dist/parse.js +15 -8
- package/dist/parse.js.map +1 -1
- package/dist/sh-ast.d.ts +165 -45
- package/dist/types.d.ts +5 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/wasm-instance.js +3 -3
- package/dist/wasm-instance.js.map +1 -1
- package/generated/node-types.d.ts +44 -0
- package/package.json +1 -1
|
@@ -13,6 +13,7 @@ export interface ShArithmCmdNode {
|
|
|
13
13
|
readonly end: { readonly line: number; readonly column: number };
|
|
14
14
|
};
|
|
15
15
|
[field: string]: unknown;
|
|
16
|
+
readonly unsigned?: boolean;
|
|
16
17
|
readonly x?: ShArithmExprNode;
|
|
17
18
|
}
|
|
18
19
|
|
|
@@ -29,6 +30,8 @@ export interface ShArithmExpNode {
|
|
|
29
30
|
readonly end: { readonly line: number; readonly column: number };
|
|
30
31
|
};
|
|
31
32
|
[field: string]: unknown;
|
|
33
|
+
readonly bracket?: boolean;
|
|
34
|
+
readonly unsigned?: boolean;
|
|
32
35
|
readonly x?: ShArithmExprNode;
|
|
33
36
|
}
|
|
34
37
|
|
|
@@ -80,8 +83,10 @@ export interface ShAssignNode {
|
|
|
80
83
|
readonly end: { readonly line: number; readonly column: number };
|
|
81
84
|
};
|
|
82
85
|
[field: string]: unknown;
|
|
86
|
+
readonly append?: boolean;
|
|
83
87
|
readonly array?: ShArrayExprNode;
|
|
84
88
|
readonly index?: ShArithmExprNode;
|
|
89
|
+
readonly naked?: boolean;
|
|
85
90
|
readonly name?: ShLitNode;
|
|
86
91
|
readonly value?: ShWordNode;
|
|
87
92
|
}
|
|
@@ -99,6 +104,7 @@ export interface ShBinaryArithmNode {
|
|
|
99
104
|
readonly end: { readonly line: number; readonly column: number };
|
|
100
105
|
};
|
|
101
106
|
[field: string]: unknown;
|
|
107
|
+
readonly op?: number;
|
|
102
108
|
readonly x?: ShArithmExprNode;
|
|
103
109
|
readonly y?: ShArithmExprNode;
|
|
104
110
|
}
|
|
@@ -116,6 +122,7 @@ export interface ShBinaryCmdNode {
|
|
|
116
122
|
readonly end: { readonly line: number; readonly column: number };
|
|
117
123
|
};
|
|
118
124
|
[field: string]: unknown;
|
|
125
|
+
readonly op?: number;
|
|
119
126
|
readonly x?: ShStmtNode;
|
|
120
127
|
readonly y?: ShStmtNode;
|
|
121
128
|
}
|
|
@@ -133,6 +140,7 @@ export interface ShBinaryTestNode {
|
|
|
133
140
|
readonly end: { readonly line: number; readonly column: number };
|
|
134
141
|
};
|
|
135
142
|
[field: string]: unknown;
|
|
143
|
+
readonly op?: number;
|
|
136
144
|
readonly x?: ShTestExprNode;
|
|
137
145
|
readonly y?: ShTestExprNode;
|
|
138
146
|
}
|
|
@@ -168,6 +176,7 @@ export interface ShBraceExpNode {
|
|
|
168
176
|
};
|
|
169
177
|
[field: string]: unknown;
|
|
170
178
|
readonly elems: readonly ShWordNode[];
|
|
179
|
+
readonly sequence?: boolean;
|
|
171
180
|
}
|
|
172
181
|
|
|
173
182
|
/**
|
|
@@ -218,6 +227,7 @@ export interface ShCaseClauseNode {
|
|
|
218
227
|
readonly end: { readonly line: number; readonly column: number };
|
|
219
228
|
};
|
|
220
229
|
[field: string]: unknown;
|
|
230
|
+
readonly braces?: boolean;
|
|
221
231
|
readonly items: readonly ShCaseItemNode[];
|
|
222
232
|
readonly last: readonly ShCommentNode[];
|
|
223
233
|
readonly word?: ShWordNode;
|
|
@@ -238,6 +248,7 @@ export interface ShCaseItemNode {
|
|
|
238
248
|
[field: string]: unknown;
|
|
239
249
|
readonly comments: readonly ShCommentNode[];
|
|
240
250
|
readonly last: readonly ShCommentNode[];
|
|
251
|
+
readonly op?: number;
|
|
241
252
|
readonly patterns: readonly ShWordNode[];
|
|
242
253
|
readonly stmts: readonly ShStmtNode[];
|
|
243
254
|
}
|
|
@@ -255,8 +266,11 @@ export interface ShCmdSubstNode {
|
|
|
255
266
|
readonly end: { readonly line: number; readonly column: number };
|
|
256
267
|
};
|
|
257
268
|
[field: string]: unknown;
|
|
269
|
+
readonly backquotes?: boolean;
|
|
258
270
|
readonly last: readonly ShCommentNode[];
|
|
271
|
+
readonly replyvar?: boolean;
|
|
259
272
|
readonly stmts: readonly ShStmtNode[];
|
|
273
|
+
readonly tempfile?: boolean;
|
|
260
274
|
}
|
|
261
275
|
|
|
262
276
|
/**
|
|
@@ -272,6 +286,7 @@ export interface ShCommentNode {
|
|
|
272
286
|
readonly end: { readonly line: number; readonly column: number };
|
|
273
287
|
};
|
|
274
288
|
[field: string]: unknown;
|
|
289
|
+
readonly text?: string;
|
|
275
290
|
}
|
|
276
291
|
|
|
277
292
|
/**
|
|
@@ -304,6 +319,7 @@ export interface ShDblQuotedNode {
|
|
|
304
319
|
readonly end: { readonly line: number; readonly column: number };
|
|
305
320
|
};
|
|
306
321
|
[field: string]: unknown;
|
|
322
|
+
readonly dollar?: boolean;
|
|
307
323
|
readonly parts: readonly ShWordPartNode[];
|
|
308
324
|
}
|
|
309
325
|
|
|
@@ -337,6 +353,7 @@ export interface ShExpansionNode {
|
|
|
337
353
|
readonly end: { readonly line: number; readonly column: number };
|
|
338
354
|
};
|
|
339
355
|
[field: string]: unknown;
|
|
356
|
+
readonly op?: number;
|
|
340
357
|
readonly word?: ShWordNode;
|
|
341
358
|
}
|
|
342
359
|
|
|
@@ -353,6 +370,7 @@ export interface ShExtGlobNode {
|
|
|
353
370
|
readonly end: { readonly line: number; readonly column: number };
|
|
354
371
|
};
|
|
355
372
|
[field: string]: unknown;
|
|
373
|
+
readonly op?: number;
|
|
356
374
|
readonly pattern?: ShLitNode;
|
|
357
375
|
}
|
|
358
376
|
|
|
@@ -370,6 +388,7 @@ export interface ShFileNode {
|
|
|
370
388
|
};
|
|
371
389
|
[field: string]: unknown;
|
|
372
390
|
readonly last: readonly ShCommentNode[];
|
|
391
|
+
readonly name?: string;
|
|
373
392
|
readonly stmts: readonly ShStmtNode[];
|
|
374
393
|
}
|
|
375
394
|
|
|
@@ -403,9 +422,11 @@ export interface ShForClauseNode {
|
|
|
403
422
|
readonly end: { readonly line: number; readonly column: number };
|
|
404
423
|
};
|
|
405
424
|
[field: string]: unknown;
|
|
425
|
+
readonly braces?: boolean;
|
|
406
426
|
readonly do: readonly ShStmtNode[];
|
|
407
427
|
readonly dolast: readonly ShCommentNode[];
|
|
408
428
|
readonly loop?: ShLoopNode;
|
|
429
|
+
readonly select?: boolean;
|
|
409
430
|
}
|
|
410
431
|
|
|
411
432
|
/**
|
|
@@ -424,6 +445,8 @@ export interface ShFuncDeclNode {
|
|
|
424
445
|
readonly body?: ShStmtNode;
|
|
425
446
|
readonly name?: ShLitNode;
|
|
426
447
|
readonly names: readonly ShLitNode[];
|
|
448
|
+
readonly parens?: boolean;
|
|
449
|
+
readonly rsrvword?: boolean;
|
|
427
450
|
}
|
|
428
451
|
|
|
429
452
|
/**
|
|
@@ -476,6 +499,7 @@ export interface ShLitNode {
|
|
|
476
499
|
readonly end: { readonly line: number; readonly column: number };
|
|
477
500
|
};
|
|
478
501
|
[field: string]: unknown;
|
|
502
|
+
readonly value?: string;
|
|
479
503
|
}
|
|
480
504
|
|
|
481
505
|
/**
|
|
@@ -491,14 +515,20 @@ export interface ShParamExpNode {
|
|
|
491
515
|
readonly end: { readonly line: number; readonly column: number };
|
|
492
516
|
};
|
|
493
517
|
[field: string]: unknown;
|
|
518
|
+
readonly excl?: boolean;
|
|
494
519
|
readonly exp?: ShExpansionNode;
|
|
495
520
|
readonly flags?: ShLitNode;
|
|
496
521
|
readonly index?: ShArithmExprNode;
|
|
522
|
+
readonly isset?: boolean;
|
|
523
|
+
readonly length?: boolean;
|
|
497
524
|
readonly modifiers: readonly ShLitNode[];
|
|
525
|
+
readonly names?: number;
|
|
498
526
|
readonly nestedparam?: ShWordPartNode;
|
|
499
527
|
readonly param?: ShLitNode;
|
|
500
528
|
readonly repl?: ShReplaceNode;
|
|
529
|
+
readonly short?: boolean;
|
|
501
530
|
readonly slice?: ShSliceNode;
|
|
531
|
+
readonly width?: boolean;
|
|
502
532
|
}
|
|
503
533
|
|
|
504
534
|
/**
|
|
@@ -547,6 +577,7 @@ export interface ShProcSubstNode {
|
|
|
547
577
|
};
|
|
548
578
|
[field: string]: unknown;
|
|
549
579
|
readonly last: readonly ShCommentNode[];
|
|
580
|
+
readonly op?: number;
|
|
550
581
|
readonly stmts: readonly ShStmtNode[];
|
|
551
582
|
}
|
|
552
583
|
|
|
@@ -565,6 +596,7 @@ export interface ShRedirectNode {
|
|
|
565
596
|
[field: string]: unknown;
|
|
566
597
|
readonly hdoc?: ShWordNode;
|
|
567
598
|
readonly n?: ShLitNode;
|
|
599
|
+
readonly op?: number;
|
|
568
600
|
readonly word?: ShWordNode;
|
|
569
601
|
}
|
|
570
602
|
|
|
@@ -581,6 +613,7 @@ export interface ShReplaceNode {
|
|
|
581
613
|
readonly end: { readonly line: number; readonly column: number };
|
|
582
614
|
};
|
|
583
615
|
[field: string]: unknown;
|
|
616
|
+
readonly all?: boolean;
|
|
584
617
|
readonly orig?: ShWordNode;
|
|
585
618
|
readonly with?: ShWordNode;
|
|
586
619
|
}
|
|
@@ -598,6 +631,8 @@ export interface ShSglQuotedNode {
|
|
|
598
631
|
readonly end: { readonly line: number; readonly column: number };
|
|
599
632
|
};
|
|
600
633
|
[field: string]: unknown;
|
|
634
|
+
readonly dollar?: boolean;
|
|
635
|
+
readonly value?: string;
|
|
601
636
|
}
|
|
602
637
|
|
|
603
638
|
/**
|
|
@@ -630,8 +665,12 @@ export interface ShStmtNode {
|
|
|
630
665
|
readonly end: { readonly line: number; readonly column: number };
|
|
631
666
|
};
|
|
632
667
|
[field: string]: unknown;
|
|
668
|
+
readonly background?: boolean;
|
|
633
669
|
readonly cmd?: ShCommandNode;
|
|
634
670
|
readonly comments: readonly ShCommentNode[];
|
|
671
|
+
readonly coprocess?: boolean;
|
|
672
|
+
readonly disown?: boolean;
|
|
673
|
+
readonly negated?: boolean;
|
|
635
674
|
readonly redirs: readonly ShRedirectNode[];
|
|
636
675
|
}
|
|
637
676
|
|
|
@@ -698,6 +737,7 @@ export interface ShTimeClauseNode {
|
|
|
698
737
|
readonly end: { readonly line: number; readonly column: number };
|
|
699
738
|
};
|
|
700
739
|
[field: string]: unknown;
|
|
740
|
+
readonly posixformat?: boolean;
|
|
701
741
|
readonly stmt?: ShStmtNode;
|
|
702
742
|
}
|
|
703
743
|
|
|
@@ -714,6 +754,8 @@ export interface ShUnaryArithmNode {
|
|
|
714
754
|
readonly end: { readonly line: number; readonly column: number };
|
|
715
755
|
};
|
|
716
756
|
[field: string]: unknown;
|
|
757
|
+
readonly op?: number;
|
|
758
|
+
readonly post?: boolean;
|
|
717
759
|
readonly x?: ShArithmExprNode;
|
|
718
760
|
}
|
|
719
761
|
|
|
@@ -730,6 +772,7 @@ export interface ShUnaryTestNode {
|
|
|
730
772
|
readonly end: { readonly line: number; readonly column: number };
|
|
731
773
|
};
|
|
732
774
|
[field: string]: unknown;
|
|
775
|
+
readonly op?: number;
|
|
733
776
|
readonly x?: ShTestExprNode;
|
|
734
777
|
}
|
|
735
778
|
|
|
@@ -750,6 +793,7 @@ export interface ShWhileClauseNode {
|
|
|
750
793
|
readonly condlast: readonly ShCommentNode[];
|
|
751
794
|
readonly do: readonly ShStmtNode[];
|
|
752
795
|
readonly dolast: readonly ShCommentNode[];
|
|
796
|
+
readonly until?: boolean;
|
|
753
797
|
}
|
|
754
798
|
|
|
755
799
|
/**
|
package/package.json
CHANGED