@poe-platform/safe-bash 0.1.676 → 0.1.677

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.
@@ -31,6 +31,6 @@ export interface ArithmeticProgram {
31
31
  }
32
32
  export declare function prepareArithmetic(source: string, budget?: ParseBudget): ArithmeticProgram;
33
33
  export declare function parseArithmetic(source: string, offset?: number, budget?: ParseBudget): Arithmetic;
34
- export declare function arithmeticEnd(source: string, start: number): number;
34
+ export declare function arithmeticEnd(source: string, start: number, allowSubshell?: boolean): number;
35
35
  export declare function evaluateArithmetic(program: ArithmeticProgram, variables: Record<string, string>, budget?: ParseBudget): bigint;
36
36
  //# sourceMappingURL=arithmetic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"arithmetic.d.ts","sourceRoot":"","sources":["../../src/shell/arithmetic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,UAAU,GAAG,CACrB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAC1E;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GACzE;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,SAAS,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,UAAU,CAAA;CAAE,CAClF,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvB,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC;CACnC;AAMD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,cAAoB,GAAG,iBAAiB,CAQ/F;AA4BD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,SAAI,EAAE,MAAM,cAAoB,GAAG,UAAU,CAqElG;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAWnE;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,cAAoB,GAAG,MAAM,CA4GpI"}
1
+ {"version":3,"file":"arithmetic.d.ts","sourceRoot":"","sources":["../../src/shell/arithmetic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,UAAU,GAAG,CACrB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAC1E;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GACzE;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,SAAS,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,UAAU,CAAA;CAAE,CAClF,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvB,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC;CACnC;AAMD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,cAAoB,GAAG,iBAAiB,CAQ/F;AA4BD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,SAAI,EAAE,MAAM,cAAoB,GAAG,UAAU,CAqElG;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,UAAQ,GAAG,MAAM,CAyC1F;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,cAAoB,GAAG,MAAM,CA4GpI"}
@@ -146,17 +146,52 @@ export function parseArithmetic(source, offset = 0, budget = new ParseBudget())
146
146
  error("Unexpected arithmetic token");
147
147
  return tree;
148
148
  }
149
- export function arithmeticEnd(source, start) {
149
+ export function arithmeticEnd(source, start, allowSubshell = false) {
150
150
  let depth = 0;
151
+ let quote = "";
152
+ let ansiQuote = false;
153
+ const quotedSubstitutions = [];
151
154
  for (let position = start; position < source.length; position++) {
152
155
  const character = source[position];
156
+ if (allowSubshell) {
157
+ if (character === "\\" && (quote !== "'" || ansiQuote)) {
158
+ position++;
159
+ continue;
160
+ }
161
+ if (quote === '"' && character === "$" && source[position + 1] === "(") {
162
+ if (quotedSubstitutions.length >= 64)
163
+ throw new ShellSyntaxError("Syntax nesting exceeds 64", position);
164
+ quotedSubstitutions.push(depth);
165
+ depth++;
166
+ position++;
167
+ quote = "";
168
+ continue;
169
+ }
170
+ if (quote) {
171
+ if (character === quote)
172
+ quote = "";
173
+ continue;
174
+ }
175
+ if (character === "'" || character === '"' || character === "`") {
176
+ quote = character;
177
+ ansiQuote = character === "'" && source[position - 1] === "$";
178
+ continue;
179
+ }
180
+ }
153
181
  if (character === "(")
154
182
  depth++;
155
183
  if (character === ")") {
156
184
  if (depth === 0 && source[position + 1] === ")")
157
185
  return position;
158
- if (--depth < 0)
186
+ if (--depth < 0) {
187
+ if (allowSubshell)
188
+ return -1;
159
189
  break;
190
+ }
191
+ if (quotedSubstitutions.at(-1) === depth) {
192
+ quotedSubstitutions.pop();
193
+ quote = '"';
194
+ }
160
195
  }
161
196
  }
162
197
  throw new ShellSyntaxError("Unterminated arithmetic expression", start);
@@ -1 +1 @@
1
- {"version":3,"file":"arithmetic.js","sourceRoot":"","sources":["../../src/shell/arithmetic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arithmetic.js","sourceRoot":"","sources":["../../src/shell/arithmetic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAgBhD,MAAM,iBAAkB,SAAQ,KAAK;IACG;IAAtC,YAAY,OAAe,EAAW,MAAc;QAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAAjC,WAAM,GAAN,MAAM,CAAQ;IAAoB,CAAC;CAC1E;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,MAAM,GAAG,IAAI,WAAW,EAAE;IAC1E,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;IAAC,CAAC;IACpE,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,CAAC,KAAK,YAAY,gBAAgB,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,MAAM,KAAK,CAAC;QACvF,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAA2B;IACzC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;IAC3D,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;IAC7C,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;IAChD,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;IACtD,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;CAC1E,CAAC;AAEF,SAAS,OAAO,CAAC,IAAY;IAC3B,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjE,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;IAC/E,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,EAAE;QAAE,MAAM,IAAI,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;IACjF,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,kEAAkE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC3I,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM,IAAI,gBAAgB,CAAC,+BAA+B,CAAC,CAAC;QAC5F,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,WAAW,EAAE;IACpF,MAAM,MAAM,GAAwC,EAAE,CAAC;IACvD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,OAAO,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAE,CAAC,EAAE,CAAC;YAAC,QAAQ,EAAE,CAAC;YAAC,SAAS;QAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,8IAA8I,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/L,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,gBAAgB,CAAC,8BAA8B,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;QAC1F,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC,CAAC;QAClD,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IACD,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IAClD,MAAM,KAAK,GAAG,CAAC,OAAe,EAAS,EAAE,GAAG,MAAM,IAAI,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACrI,MAAM,UAAU,GAAG,CAAC,OAAO,GAAG,CAAC,EAAc,EAAE;QAC7C,IAAI,EAAE,KAAK,GAAG,EAAE;YAAE,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACzD,IAAI,IAAgB,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC/D,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;QACxB,MAAM,EAAE,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;gBAAE,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAChH,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACrE,CAAC;aAAM,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YACzB,IAAI,GAAG,UAAU,EAAE,CAAC;YACpB,IAAI,OAAO,EAAE,KAAK,GAAG;gBAAE,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAChE,MAAM,EAAE,CAAC;QACX,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAAC,CAAC;aAC1F,CAAC;YACJ,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBAAC,IAAI,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAAC,CAAC;YAC7E,MAAM,CAAC;gBAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAAC,CAAC;QAChD,CAAC;QACD,IAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QACpB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;YAC3B,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAC3C,IAAI,IAAK,CAAC,IAAI,KAAK,MAAM;oBAAE,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC9E,MAAM,EAAE,CAAC;gBACT,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;gBACzE,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACjF,IAAI,QAAQ,GAAG,OAAO,IAAI,QAAQ,KAAK,CAAC;gBAAE,MAAM;YAChD,MAAM,EAAE,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;gBACzB,IAAI,OAAO,EAAE,KAAK,GAAG;oBAAE,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBAC1D,MAAM,EAAE,CAAC;gBACT,IAAI,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,IAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;YAClF,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,QAAQ,KAAK,CAAC,CAAC;gBAClC,IAAI,UAAU,IAAI,IAAK,CAAC,IAAI,KAAK,MAAM;oBAAE,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC5F,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,GAAG,CAAC,UAAU,IAAI,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/E,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YACjE,CAAC;QACH,CAAC;QACD,KAAK,EAAE,CAAC;QACR,OAAO,IAAK,CAAC;IACf,CAAC,CAAC;IACF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;IAC1B,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM;QAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAa,EAAE,aAAa,GAAG,KAAK;IAChF,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,mBAAmB,GAAa,EAAE,CAAC;IACzC,KAAK,IAAI,QAAQ,GAAG,KAAK,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC;QAChE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC;gBAAC,QAAQ,EAAE,CAAC;gBAAC,SAAS;YAAC,CAAC;YACjF,IAAI,KAAK,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACvE,IAAI,mBAAmB,CAAC,MAAM,IAAI,EAAE;oBAAE,MAAM,IAAI,gBAAgB,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAC;gBACxG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChC,KAAK,EAAE,CAAC;gBACR,QAAQ,EAAE,CAAC;gBACX,KAAK,GAAG,EAAE,CAAC;gBACX,SAAS;YACX,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,SAAS,KAAK,KAAK;oBAAE,KAAK,GAAG,EAAE,CAAC;gBACpC,SAAS;YACX,CAAC;YACD,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gBAChE,KAAK,GAAG,SAAS,CAAC;gBAClB,SAAS,GAAG,SAAS,KAAK,GAAG,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC9D,SAAS;YACX,CAAC;QACH,CAAC;QACD,IAAI,SAAS,KAAK,GAAG;YAAE,KAAK,EAAE,CAAC;QAC/B,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YACtB,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG;gBAAE,OAAO,QAAQ,CAAC;YACjE,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC;gBAChB,IAAI,aAAa;oBAAE,OAAO,CAAC,CAAC,CAAC;gBAC7B,MAAM;YACR,CAAC;YACD,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;gBACzC,mBAAmB,CAAC,GAAG,EAAE,CAAC;gBAC1B,KAAK,GAAG,GAAG,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAA0B,EAAE,SAAiC,EAAE,MAAM,GAAG,IAAI,WAAW,EAAE;IAC1H,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,CAAC,QAAgB,EAAE,IAAY,EAAE,KAAa,EAAE,MAAc,EAAU,EAAE;QACvF,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YAC9B,KAAK,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YAC9B,KAAK,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YAC9B,KAAK,GAAG;gBAAE,IAAI,KAAK,KAAK,EAAE;oBAAE,MAAM,IAAI,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YACtG,KAAK,GAAG;gBAAE,IAAI,KAAK,KAAK,EAAE;oBAAE,MAAM,IAAI,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YACtG,KAAK,IAAI,CAAC,CAAC,CAAC;gBACV,IAAI,KAAK,GAAG,EAAE;oBAAE,MAAM,IAAI,iBAAiB,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;gBAC5E,IAAI,MAAM,GAAG,EAAE,CAAC;gBAChB,IAAI,IAAI,GAAG,IAAI,CAAC;gBAChB,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,OAAO,QAAQ,EAAE,CAAC;oBAChB,IAAI,QAAQ,GAAG,EAAE;wBAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;oBAC7D,QAAQ,KAAK,EAAE,CAAC;oBAChB,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC;gBACxC,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;YACxC,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;YACxC,KAAK,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YAC9B,KAAK,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YAC9B,KAAK,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC;YAC9B,KAAK,IAAI,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;YACzC,KAAK,IAAI,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;YACzC,KAAK,GAAG,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;YACtC,KAAK,IAAI,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;YACxC,KAAK,GAAG,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;YACtC,KAAK,IAAI,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;YACxC,OAAO,CAAC,CAAC,MAAM,IAAI,gBAAgB,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC,CAAC;IAQF,IAAI,CAAC;QACH,IAAI,OAAO,CAAC,KAAK;YAAE,MAAM,OAAO,CAAC,KAAK,CAAC;QACvC,MAAM,OAAO,GAAY,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,IAAK,EAAE,CAAC,CAAC;QACrE,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAG,CAAC;YAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,IAAI,EAAE,KAAK,GAAG,MAAM;oBAAE,MAAM,IAAI,gBAAgB,CAAC,qCAAqC,CAAC,CAAC;gBACxF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;gBACxB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;oBAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;qBAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC9B,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,IAAI,EAAE;wBAAE,MAAM,IAAI,gBAAgB,CAAC,+BAA+B,CAAC,CAAC;oBAChH,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC3I,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACvC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC1F,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACjC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBAClF,CAAC;qBAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;oBACjC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChF,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;gBAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBAC7D,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACnF,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAClC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;gBACvB,MAAM,OAAO,GAAG,KAAK,CAAC;gBACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;oBAAE,KAAK,GAAG,OAAO,CAAC;qBACtC,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;oBAAE,KAAK,GAAG,CAAC,OAAO,CAAC;qBAC5C,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;oBAAE,KAAK,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;qBACpD,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;oBAAE,KAAK,GAAG,CAAC,OAAO,CAAC;qBAC5C,CAAC;oBACJ,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACzE,SAAS,CAAE,IAAI,CAAC,OAAiD,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;oBACxF,IAAI,IAAI,CAAC,OAAO;wBAAE,KAAK,GAAG,OAAO,CAAC;gBACpC,CAAC;gBACD,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACjC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;gBACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACrD,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;wBAAE,KAAK,GAAG,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;;wBAClF,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gBACjF,CAAC;qBAAM,CAAC;oBACN,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;wBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC9E,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAClC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;gBACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;oBAAE,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;gBACnK,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,SAAS,CAAE,IAAI,CAAC,IAA8C,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC7I,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC;;gBAAM,KAAK,GAAG,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAiB;YAAE,MAAM,IAAI,gBAAgB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,KAAK,CAAC,OAAO,qBAAqB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/K,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;YACjI,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,4BAA4B,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,uCAAuC,CAAC;YACrJ,MAAM,IAAI,gBAAgB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,MAAM,qBAAqB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5H,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -203,6 +203,7 @@ export declare function functionReprintedLines(script: Script): ReadonlyMap<Comm
203
203
  export declare function parseCompoundArrayValue(source: string, byteLocale: boolean, byteSource: boolean, syntax?: CapturedShellSyntax, budget?: ParseBudget): readonly ArrayEntry[];
204
204
  export declare function parseShell(source: string, depth?: number, options?: ShellParseOptions | ShellSyntaxDeclarations, syntax?: ShellSyntaxDeclarations): Script;
205
205
  export declare function parseArraySubscript(source: string, budget: ParseBudget, byteLocale?: boolean, depth?: number, byteSource?: boolean, syntax?: CapturedShellSyntax): Word;
206
+ export declare function parseArithmeticExpansion(source: string, budget: ParseBudget, byteLocale?: boolean, depth?: number, line?: number, syntax?: ShellSyntaxDeclarations): Word;
206
207
  export declare function parseBraceWord(source: string, opaque: ReadonlyMap<number, ShellValue>, budget: ParseBudget): Word;
207
208
  export declare function hereDocumentWords(document: HereDocument, line: number, byteLocale: boolean, warnings: string[], budgetOrSyntax?: ParseBudget | ShellSyntaxDeclarations, syntax?: ShellSyntaxDeclarations): Generator<Word>;
208
209
  export declare function parseShellUnit(source: string, position?: number, byteLocale?: boolean, budgetOrByteSource?: ParseBudget | boolean, lineIndexOrSyntax?: SourceLineIndex | ShellSyntaxDeclarations, sourceValues?: ReadonlyMap<number, ByteShellValue>, byteSource?: boolean, syntax?: ShellSyntaxDeclarations): {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/shell/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/shell/parser.ts"],"names":[],"mappings":"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"}
@@ -591,7 +591,7 @@ class Lexer {
591
591
  }
592
592
  this.error("Unterminated delimiter expansion syntax");
593
593
  }
594
- word(terminator, enclosingQuoted = false, literal = false, arithmetic = false) {
594
+ word(terminator, enclosingQuoted = false, literal = false, arithmetic = false, arithmeticExpansion = false) {
595
595
  this.budget.admit();
596
596
  const offset = this.position;
597
597
  const reduction = this.printedNewlineReduction;
@@ -768,7 +768,7 @@ class Lexer {
768
768
  if (this.position < this.source.length)
769
769
  this.position++;
770
770
  }
771
- else if (current === "\\") {
771
+ else if (current === "\\" && (!arithmeticExpansion || ["$", "`", '"', "\\", "\n"].includes(this.source[this.position + 1] ?? ""))) {
772
772
  if (this.source[this.position + 1] !== "\n")
773
773
  plain = false;
774
774
  this.position++;
@@ -1223,6 +1223,8 @@ class Parser {
1223
1223
  }
1224
1224
  commandInner() {
1225
1225
  this.budget.admit();
1226
+ const arithmeticCommandEnd = this.is("(") && this.lexer.source.startsWith("((", this.current.offset)
1227
+ ? arithmeticEnd(this.lexer.source, this.current.offset + 2, true) : -1;
1226
1228
  let command;
1227
1229
  if (this.is("[[")) {
1228
1230
  const start = this.current.end;
@@ -1298,9 +1300,9 @@ class Parser {
1298
1300
  this.advance();
1299
1301
  command = { kind: "conditional", expression, source, redirects: [] };
1300
1302
  }
1301
- else if (this.is("(") && this.lexer.source.startsWith("((", this.current.offset)) {
1303
+ else if (arithmeticCommandEnd !== -1) {
1302
1304
  const start = this.current.offset + 2;
1303
- const end = arithmeticEnd(this.lexer.source, start);
1305
+ const end = arithmeticCommandEnd;
1304
1306
  const source = this.lexer.source.slice(start, end);
1305
1307
  command = { kind: "arithmetic", expression: prepareArithmetic(source, this.budget), source, redirects: [] };
1306
1308
  this.lexer.position = end + 2;
@@ -1596,6 +1598,10 @@ export function parseArraySubscript(source, budget, byteLocale = false, depth =
1596
1598
  const lexer = new Lexer(budget, source, depth, [], 0, byteLocale, undefined, false, undefined, 0, false, undefined, byteSource, syntax);
1597
1599
  return lexer.word("\0");
1598
1600
  }
1601
+ export function parseArithmeticExpansion(source, budget, byteLocale = false, depth = 0, line = 1, syntax) {
1602
+ const lexer = new Lexer(budget, source, depth, [], line - 1, byteLocale, undefined, false, undefined, 0, false, undefined, false, captureShellSyntax(syntax));
1603
+ return lexer.word("\0", true, false, false, true);
1604
+ }
1599
1605
  export function parseBraceWord(source, opaque, budget) {
1600
1606
  budget.admit(source.length + 1);
1601
1607
  const lexer = new Lexer(budget, source, 0);