@weborigami/language 0.2.8 → 0.2.10

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.
@@ -202,7 +202,7 @@ function peg$parse(input, options) {
202
202
  var peg$FAILED = {};
203
203
  var peg$source = options.grammarSource;
204
204
 
205
- var peg$startRuleFunctions = { __: peg$parse__, additiveExpression: peg$parseadditiveExpression, additiveOperator: peg$parseadditiveOperator, arguments: peg$parsearguments, arrayLiteral: peg$parsearrayLiteral, arrayEntries: peg$parsearrayEntries, arrayEntry: peg$parsearrayEntry, arrowFunction: peg$parsearrowFunction, bitwiseAndExpression: peg$parsebitwiseAndExpression, bitwiseAndOperator: peg$parsebitwiseAndOperator, bitwiseOrExpression: peg$parsebitwiseOrExpression, bitwiseOrOperator: peg$parsebitwiseOrOperator, bitwiseXorExpression: peg$parsebitwiseXorExpression, bitwiseXorOperator: peg$parsebitwiseXorOperator, callExpression: peg$parsecallExpression, closingBrace: peg$parseclosingBrace, closingBracket: peg$parseclosingBracket, closingParenthesis: peg$parseclosingParenthesis, commaExpression: peg$parsecommaExpression, comment: peg$parsecomment, conditionalExpression: peg$parseconditionalExpression, digits: peg$parsedigits, doubleArrow: peg$parsedoubleArrow, doubleQuoteString: peg$parsedoubleQuoteString, doubleQuoteStringChar: peg$parsedoubleQuoteStringChar, ellipsis: peg$parseellipsis, equalityExpression: peg$parseequalityExpression, equalityOperator: peg$parseequalityOperator, escapedChar: peg$parseescapedChar, exponentiationExpression: peg$parseexponentiationExpression, expression: peg$parseexpression, floatLiteral: peg$parsefloatLiteral, group: peg$parsegroup, guillemetString: peg$parseguillemetString, guillemetStringChar: peg$parseguillemetStringChar, homeDirectory: peg$parsehomeDirectory, host: peg$parsehost, identifier: peg$parseidentifier, identifierChar: peg$parseidentifierChar, identifierList: peg$parseidentifierList, implicitParenthesesCallExpression: peg$parseimplicitParenthesesCallExpression, implicitParensthesesArguments: peg$parseimplicitParensthesesArguments, inlineSpace: peg$parseinlineSpace, integerLiteral: peg$parseintegerLiteral, list: peg$parselist, literal: peg$parseliteral, logicalAndExpression: peg$parselogicalAndExpression, logicalOrExpression: peg$parselogicalOrExpression, multiLineComment: peg$parsemultiLineComment, multiplicativeExpression: peg$parsemultiplicativeExpression, multiplicativeOperator: peg$parsemultiplicativeOperator, namespace: peg$parsenamespace, newLine: peg$parsenewLine, numericLiteral: peg$parsenumericLiteral, nullishCoalescingExpression: peg$parsenullishCoalescingExpression, objectLiteral: peg$parseobjectLiteral, objectEntries: peg$parseobjectEntries, objectEntry: peg$parseobjectEntry, objectGetter: peg$parseobjectGetter, objectHiddenKey: peg$parseobjectHiddenKey, objectKey: peg$parseobjectKey, objectProperty: peg$parseobjectProperty, objectShorthandProperty: peg$parseobjectShorthandProperty, objectPublicKey: peg$parseobjectPublicKey, parenthesesArguments: peg$parseparenthesesArguments, path: peg$parsepath, pathArguments: peg$parsepathArguments, pathKey: peg$parsepathKey, pathSegment: peg$parsepathSegment, pathSegmentChar: peg$parsepathSegmentChar, pipelineExpression: peg$parsepipelineExpression, primary: peg$parseprimary, program: peg$parseprogram, protocolExpression: peg$parseprotocolExpression, qualifiedReference: peg$parsequalifiedReference, inherited: peg$parseinherited, relationalExpression: peg$parserelationalExpression, relationalOperator: peg$parserelationalOperator, rootDirectory: peg$parserootDirectory, scopeReference: peg$parsescopeReference, separator: peg$parseseparator, shebang: peg$parseshebang, shiftExpression: peg$parseshiftExpression, shiftOperator: peg$parseshiftOperator, shorthandFunction: peg$parseshorthandFunction, singleArrow: peg$parsesingleArrow, singleLineComment: peg$parsesingleLineComment, singleQuoteString: peg$parsesingleQuoteString, singleQuoteStringChar: peg$parsesingleQuoteStringChar, slash: peg$parseslash, slashFollows: peg$parseslashFollows, spreadElement: peg$parsespreadElement, stringLiteral: peg$parsestringLiteral, templateDocument: peg$parsetemplateDocument, templateDocumentChar: peg$parsetemplateDocumentChar, templateDocumentText: peg$parsetemplateDocumentText, templateLiteral: peg$parsetemplateLiteral, templateLiteralChar: peg$parsetemplateLiteralChar, templateLiteralText: peg$parsetemplateLiteralText, templateSubstitution: peg$parsetemplateSubstitution, textChar: peg$parsetextChar, unaryExpression: peg$parseunaryExpression, unaryOperator: peg$parseunaryOperator, whitespace: peg$parsewhitespace, whitespaceWithNewLine: peg$parsewhitespaceWithNewLine };
205
+ var peg$startRuleFunctions = { __: peg$parse__, additiveExpression: peg$parseadditiveExpression, additiveOperator: peg$parseadditiveOperator, arguments: peg$parsearguments, arrayLiteral: peg$parsearrayLiteral, arrayEntries: peg$parsearrayEntries, arrayEntry: peg$parsearrayEntry, arrowFunction: peg$parsearrowFunction, bitwiseAndExpression: peg$parsebitwiseAndExpression, bitwiseAndOperator: peg$parsebitwiseAndOperator, bitwiseOrExpression: peg$parsebitwiseOrExpression, bitwiseOrOperator: peg$parsebitwiseOrOperator, bitwiseXorExpression: peg$parsebitwiseXorExpression, bitwiseXorOperator: peg$parsebitwiseXorOperator, callExpression: peg$parsecallExpression, commaExpression: peg$parsecommaExpression, comment: peg$parsecomment, conditionalExpression: peg$parseconditionalExpression, digits: peg$parsedigits, doubleArrow: peg$parsedoubleArrow, doubleQuoteString: peg$parsedoubleQuoteString, doubleQuoteStringChar: peg$parsedoubleQuoteStringChar, ellipsis: peg$parseellipsis, equalityExpression: peg$parseequalityExpression, equalityOperator: peg$parseequalityOperator, escapedChar: peg$parseescapedChar, expectBacktick: peg$parseexpectBacktick, expectClosingBrace: peg$parseexpectClosingBrace, expectClosingBracket: peg$parseexpectClosingBracket, expectClosingParenthesis: peg$parseexpectClosingParenthesis, expectDoubleQuote: peg$parseexpectDoubleQuote, expectGuillemet: peg$parseexpectGuillemet, expectSingleQuote: peg$parseexpectSingleQuote, expectPipelineExpression: peg$parseexpectPipelineExpression, exponentiationExpression: peg$parseexponentiationExpression, expression: peg$parseexpression, floatLiteral: peg$parsefloatLiteral, group: peg$parsegroup, guillemetString: peg$parseguillemetString, guillemetStringChar: peg$parseguillemetStringChar, homeDirectory: peg$parsehomeDirectory, host: peg$parsehost, identifier: peg$parseidentifier, identifierChar: peg$parseidentifierChar, implicitParenthesesCallExpression: peg$parseimplicitParenthesesCallExpression, implicitParensthesesArguments: peg$parseimplicitParensthesesArguments, inlineSpace: peg$parseinlineSpace, integerLiteral: peg$parseintegerLiteral, list: peg$parselist, literal: peg$parseliteral, logicalAndExpression: peg$parselogicalAndExpression, logicalOrExpression: peg$parselogicalOrExpression, multiLineComment: peg$parsemultiLineComment, multiplicativeExpression: peg$parsemultiplicativeExpression, multiplicativeOperator: peg$parsemultiplicativeOperator, namespace: peg$parsenamespace, newLine: peg$parsenewLine, numericLiteral: peg$parsenumericLiteral, nullishCoalescingExpression: peg$parsenullishCoalescingExpression, objectLiteral: peg$parseobjectLiteral, objectEntries: peg$parseobjectEntries, objectEntry: peg$parseobjectEntry, objectGetter: peg$parseobjectGetter, objectHiddenKey: peg$parseobjectHiddenKey, objectKey: peg$parseobjectKey, objectProperty: peg$parseobjectProperty, objectShorthandProperty: peg$parseobjectShorthandProperty, objectPublicKey: peg$parseobjectPublicKey, parameter: peg$parseparameter, parameterList: peg$parseparameterList, parameterSingleton: peg$parseparameterSingleton, parenthesesArguments: peg$parseparenthesesArguments, path: peg$parsepath, pathArguments: peg$parsepathArguments, pathKey: peg$parsepathKey, pathSegment: peg$parsepathSegment, pathSegmentChar: peg$parsepathSegmentChar, pipelineExpression: peg$parsepipelineExpression, primary: peg$parseprimary, program: peg$parseprogram, protocolExpression: peg$parseprotocolExpression, qualifiedReference: peg$parsequalifiedReference, inherited: peg$parseinherited, relationalExpression: peg$parserelationalExpression, relationalOperator: peg$parserelationalOperator, rootDirectory: peg$parserootDirectory, scopeReference: peg$parsescopeReference, separator: peg$parseseparator, shebang: peg$parseshebang, shiftExpression: peg$parseshiftExpression, shiftOperator: peg$parseshiftOperator, shorthandFunction: peg$parseshorthandFunction, singleArrow: peg$parsesingleArrow, singleLineComment: peg$parsesingleLineComment, singleQuoteString: peg$parsesingleQuoteString, singleQuoteStringChar: peg$parsesingleQuoteStringChar, slash: peg$parseslash, slashFollows: peg$parseslashFollows, spreadElement: peg$parsespreadElement, stringLiteral: peg$parsestringLiteral, templateDocument: peg$parsetemplateDocument, templateDocumentChar: peg$parsetemplateDocumentChar, templateDocumentText: peg$parsetemplateDocumentText, templateLiteral: peg$parsetemplateLiteral, templateLiteralChar: peg$parsetemplateLiteralChar, templateLiteralText: peg$parsetemplateLiteralText, templateSubstitution: peg$parsetemplateSubstitution, textChar: peg$parsetextChar, unaryExpression: peg$parseunaryExpression, unaryOperator: peg$parseunaryOperator, whitespace: peg$parsewhitespace, whitespaceWithNewLine: peg$parsewhitespaceWithNewLine };
206
206
  var peg$startRuleFunction = peg$parse__;
207
207
 
208
208
  var peg$c0 = "[";
@@ -212,58 +212,58 @@ function peg$parse(input, options) {
212
212
  var peg$c4 = "&";
213
213
  var peg$c5 = "|";
214
214
  var peg$c6 = "^";
215
- var peg$c7 = "}";
216
- var peg$c8 = ",";
217
- var peg$c9 = "?";
218
- var peg$c10 = ":";
219
- var peg$c11 = "\u21D2";
220
- var peg$c12 = "=>";
221
- var peg$c13 = "\"";
222
- var peg$c14 = "...";
223
- var peg$c15 = "\u2026";
224
- var peg$c16 = "===";
225
- var peg$c17 = "!==";
226
- var peg$c18 = "==";
227
- var peg$c19 = "!=";
228
- var peg$c20 = "\\0";
229
- var peg$c21 = "\\b";
230
- var peg$c22 = "\\f";
231
- var peg$c23 = "\\n";
232
- var peg$c24 = "\\r";
233
- var peg$c25 = "\\t";
234
- var peg$c26 = "\\v";
235
- var peg$c27 = "\\";
236
- var peg$c28 = "**";
237
- var peg$c29 = ".";
238
- var peg$c30 = "\xAB";
239
- var peg$c31 = "\xBB";
240
- var peg$c32 = "~";
241
- var peg$c33 = "-";
242
- var peg$c34 = ">";
243
- var peg$c35 = "&&";
244
- var peg$c36 = "||";
245
- var peg$c37 = "/*";
246
- var peg$c38 = "*/";
247
- var peg$c39 = "\n";
248
- var peg$c40 = "\r\n";
249
- var peg$c41 = "\r";
250
- var peg$c42 = "??";
251
- var peg$c43 = "{";
252
- var peg$c44 = "=";
253
- var peg$c45 = "/";
254
- var peg$c46 = "//";
255
- var peg$c47 = "<=";
256
- var peg$c48 = "<";
257
- var peg$c49 = ">=";
258
- var peg$c50 = "#!";
259
- var peg$c51 = "<<";
260
- var peg$c52 = ">>>";
261
- var peg$c53 = ">>";
262
- var peg$c54 = "\u2192";
263
- var peg$c55 = "->";
264
- var peg$c56 = "'";
265
- var peg$c57 = "${";
266
- var peg$c58 = "`";
215
+ var peg$c7 = ",";
216
+ var peg$c8 = "?";
217
+ var peg$c9 = ":";
218
+ var peg$c10 = "\u21D2";
219
+ var peg$c11 = "=>";
220
+ var peg$c12 = "\"";
221
+ var peg$c13 = "...";
222
+ var peg$c14 = "\u2026";
223
+ var peg$c15 = "===";
224
+ var peg$c16 = "!==";
225
+ var peg$c17 = "==";
226
+ var peg$c18 = "!=";
227
+ var peg$c19 = "\\0";
228
+ var peg$c20 = "\\b";
229
+ var peg$c21 = "\\f";
230
+ var peg$c22 = "\\n";
231
+ var peg$c23 = "\\r";
232
+ var peg$c24 = "\\t";
233
+ var peg$c25 = "\\v";
234
+ var peg$c26 = "\\";
235
+ var peg$c27 = "`";
236
+ var peg$c28 = "}";
237
+ var peg$c29 = "\xBB";
238
+ var peg$c30 = "'";
239
+ var peg$c31 = "**";
240
+ var peg$c32 = ".";
241
+ var peg$c33 = "\xAB";
242
+ var peg$c34 = "~";
243
+ var peg$c35 = "-";
244
+ var peg$c36 = ">";
245
+ var peg$c37 = "&&";
246
+ var peg$c38 = "||";
247
+ var peg$c39 = "/*";
248
+ var peg$c40 = "*/";
249
+ var peg$c41 = "\n";
250
+ var peg$c42 = "\r\n";
251
+ var peg$c43 = "\r";
252
+ var peg$c44 = "??";
253
+ var peg$c45 = "{";
254
+ var peg$c46 = "=";
255
+ var peg$c47 = "/";
256
+ var peg$c48 = "//";
257
+ var peg$c49 = "<=";
258
+ var peg$c50 = "<";
259
+ var peg$c51 = ">=";
260
+ var peg$c52 = "#!";
261
+ var peg$c53 = "<<";
262
+ var peg$c54 = ">>>";
263
+ var peg$c55 = ">>";
264
+ var peg$c56 = "\u2192";
265
+ var peg$c57 = "->";
266
+ var peg$c58 = "${";
267
267
 
268
268
  var peg$r0 = /^[+\-]/;
269
269
  var peg$r1 = /^[0-9]/;
@@ -286,93 +286,93 @@ function peg$parse(input, options) {
286
286
  var peg$e8 = peg$literalExpectation("|", false);
287
287
  var peg$e9 = peg$literalExpectation("^", false);
288
288
  var peg$e10 = peg$otherExpectation("function call");
289
- var peg$e11 = peg$literalExpectation("}", false);
290
- var peg$e12 = peg$anyExpectation();
291
- var peg$e13 = peg$literalExpectation(",", false);
292
- var peg$e14 = peg$otherExpectation("comment");
293
- var peg$e15 = peg$literalExpectation("?", false);
294
- var peg$e16 = peg$literalExpectation(":", false);
295
- var peg$e17 = peg$classExpectation([["0", "9"]], false, false);
296
- var peg$e18 = peg$literalExpectation("\u21D2", false);
297
- var peg$e19 = peg$literalExpectation("=>", false);
298
- var peg$e20 = peg$otherExpectation("double quote string");
299
- var peg$e21 = peg$literalExpectation("\"", false);
300
- var peg$e22 = peg$literalExpectation("...", false);
301
- var peg$e23 = peg$literalExpectation("\u2026", false);
302
- var peg$e24 = peg$literalExpectation("===", false);
303
- var peg$e25 = peg$literalExpectation("!==", false);
304
- var peg$e26 = peg$literalExpectation("==", false);
305
- var peg$e27 = peg$literalExpectation("!=", false);
306
- var peg$e28 = peg$otherExpectation("backslash-escaped character");
307
- var peg$e29 = peg$literalExpectation("\\0", false);
308
- var peg$e30 = peg$literalExpectation("\\b", false);
309
- var peg$e31 = peg$literalExpectation("\\f", false);
310
- var peg$e32 = peg$literalExpectation("\\n", false);
311
- var peg$e33 = peg$literalExpectation("\\r", false);
312
- var peg$e34 = peg$literalExpectation("\\t", false);
313
- var peg$e35 = peg$literalExpectation("\\v", false);
314
- var peg$e36 = peg$literalExpectation("\\", false);
315
- var peg$e37 = peg$literalExpectation("**", false);
316
- var peg$e38 = peg$otherExpectation("floating-point number");
317
- var peg$e39 = peg$literalExpectation(".", false);
318
- var peg$e40 = peg$otherExpectation("parenthetical group");
319
- var peg$e41 = peg$otherExpectation("guillemet string");
320
- var peg$e42 = peg$literalExpectation("\xAB", false);
321
- var peg$e43 = peg$literalExpectation("\xBB", false);
322
- var peg$e44 = peg$literalExpectation("~", false);
323
- var peg$e45 = peg$otherExpectation("HTTP/HTTPS host");
324
- var peg$e46 = peg$otherExpectation("identifier");
325
- var peg$e47 = peg$classExpectation(["(", ")", "{", "}", "[", "]", "<", ">", "?", "!", "|", "-", "=", ",", "/", ":", "`", "\"", "'", "\xAB", "\xBB", "\\", "\u2192", "\u21D2", "\u2026", " ", "\t", "\n", "\r"], true, false);
326
- var peg$e48 = peg$literalExpectation("-", false);
327
- var peg$e49 = peg$literalExpectation(">", false);
328
- var peg$e50 = peg$otherExpectation("function call with implicit parentheses");
329
- var peg$e51 = peg$classExpectation([" ", "\t"], false, false);
330
- var peg$e52 = peg$otherExpectation("integer");
331
- var peg$e53 = peg$otherExpectation("list");
332
- var peg$e54 = peg$literalExpectation("&&", false);
333
- var peg$e55 = peg$literalExpectation("||", false);
334
- var peg$e56 = peg$literalExpectation("/*", false);
335
- var peg$e57 = peg$literalExpectation("*/", false);
336
- var peg$e58 = peg$classExpectation(["%", "*", "/"], false, false);
337
- var peg$e59 = peg$classExpectation([["A", "Z"], ["a", "z"]], false, false);
338
- var peg$e60 = peg$literalExpectation("\n", false);
339
- var peg$e61 = peg$literalExpectation("\r\n", false);
340
- var peg$e62 = peg$literalExpectation("\r", false);
341
- var peg$e63 = peg$otherExpectation("number");
342
- var peg$e64 = peg$literalExpectation("??", false);
343
- var peg$e65 = peg$otherExpectation("object literal");
344
- var peg$e66 = peg$literalExpectation("{", false);
345
- var peg$e67 = peg$otherExpectation("object getter");
346
- var peg$e68 = peg$literalExpectation("=", false);
347
- var peg$e69 = peg$otherExpectation("object key");
348
- var peg$e70 = peg$otherExpectation("object property");
349
- var peg$e71 = peg$otherExpectation("object identifier");
350
- var peg$e72 = peg$literalExpectation("/", false);
351
- var peg$e73 = peg$otherExpectation("function arguments in parentheses");
352
- var peg$e74 = peg$otherExpectation("slash-separated path");
353
- var peg$e75 = peg$classExpectation(["(", ")", "{", "}", "[", "]", ",", ":", "/", "\\", " ", "\t", "\n", "\r"], true, false);
354
- var peg$e76 = peg$otherExpectation("Origami program");
355
- var peg$e77 = peg$literalExpectation("//", false);
356
- var peg$e78 = peg$literalExpectation("<=", false);
357
- var peg$e79 = peg$literalExpectation("<", false);
358
- var peg$e80 = peg$literalExpectation(">=", false);
359
- var peg$e81 = peg$otherExpectation("scope reference");
360
- var peg$e82 = peg$literalExpectation("#!", false);
361
- var peg$e83 = peg$classExpectation(["\n", "\r"], true, false);
362
- var peg$e84 = peg$literalExpectation("<<", false);
363
- var peg$e85 = peg$literalExpectation(">>>", false);
364
- var peg$e86 = peg$literalExpectation(">>", false);
365
- var peg$e87 = peg$otherExpectation("lambda function");
366
- var peg$e88 = peg$literalExpectation("\u2192", false);
367
- var peg$e89 = peg$literalExpectation("->", false);
368
- var peg$e90 = peg$otherExpectation("single quote string");
369
- var peg$e91 = peg$literalExpectation("'", false);
370
- var peg$e92 = peg$otherExpectation("string");
371
- var peg$e93 = peg$otherExpectation("template");
372
- var peg$e94 = peg$literalExpectation("${", false);
373
- var peg$e95 = peg$otherExpectation("template text");
374
- var peg$e96 = peg$otherExpectation("template literal");
375
- var peg$e97 = peg$literalExpectation("`", false);
289
+ var peg$e11 = peg$literalExpectation(",", false);
290
+ var peg$e12 = peg$otherExpectation("comment");
291
+ var peg$e13 = peg$literalExpectation("?", false);
292
+ var peg$e14 = peg$literalExpectation(":", false);
293
+ var peg$e15 = peg$classExpectation([["0", "9"]], false, false);
294
+ var peg$e16 = peg$literalExpectation("\u21D2", false);
295
+ var peg$e17 = peg$literalExpectation("=>", false);
296
+ var peg$e18 = peg$otherExpectation("double quote string");
297
+ var peg$e19 = peg$literalExpectation("\"", false);
298
+ var peg$e20 = peg$literalExpectation("...", false);
299
+ var peg$e21 = peg$literalExpectation("\u2026", false);
300
+ var peg$e22 = peg$literalExpectation("===", false);
301
+ var peg$e23 = peg$literalExpectation("!==", false);
302
+ var peg$e24 = peg$literalExpectation("==", false);
303
+ var peg$e25 = peg$literalExpectation("!=", false);
304
+ var peg$e26 = peg$otherExpectation("backslash-escaped character");
305
+ var peg$e27 = peg$literalExpectation("\\0", false);
306
+ var peg$e28 = peg$literalExpectation("\\b", false);
307
+ var peg$e29 = peg$literalExpectation("\\f", false);
308
+ var peg$e30 = peg$literalExpectation("\\n", false);
309
+ var peg$e31 = peg$literalExpectation("\\r", false);
310
+ var peg$e32 = peg$literalExpectation("\\t", false);
311
+ var peg$e33 = peg$literalExpectation("\\v", false);
312
+ var peg$e34 = peg$literalExpectation("\\", false);
313
+ var peg$e35 = peg$anyExpectation();
314
+ var peg$e36 = peg$literalExpectation("`", false);
315
+ var peg$e37 = peg$literalExpectation("}", false);
316
+ var peg$e38 = peg$literalExpectation("\xBB", false);
317
+ var peg$e39 = peg$literalExpectation("'", false);
318
+ var peg$e40 = peg$literalExpectation("**", false);
319
+ var peg$e41 = peg$otherExpectation("floating-point number");
320
+ var peg$e42 = peg$literalExpectation(".", false);
321
+ var peg$e43 = peg$otherExpectation("parenthetical group");
322
+ var peg$e44 = peg$otherExpectation("guillemet string");
323
+ var peg$e45 = peg$literalExpectation("\xAB", false);
324
+ var peg$e46 = peg$literalExpectation("~", false);
325
+ var peg$e47 = peg$otherExpectation("HTTP/HTTPS host");
326
+ var peg$e48 = peg$otherExpectation("identifier");
327
+ var peg$e49 = peg$classExpectation(["(", ")", "{", "}", "[", "]", "<", ">", "?", "!", "|", "-", "=", ",", "/", ":", "`", "\"", "'", "\xAB", "\xBB", "\\", "\u2192", "\u21D2", "\u2026", " ", "\t", "\n", "\r"], true, false);
328
+ var peg$e50 = peg$literalExpectation("-", false);
329
+ var peg$e51 = peg$literalExpectation(">", false);
330
+ var peg$e52 = peg$otherExpectation("function call with implicit parentheses");
331
+ var peg$e53 = peg$classExpectation([" ", "\t"], false, false);
332
+ var peg$e54 = peg$otherExpectation("integer");
333
+ var peg$e55 = peg$otherExpectation("list");
334
+ var peg$e56 = peg$literalExpectation("&&", false);
335
+ var peg$e57 = peg$literalExpectation("||", false);
336
+ var peg$e58 = peg$literalExpectation("/*", false);
337
+ var peg$e59 = peg$literalExpectation("*/", false);
338
+ var peg$e60 = peg$classExpectation(["%", "*", "/"], false, false);
339
+ var peg$e61 = peg$classExpectation([["A", "Z"], ["a", "z"]], false, false);
340
+ var peg$e62 = peg$literalExpectation("\n", false);
341
+ var peg$e63 = peg$literalExpectation("\r\n", false);
342
+ var peg$e64 = peg$literalExpectation("\r", false);
343
+ var peg$e65 = peg$otherExpectation("number");
344
+ var peg$e66 = peg$literalExpectation("??", false);
345
+ var peg$e67 = peg$otherExpectation("object literal");
346
+ var peg$e68 = peg$literalExpectation("{", false);
347
+ var peg$e69 = peg$otherExpectation("object getter");
348
+ var peg$e70 = peg$literalExpectation("=", false);
349
+ var peg$e71 = peg$otherExpectation("object key");
350
+ var peg$e72 = peg$otherExpectation("object property");
351
+ var peg$e73 = peg$otherExpectation("object identifier");
352
+ var peg$e74 = peg$literalExpectation("/", false);
353
+ var peg$e75 = peg$otherExpectation("function arguments in parentheses");
354
+ var peg$e76 = peg$otherExpectation("slash-separated path");
355
+ var peg$e77 = peg$classExpectation(["(", ")", "{", "}", "[", "]", ",", ":", "/", "\\", " ", "\t", "\n", "\r"], true, false);
356
+ var peg$e78 = peg$otherExpectation("Origami program");
357
+ var peg$e79 = peg$literalExpectation("//", false);
358
+ var peg$e80 = peg$literalExpectation("<=", false);
359
+ var peg$e81 = peg$literalExpectation("<", false);
360
+ var peg$e82 = peg$literalExpectation(">=", false);
361
+ var peg$e83 = peg$otherExpectation("scope reference");
362
+ var peg$e84 = peg$literalExpectation("#!", false);
363
+ var peg$e85 = peg$classExpectation(["\n", "\r"], true, false);
364
+ var peg$e86 = peg$literalExpectation("<<", false);
365
+ var peg$e87 = peg$literalExpectation(">>>", false);
366
+ var peg$e88 = peg$literalExpectation(">>", false);
367
+ var peg$e89 = peg$otherExpectation("lambda function");
368
+ var peg$e90 = peg$literalExpectation("\u2192", false);
369
+ var peg$e91 = peg$literalExpectation("->", false);
370
+ var peg$e92 = peg$otherExpectation("single quote string");
371
+ var peg$e93 = peg$otherExpectation("string");
372
+ var peg$e94 = peg$otherExpectation("template");
373
+ var peg$e95 = peg$literalExpectation("${", false);
374
+ var peg$e96 = peg$otherExpectation("template text");
375
+ var peg$e97 = peg$otherExpectation("template literal");
376
376
  var peg$e98 = peg$otherExpectation("template substitution");
377
377
  var peg$e99 = peg$classExpectation(["!", "+", "-", "~"], false, false);
378
378
 
@@ -392,12 +392,11 @@ function peg$parse(input, options) {
392
392
  return annotate([ops.literal, undefined], location());
393
393
  };
394
394
  var peg$f5 = function(parameters, pipeline) {
395
- const lambdaParameters = annotate(parameters ?? [], location());
395
+ const lambdaParameters = parameters ?? annotate([], location());
396
396
  return annotate([ops.lambda, lambdaParameters, pipeline], location());
397
397
  };
398
- var peg$f6 = function(identifier, pipeline) {
399
- const lambdaParameters = annotate([identifier], location())
400
- return annotate([ops.lambda, lambdaParameters, pipeline], location());
398
+ var peg$f6 = function(parameter, pipeline) {
399
+ return annotate([ops.lambda, parameter, pipeline], location());
401
400
  };
402
401
  var peg$f7 = function(head, tail) {
403
402
  return tail.reduce(makeBinaryOperation, head);
@@ -411,21 +410,12 @@ function peg$parse(input, options) {
411
410
  var peg$f10 = function(head, tail) {
412
411
  return tail.reduce(makeCall, head);
413
412
  };
414
- var peg$f11 = function() {
415
- error(`An object ended without a closing brace, or contained something that wasn't expected.\nThe top level of an object can only contain definitions ("a: b" or "a = b") or spreads ("...a").`);
416
- };
417
- var peg$f12 = function() {
418
- error("Expected right bracket");
419
- };
420
- var peg$f13 = function() {
421
- error("Expected right parenthesis");
422
- };
423
- var peg$f14 = function(list) {
413
+ var peg$f11 = function(list) {
424
414
  return list.length === 1
425
415
  ? list[0]
426
416
  : annotate([ops.comma, ...list], location());
427
417
  };
428
- var peg$f15 = function(condition, tail) {
418
+ var peg$f12 = function(condition, tail) {
429
419
  if (!tail) {
430
420
  return condition;
431
421
  }
@@ -437,57 +427,78 @@ function peg$parse(input, options) {
437
427
  downgradeReference(deferred[1])
438
428
  ], location());
439
429
  };
440
- var peg$f16 = function(chars) {
430
+ var peg$f13 = function(chars) {
441
431
  return annotate([ops.literal, chars.join("")], location());
442
432
  };
443
- var peg$f17 = function(head, tail) {
433
+ var peg$f14 = function(head, tail) {
444
434
  return tail.reduce(makeBinaryOperation, head);
445
435
  };
446
- var peg$f18 = function() { return "\0"; };
447
- var peg$f19 = function() { return "\b"; };
448
- var peg$f20 = function() { return "\f"; };
449
- var peg$f21 = function() { return "\n"; };
450
- var peg$f22 = function() { return "\r"; };
451
- var peg$f23 = function() { return "\t"; };
452
- var peg$f24 = function() { return "\v"; };
453
- var peg$f25 = function(left, right) {
454
- return right ? annotate([ops.exponentiation, left, right], location()) : left;
436
+ var peg$f15 = function() { return "\0"; };
437
+ var peg$f16 = function() { return "\b"; };
438
+ var peg$f17 = function() { return "\f"; };
439
+ var peg$f18 = function() { return "\n"; };
440
+ var peg$f19 = function() { return "\r"; };
441
+ var peg$f20 = function() { return "\t"; };
442
+ var peg$f21 = function() { return "\v"; };
443
+ var peg$f22 = function() {
444
+ error("Expected closing backtick");
445
+ };
446
+ var peg$f23 = function() {
447
+ error(`An object ended without a closing brace, or contained something that wasn't expected.\nThe top level of an object can only contain definitions ("a: b" or "a = b") or spreads ("...a").`);
448
+ };
449
+ var peg$f24 = function() {
450
+ error("Expected right bracket");
451
+ };
452
+ var peg$f25 = function() {
453
+ error("Expected right parenthesis");
455
454
  };
456
455
  var peg$f26 = function() {
456
+ error("Expected closing quote");
457
+ };
458
+ var peg$f27 = function() {
459
+ error("Expected closing guillemet");
460
+ };
461
+ var peg$f28 = function() {
462
+ error("Expected closing quote");
463
+ };
464
+ var peg$f29 = function() {
465
+ error("Expected an expression");
466
+ };
467
+ var peg$f30 = function(left, right) {
468
+ return right ? annotate([ops.exponentiation, left, right], location()) : left;
469
+ };
470
+ var peg$f31 = function() {
457
471
  return annotate([ops.literal, parseFloat(text())], location());
458
472
  };
459
- var peg$f27 = function(expression) {
473
+ var peg$f32 = function(expression) {
460
474
  return annotate(downgradeReference(expression), location());
461
475
  };
462
- var peg$f28 = function(chars) {
476
+ var peg$f33 = function(chars) {
463
477
  return annotate([ops.literal, chars.join("")], location());
464
478
  };
465
- var peg$f29 = function() {
479
+ var peg$f34 = function() {
466
480
  return annotate([ops.homeDirectory], location());
467
481
  };
468
- var peg$f30 = function(identifier, port, slashFollows) {
482
+ var peg$f35 = function(identifier, port, slashFollows) {
469
483
  const portText = port ? `:${port[1]}` : "";
470
484
  const slashText = slashFollows ? "/" : "";
471
485
  const hostText = identifier + portText + slashText;
472
486
  return annotate([ops.literal, hostText], location());
473
487
  };
474
- var peg$f31 = function(chars) { return chars.join(""); };
475
- var peg$f32 = function(list) {
476
- return annotate(list, location());
477
- };
478
- var peg$f33 = function(head, args) {
488
+ var peg$f36 = function(chars) { return chars.join(""); };
489
+ var peg$f37 = function(head, args) {
479
490
  return args ? makeCall(head, args) : head;
480
491
  };
481
- var peg$f34 = function(values) {
492
+ var peg$f38 = function(values) {
482
493
  return annotate(values, location());
483
494
  };
484
- var peg$f35 = function() {
495
+ var peg$f39 = function() {
485
496
  return annotate([ops.literal, parseInt(text())], location());
486
497
  };
487
- var peg$f36 = function(values) {
498
+ var peg$f40 = function(values) {
488
499
  return annotate(values, location());
489
500
  };
490
- var peg$f37 = function(head, tail) {
501
+ var peg$f41 = function(head, tail) {
491
502
  return tail.length === 0
492
503
  ? head
493
504
  : annotate(
@@ -495,7 +506,7 @@ function peg$parse(input, options) {
495
506
  location()
496
507
  );
497
508
  };
498
- var peg$f38 = function(head, tail) {
509
+ var peg$f42 = function(head, tail) {
499
510
  return tail.length === 0
500
511
  ? head
501
512
  : annotate(
@@ -503,14 +514,14 @@ function peg$parse(input, options) {
503
514
  location()
504
515
  );
505
516
  };
506
- var peg$f39 = function() { return null; };
507
- var peg$f40 = function(head, tail) {
517
+ var peg$f43 = function() { return null; };
518
+ var peg$f44 = function(head, tail) {
508
519
  return tail.reduce(makeBinaryOperation, head);
509
520
  };
510
- var peg$f41 = function(chars) {
521
+ var peg$f45 = function(chars) {
511
522
  return annotate([ops.builtin, chars.join("") + ":"], location());
512
523
  };
513
- var peg$f42 = function(head, tail) {
524
+ var peg$f46 = function(head, tail) {
514
525
  return tail.length === 0
515
526
  ? head
516
527
  : annotate(
@@ -518,117 +529,135 @@ function peg$parse(input, options) {
518
529
  location()
519
530
  );
520
531
  };
521
- var peg$f43 = function(entries) {
532
+ var peg$f47 = function(entries) {
522
533
  return makeObject(entries ?? [], location());
523
534
  };
524
- var peg$f44 = function(entries) {
535
+ var peg$f48 = function(entries) {
525
536
  return annotate(entries, location());
526
537
  };
527
- var peg$f45 = function(key, pipeline) {
538
+ var peg$f49 = function(key, pipeline) {
528
539
  return annotate(
529
540
  makeProperty(key, annotate([ops.getter, pipeline], location())),
530
541
  location()
531
542
  );
532
543
  };
533
- var peg$f46 = function(hiddenKey) { return hiddenKey.join(""); };
534
- var peg$f47 = function(key, pipeline) {
544
+ var peg$f50 = function(hiddenKey) { return hiddenKey.join(""); };
545
+ var peg$f51 = function(key, pipeline) {
535
546
  return annotate(makeProperty(key, pipeline), location());
536
547
  };
537
- var peg$f48 = function(key) {
548
+ var peg$f52 = function(key) {
538
549
  const inherited = annotate([ops.inherited, key], location());
539
550
  return annotate([key, inherited], location());
540
551
  };
541
- var peg$f49 = function(identifier, slash) {
552
+ var peg$f53 = function(identifier, slash) {
542
553
  return identifier + (slash ?? "");
543
554
  };
544
- var peg$f50 = function(string) {
555
+ var peg$f54 = function(string) {
545
556
  // Remove `ops.literal` from the string code
546
557
  return string[1];
547
558
  };
548
- var peg$f51 = function(list) {
559
+ var peg$f55 = function(identifier) {
560
+ return annotate([ops.literal, identifier], location());
561
+ };
562
+ var peg$f56 = function(list) {
563
+ return annotate(list, location());
564
+ };
565
+ var peg$f57 = function(identifier) {
566
+ return annotate(
567
+ [annotate([ops.literal, identifier], location())],
568
+ location()
569
+ );
570
+ };
571
+ var peg$f58 = function(list) {
549
572
  return annotate(list ?? [undefined], location());
550
573
  };
551
- var peg$f52 = function(segments) {
574
+ var peg$f59 = function(segments) {
552
575
  // Drop empty segments that represent consecutive or final slashes
553
576
  segments = segments.filter(segment => segment);
554
577
  return annotate(segments, location());
555
578
  };
556
- var peg$f53 = function(path) {
579
+ var peg$f60 = function(path) {
557
580
  return annotate([ops.traverse, ...path], location());
558
581
  };
559
- var peg$f54 = function(chars, slashFollows) {
582
+ var peg$f61 = function(chars, slashFollows) {
560
583
  // Append a trailing slash if one follows (but don't consume it)
561
584
  const key = chars.join("") + (slashFollows ? "/" : "");
562
585
  return annotate([ops.literal, key], location());
563
586
  };
564
- var peg$f55 = function(head, tail) {
587
+ var peg$f62 = function(head, tail) {
565
588
  return annotate(
566
589
  tail.reduce(makePipeline, downgradeReference(head)),
567
590
  location()
568
591
  );
569
592
  };
570
- var peg$f56 = function(fn, host, path) {
593
+ var peg$f63 = function(fn, host, path) {
571
594
  const keys = annotate([host, ...(path ?? [])], location());
572
595
  return makeCall(fn, keys);
573
596
  };
574
- var peg$f57 = function(fn, reference) {
597
+ var peg$f64 = function(fn, reference) {
575
598
  const literal = annotate([ops.literal, reference[1]], reference.location);
576
599
  return makeCall(fn, [literal]);
577
600
  };
578
- var peg$f58 = function(head, tail) {
601
+ var peg$f65 = function(head, tail) {
579
602
  return tail.reduce(makeBinaryOperation, head);
580
603
  };
581
- var peg$f59 = function(key) {
604
+ var peg$f66 = function(key) {
582
605
  return annotate([ops.rootDirectory, key], location());
583
606
  };
584
- var peg$f60 = function() {
607
+ var peg$f67 = function() {
585
608
  return annotate([ops.rootDirectory], location());
586
609
  };
587
- var peg$f61 = function(identifier, slashFollows) {
610
+ var peg$f68 = function(identifier, slashFollows) {
588
611
  const id = identifier + (slashFollows ? "/" : "");
589
612
  return annotate(makeReference(id), location());
590
613
  };
591
- var peg$f62 = function() { return null; };
592
- var peg$f63 = function(head, tail) {
614
+ var peg$f69 = function() { return null; };
615
+ var peg$f70 = function(head, tail) {
593
616
  return tail.reduce(makeBinaryOperation, head);
594
617
  };
595
- var peg$f64 = function(definition) {
596
- const lambdaParameters = annotate(["_"], location());
618
+ var peg$f71 = function(definition) {
619
+ const lambdaParameters = annotate(
620
+ [annotate([ops.literal, "_"], location())],
621
+ location()
622
+ );
597
623
  return annotate([ops.lambda, lambdaParameters, definition], location());
598
624
  };
599
- var peg$f65 = function() { return null; };
600
- var peg$f66 = function(chars) {
625
+ var peg$f72 = function() { return null; };
626
+ var peg$f73 = function(chars) {
601
627
  return annotate([ops.literal, chars.join("")], location());
602
628
  };
603
- var peg$f67 = function() {
629
+ var peg$f74 = function() {
604
630
  return annotate([ops.literal, "/"], location());
605
631
  };
606
- var peg$f68 = function() {
632
+ var peg$f75 = function() {
607
633
  return true;
608
634
  };
609
- var peg$f69 = function(value) {
635
+ var peg$f76 = function(value) {
610
636
  return annotate([ops.spread, value], location());
611
637
  };
612
- var peg$f70 = function(head, tail) {
613
- const lambdaParameters = annotate(["_"], location());
638
+ var peg$f77 = function(head, tail) {
639
+ const lambdaParameters = annotate(
640
+ [annotate([ops.literal, "_"], location())],
641
+ location()
642
+ );
614
643
  return annotate(
615
644
  [ops.lambda, lambdaParameters, makeTemplate(ops.templateIndent, head, tail, location())],
616
645
  location()
617
646
  );
618
647
  };
619
- var peg$f71 = function(chars) {
648
+ var peg$f78 = function(chars) {
620
649
  return annotate([ops.literal, chars.join("")], location());
621
650
  };
622
- var peg$f72 = function(head, tail) {
651
+ var peg$f79 = function(head, tail) {
623
652
  return makeTemplate(ops.template, head, tail, location());
624
653
  };
625
- var peg$f73 = function(chars) {
654
+ var peg$f80 = function(chars) {
626
655
  return annotate([ops.literal, chars.join("")], location());
627
656
  };
628
- var peg$f74 = function(expression) {
657
+ var peg$f81 = function(expression) {
629
658
  return annotate(expression, location());
630
659
  };
631
- var peg$f75 = function(operator, expression) {
660
+ var peg$f82 = function(operator, expression) {
632
661
  return makeUnaryOperation(operator, expression, location());
633
662
  };
634
663
  var peg$currPos = options.peg$currPos | 0;
@@ -935,7 +964,7 @@ function peg$parse(input, options) {
935
964
  s3 = null;
936
965
  }
937
966
  s4 = peg$parse__();
938
- s5 = peg$parseclosingBracket();
967
+ s5 = peg$parseexpectClosingBracket();
939
968
  if (s5 !== peg$FAILED) {
940
969
  peg$savedPos = s0;
941
970
  s0 = peg$f2(s3);
@@ -1051,7 +1080,7 @@ function peg$parse(input, options) {
1051
1080
  }
1052
1081
  if (s1 !== peg$FAILED) {
1053
1082
  s2 = peg$parse__();
1054
- s3 = peg$parseidentifierList();
1083
+ s3 = peg$parseparameterList();
1055
1084
  if (s3 === peg$FAILED) {
1056
1085
  s3 = null;
1057
1086
  }
@@ -1068,7 +1097,7 @@ function peg$parse(input, options) {
1068
1097
  s7 = peg$parsedoubleArrow();
1069
1098
  if (s7 !== peg$FAILED) {
1070
1099
  s8 = peg$parse__();
1071
- s9 = peg$parsepipelineExpression();
1100
+ s9 = peg$parseexpectPipelineExpression();
1072
1101
  if (s9 !== peg$FAILED) {
1073
1102
  peg$savedPos = s0;
1074
1103
  s0 = peg$f5(s3, s9);
@@ -1090,13 +1119,13 @@ function peg$parse(input, options) {
1090
1119
  }
1091
1120
  if (s0 === peg$FAILED) {
1092
1121
  s0 = peg$currPos;
1093
- s1 = peg$parseidentifier();
1122
+ s1 = peg$parseparameterSingleton();
1094
1123
  if (s1 !== peg$FAILED) {
1095
1124
  s2 = peg$parse__();
1096
1125
  s3 = peg$parsedoubleArrow();
1097
1126
  if (s3 !== peg$FAILED) {
1098
1127
  s4 = peg$parse__();
1099
- s5 = peg$parsepipelineExpression();
1128
+ s5 = peg$parseexpectPipelineExpression();
1100
1129
  if (s5 !== peg$FAILED) {
1101
1130
  peg$savedPos = s0;
1102
1131
  s0 = peg$f6(s1, s5);
@@ -1402,96 +1431,6 @@ function peg$parse(input, options) {
1402
1431
  return s0;
1403
1432
  }
1404
1433
 
1405
- function peg$parseclosingBrace() {
1406
- var s0, s1;
1407
-
1408
- if (input.charCodeAt(peg$currPos) === 125) {
1409
- s0 = peg$c7;
1410
- peg$currPos++;
1411
- } else {
1412
- s0 = peg$FAILED;
1413
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
1414
- }
1415
- if (s0 === peg$FAILED) {
1416
- s0 = peg$currPos;
1417
- if (input.length > peg$currPos) {
1418
- s1 = input.charAt(peg$currPos);
1419
- peg$currPos++;
1420
- } else {
1421
- s1 = peg$FAILED;
1422
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
1423
- }
1424
- if (s1 === peg$FAILED) {
1425
- s1 = null;
1426
- }
1427
- peg$savedPos = s0;
1428
- s1 = peg$f11();
1429
- s0 = s1;
1430
- }
1431
-
1432
- return s0;
1433
- }
1434
-
1435
- function peg$parseclosingBracket() {
1436
- var s0, s1;
1437
-
1438
- if (input.charCodeAt(peg$currPos) === 93) {
1439
- s0 = peg$c1;
1440
- peg$currPos++;
1441
- } else {
1442
- s0 = peg$FAILED;
1443
- if (peg$silentFails === 0) { peg$fail(peg$e4); }
1444
- }
1445
- if (s0 === peg$FAILED) {
1446
- s0 = peg$currPos;
1447
- if (input.length > peg$currPos) {
1448
- s1 = input.charAt(peg$currPos);
1449
- peg$currPos++;
1450
- } else {
1451
- s1 = peg$FAILED;
1452
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
1453
- }
1454
- if (s1 === peg$FAILED) {
1455
- s1 = null;
1456
- }
1457
- peg$savedPos = s0;
1458
- s1 = peg$f12();
1459
- s0 = s1;
1460
- }
1461
-
1462
- return s0;
1463
- }
1464
-
1465
- function peg$parseclosingParenthesis() {
1466
- var s0, s1;
1467
-
1468
- if (input.charCodeAt(peg$currPos) === 41) {
1469
- s0 = peg$c3;
1470
- peg$currPos++;
1471
- } else {
1472
- s0 = peg$FAILED;
1473
- if (peg$silentFails === 0) { peg$fail(peg$e6); }
1474
- }
1475
- if (s0 === peg$FAILED) {
1476
- s0 = peg$currPos;
1477
- if (input.length > peg$currPos) {
1478
- s1 = input.charAt(peg$currPos);
1479
- peg$currPos++;
1480
- } else {
1481
- s1 = peg$FAILED;
1482
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
1483
- }
1484
- if (s1 === peg$FAILED) {
1485
- s1 = null;
1486
- }
1487
- peg$savedPos = s0;
1488
- s1 = peg$f13();
1489
- s0 = s1;
1490
- }
1491
-
1492
- return s0;
1493
- }
1494
-
1495
1434
  function peg$parsecommaExpression() {
1496
1435
  var s0, s1, s2, s3, s4, s5, s6, s7;
1497
1436
 
@@ -1505,11 +1444,11 @@ function peg$parse(input, options) {
1505
1444
  s4 = peg$currPos;
1506
1445
  s5 = peg$parse__();
1507
1446
  if (input.charCodeAt(peg$currPos) === 44) {
1508
- s6 = peg$c8;
1447
+ s6 = peg$c7;
1509
1448
  peg$currPos++;
1510
1449
  } else {
1511
1450
  s6 = peg$FAILED;
1512
- if (peg$silentFails === 0) { peg$fail(peg$e13); }
1451
+ if (peg$silentFails === 0) { peg$fail(peg$e11); }
1513
1452
  }
1514
1453
  if (s6 !== peg$FAILED) {
1515
1454
  s7 = peg$parse__();
@@ -1539,7 +1478,7 @@ function peg$parse(input, options) {
1539
1478
  }
1540
1479
  if (s1 !== peg$FAILED) {
1541
1480
  peg$savedPos = s0;
1542
- s1 = peg$f14(s1);
1481
+ s1 = peg$f11(s1);
1543
1482
  }
1544
1483
  s0 = s1;
1545
1484
 
@@ -1557,7 +1496,7 @@ function peg$parse(input, options) {
1557
1496
  peg$silentFails--;
1558
1497
  if (s0 === peg$FAILED) {
1559
1498
  s1 = peg$FAILED;
1560
- if (peg$silentFails === 0) { peg$fail(peg$e14); }
1499
+ if (peg$silentFails === 0) { peg$fail(peg$e12); }
1561
1500
  }
1562
1501
 
1563
1502
  return s0;
@@ -1572,11 +1511,11 @@ function peg$parse(input, options) {
1572
1511
  s2 = peg$currPos;
1573
1512
  s3 = peg$parse__();
1574
1513
  if (input.charCodeAt(peg$currPos) === 63) {
1575
- s4 = peg$c9;
1514
+ s4 = peg$c8;
1576
1515
  peg$currPos++;
1577
1516
  } else {
1578
1517
  s4 = peg$FAILED;
1579
- if (peg$silentFails === 0) { peg$fail(peg$e15); }
1518
+ if (peg$silentFails === 0) { peg$fail(peg$e13); }
1580
1519
  }
1581
1520
  if (s4 !== peg$FAILED) {
1582
1521
  s5 = peg$parse__();
@@ -1584,11 +1523,11 @@ function peg$parse(input, options) {
1584
1523
  if (s6 !== peg$FAILED) {
1585
1524
  s7 = peg$parse__();
1586
1525
  if (input.charCodeAt(peg$currPos) === 58) {
1587
- s8 = peg$c10;
1526
+ s8 = peg$c9;
1588
1527
  peg$currPos++;
1589
1528
  } else {
1590
1529
  s8 = peg$FAILED;
1591
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
1530
+ if (peg$silentFails === 0) { peg$fail(peg$e14); }
1592
1531
  }
1593
1532
  if (s8 !== peg$FAILED) {
1594
1533
  s9 = peg$parse__();
@@ -1615,7 +1554,7 @@ function peg$parse(input, options) {
1615
1554
  s2 = null;
1616
1555
  }
1617
1556
  peg$savedPos = s0;
1618
- s0 = peg$f15(s1, s2);
1557
+ s0 = peg$f12(s1, s2);
1619
1558
  } else {
1620
1559
  peg$currPos = s0;
1621
1560
  s0 = peg$FAILED;
@@ -1634,7 +1573,7 @@ function peg$parse(input, options) {
1634
1573
  peg$currPos++;
1635
1574
  } else {
1636
1575
  s2 = peg$FAILED;
1637
- if (peg$silentFails === 0) { peg$fail(peg$e17); }
1576
+ if (peg$silentFails === 0) { peg$fail(peg$e15); }
1638
1577
  }
1639
1578
  if (s2 !== peg$FAILED) {
1640
1579
  while (s2 !== peg$FAILED) {
@@ -1644,7 +1583,7 @@ function peg$parse(input, options) {
1644
1583
  peg$currPos++;
1645
1584
  } else {
1646
1585
  s2 = peg$FAILED;
1647
- if (peg$silentFails === 0) { peg$fail(peg$e17); }
1586
+ if (peg$silentFails === 0) { peg$fail(peg$e15); }
1648
1587
  }
1649
1588
  }
1650
1589
  } else {
@@ -1664,19 +1603,19 @@ function peg$parse(input, options) {
1664
1603
  var s0;
1665
1604
 
1666
1605
  if (input.charCodeAt(peg$currPos) === 8658) {
1667
- s0 = peg$c11;
1606
+ s0 = peg$c10;
1668
1607
  peg$currPos++;
1669
1608
  } else {
1670
1609
  s0 = peg$FAILED;
1671
- if (peg$silentFails === 0) { peg$fail(peg$e18); }
1610
+ if (peg$silentFails === 0) { peg$fail(peg$e16); }
1672
1611
  }
1673
1612
  if (s0 === peg$FAILED) {
1674
- if (input.substr(peg$currPos, 2) === peg$c12) {
1675
- s0 = peg$c12;
1613
+ if (input.substr(peg$currPos, 2) === peg$c11) {
1614
+ s0 = peg$c11;
1676
1615
  peg$currPos += 2;
1677
1616
  } else {
1678
1617
  s0 = peg$FAILED;
1679
- if (peg$silentFails === 0) { peg$fail(peg$e19); }
1618
+ if (peg$silentFails === 0) { peg$fail(peg$e17); }
1680
1619
  }
1681
1620
  }
1682
1621
 
@@ -1689,11 +1628,11 @@ function peg$parse(input, options) {
1689
1628
  peg$silentFails++;
1690
1629
  s0 = peg$currPos;
1691
1630
  if (input.charCodeAt(peg$currPos) === 34) {
1692
- s1 = peg$c13;
1631
+ s1 = peg$c12;
1693
1632
  peg$currPos++;
1694
1633
  } else {
1695
1634
  s1 = peg$FAILED;
1696
- if (peg$silentFails === 0) { peg$fail(peg$e21); }
1635
+ if (peg$silentFails === 0) { peg$fail(peg$e19); }
1697
1636
  }
1698
1637
  if (s1 !== peg$FAILED) {
1699
1638
  s2 = [];
@@ -1702,16 +1641,10 @@ function peg$parse(input, options) {
1702
1641
  s2.push(s3);
1703
1642
  s3 = peg$parsedoubleQuoteStringChar();
1704
1643
  }
1705
- if (input.charCodeAt(peg$currPos) === 34) {
1706
- s3 = peg$c13;
1707
- peg$currPos++;
1708
- } else {
1709
- s3 = peg$FAILED;
1710
- if (peg$silentFails === 0) { peg$fail(peg$e21); }
1711
- }
1644
+ s3 = peg$parseexpectDoubleQuote();
1712
1645
  if (s3 !== peg$FAILED) {
1713
1646
  peg$savedPos = s0;
1714
- s0 = peg$f16(s2);
1647
+ s0 = peg$f13(s2);
1715
1648
  } else {
1716
1649
  peg$currPos = s0;
1717
1650
  s0 = peg$FAILED;
@@ -1723,7 +1656,7 @@ function peg$parse(input, options) {
1723
1656
  peg$silentFails--;
1724
1657
  if (s0 === peg$FAILED) {
1725
1658
  s1 = peg$FAILED;
1726
- if (peg$silentFails === 0) { peg$fail(peg$e20); }
1659
+ if (peg$silentFails === 0) { peg$fail(peg$e18); }
1727
1660
  }
1728
1661
 
1729
1662
  return s0;
@@ -1736,11 +1669,11 @@ function peg$parse(input, options) {
1736
1669
  s1 = peg$currPos;
1737
1670
  peg$silentFails++;
1738
1671
  if (input.charCodeAt(peg$currPos) === 34) {
1739
- s2 = peg$c13;
1672
+ s2 = peg$c12;
1740
1673
  peg$currPos++;
1741
1674
  } else {
1742
1675
  s2 = peg$FAILED;
1743
- if (peg$silentFails === 0) { peg$fail(peg$e21); }
1676
+ if (peg$silentFails === 0) { peg$fail(peg$e19); }
1744
1677
  }
1745
1678
  if (s2 === peg$FAILED) {
1746
1679
  s2 = peg$parsenewLine();
@@ -1771,20 +1704,20 @@ function peg$parse(input, options) {
1771
1704
  function peg$parseellipsis() {
1772
1705
  var s0;
1773
1706
 
1774
- if (input.substr(peg$currPos, 3) === peg$c14) {
1775
- s0 = peg$c14;
1707
+ if (input.substr(peg$currPos, 3) === peg$c13) {
1708
+ s0 = peg$c13;
1776
1709
  peg$currPos += 3;
1777
1710
  } else {
1778
1711
  s0 = peg$FAILED;
1779
- if (peg$silentFails === 0) { peg$fail(peg$e22); }
1712
+ if (peg$silentFails === 0) { peg$fail(peg$e20); }
1780
1713
  }
1781
1714
  if (s0 === peg$FAILED) {
1782
1715
  if (input.charCodeAt(peg$currPos) === 8230) {
1783
- s0 = peg$c15;
1716
+ s0 = peg$c14;
1784
1717
  peg$currPos++;
1785
1718
  } else {
1786
1719
  s0 = peg$FAILED;
1787
- if (peg$silentFails === 0) { peg$fail(peg$e23); }
1720
+ if (peg$silentFails === 0) { peg$fail(peg$e21); }
1788
1721
  }
1789
1722
  }
1790
1723
 
@@ -1834,7 +1767,7 @@ function peg$parse(input, options) {
1834
1767
  }
1835
1768
  }
1836
1769
  peg$savedPos = s0;
1837
- s0 = peg$f17(s1, s2);
1770
+ s0 = peg$f14(s1, s2);
1838
1771
  } else {
1839
1772
  peg$currPos = s0;
1840
1773
  s0 = peg$FAILED;
@@ -1846,36 +1779,36 @@ function peg$parse(input, options) {
1846
1779
  function peg$parseequalityOperator() {
1847
1780
  var s0;
1848
1781
 
1849
- if (input.substr(peg$currPos, 3) === peg$c16) {
1850
- s0 = peg$c16;
1782
+ if (input.substr(peg$currPos, 3) === peg$c15) {
1783
+ s0 = peg$c15;
1851
1784
  peg$currPos += 3;
1852
1785
  } else {
1853
1786
  s0 = peg$FAILED;
1854
- if (peg$silentFails === 0) { peg$fail(peg$e24); }
1787
+ if (peg$silentFails === 0) { peg$fail(peg$e22); }
1855
1788
  }
1856
1789
  if (s0 === peg$FAILED) {
1857
- if (input.substr(peg$currPos, 3) === peg$c17) {
1858
- s0 = peg$c17;
1790
+ if (input.substr(peg$currPos, 3) === peg$c16) {
1791
+ s0 = peg$c16;
1859
1792
  peg$currPos += 3;
1860
1793
  } else {
1861
1794
  s0 = peg$FAILED;
1862
- if (peg$silentFails === 0) { peg$fail(peg$e25); }
1795
+ if (peg$silentFails === 0) { peg$fail(peg$e23); }
1863
1796
  }
1864
1797
  if (s0 === peg$FAILED) {
1865
- if (input.substr(peg$currPos, 2) === peg$c18) {
1866
- s0 = peg$c18;
1798
+ if (input.substr(peg$currPos, 2) === peg$c17) {
1799
+ s0 = peg$c17;
1867
1800
  peg$currPos += 2;
1868
1801
  } else {
1869
1802
  s0 = peg$FAILED;
1870
- if (peg$silentFails === 0) { peg$fail(peg$e26); }
1803
+ if (peg$silentFails === 0) { peg$fail(peg$e24); }
1871
1804
  }
1872
1805
  if (s0 === peg$FAILED) {
1873
- if (input.substr(peg$currPos, 2) === peg$c19) {
1874
- s0 = peg$c19;
1806
+ if (input.substr(peg$currPos, 2) === peg$c18) {
1807
+ s0 = peg$c18;
1875
1808
  peg$currPos += 2;
1876
1809
  } else {
1877
1810
  s0 = peg$FAILED;
1878
- if (peg$silentFails === 0) { peg$fail(peg$e27); }
1811
+ if (peg$silentFails === 0) { peg$fail(peg$e25); }
1879
1812
  }
1880
1813
  }
1881
1814
  }
@@ -1889,110 +1822,110 @@ function peg$parse(input, options) {
1889
1822
 
1890
1823
  peg$silentFails++;
1891
1824
  s0 = peg$currPos;
1892
- if (input.substr(peg$currPos, 2) === peg$c20) {
1893
- s1 = peg$c20;
1825
+ if (input.substr(peg$currPos, 2) === peg$c19) {
1826
+ s1 = peg$c19;
1894
1827
  peg$currPos += 2;
1895
1828
  } else {
1896
1829
  s1 = peg$FAILED;
1897
- if (peg$silentFails === 0) { peg$fail(peg$e29); }
1830
+ if (peg$silentFails === 0) { peg$fail(peg$e27); }
1898
1831
  }
1899
1832
  if (s1 !== peg$FAILED) {
1900
1833
  peg$savedPos = s0;
1901
- s1 = peg$f18();
1834
+ s1 = peg$f15();
1902
1835
  }
1903
1836
  s0 = s1;
1904
1837
  if (s0 === peg$FAILED) {
1905
1838
  s0 = peg$currPos;
1906
- if (input.substr(peg$currPos, 2) === peg$c21) {
1907
- s1 = peg$c21;
1839
+ if (input.substr(peg$currPos, 2) === peg$c20) {
1840
+ s1 = peg$c20;
1908
1841
  peg$currPos += 2;
1909
1842
  } else {
1910
1843
  s1 = peg$FAILED;
1911
- if (peg$silentFails === 0) { peg$fail(peg$e30); }
1844
+ if (peg$silentFails === 0) { peg$fail(peg$e28); }
1912
1845
  }
1913
1846
  if (s1 !== peg$FAILED) {
1914
1847
  peg$savedPos = s0;
1915
- s1 = peg$f19();
1848
+ s1 = peg$f16();
1916
1849
  }
1917
1850
  s0 = s1;
1918
1851
  if (s0 === peg$FAILED) {
1919
1852
  s0 = peg$currPos;
1920
- if (input.substr(peg$currPos, 2) === peg$c22) {
1921
- s1 = peg$c22;
1853
+ if (input.substr(peg$currPos, 2) === peg$c21) {
1854
+ s1 = peg$c21;
1922
1855
  peg$currPos += 2;
1923
1856
  } else {
1924
1857
  s1 = peg$FAILED;
1925
- if (peg$silentFails === 0) { peg$fail(peg$e31); }
1858
+ if (peg$silentFails === 0) { peg$fail(peg$e29); }
1926
1859
  }
1927
1860
  if (s1 !== peg$FAILED) {
1928
1861
  peg$savedPos = s0;
1929
- s1 = peg$f20();
1862
+ s1 = peg$f17();
1930
1863
  }
1931
1864
  s0 = s1;
1932
1865
  if (s0 === peg$FAILED) {
1933
1866
  s0 = peg$currPos;
1934
- if (input.substr(peg$currPos, 2) === peg$c23) {
1935
- s1 = peg$c23;
1867
+ if (input.substr(peg$currPos, 2) === peg$c22) {
1868
+ s1 = peg$c22;
1936
1869
  peg$currPos += 2;
1937
1870
  } else {
1938
1871
  s1 = peg$FAILED;
1939
- if (peg$silentFails === 0) { peg$fail(peg$e32); }
1872
+ if (peg$silentFails === 0) { peg$fail(peg$e30); }
1940
1873
  }
1941
1874
  if (s1 !== peg$FAILED) {
1942
1875
  peg$savedPos = s0;
1943
- s1 = peg$f21();
1876
+ s1 = peg$f18();
1944
1877
  }
1945
1878
  s0 = s1;
1946
1879
  if (s0 === peg$FAILED) {
1947
1880
  s0 = peg$currPos;
1948
- if (input.substr(peg$currPos, 2) === peg$c24) {
1949
- s1 = peg$c24;
1881
+ if (input.substr(peg$currPos, 2) === peg$c23) {
1882
+ s1 = peg$c23;
1950
1883
  peg$currPos += 2;
1951
1884
  } else {
1952
1885
  s1 = peg$FAILED;
1953
- if (peg$silentFails === 0) { peg$fail(peg$e33); }
1886
+ if (peg$silentFails === 0) { peg$fail(peg$e31); }
1954
1887
  }
1955
1888
  if (s1 !== peg$FAILED) {
1956
1889
  peg$savedPos = s0;
1957
- s1 = peg$f22();
1890
+ s1 = peg$f19();
1958
1891
  }
1959
1892
  s0 = s1;
1960
1893
  if (s0 === peg$FAILED) {
1961
1894
  s0 = peg$currPos;
1962
- if (input.substr(peg$currPos, 2) === peg$c25) {
1963
- s1 = peg$c25;
1895
+ if (input.substr(peg$currPos, 2) === peg$c24) {
1896
+ s1 = peg$c24;
1964
1897
  peg$currPos += 2;
1965
1898
  } else {
1966
1899
  s1 = peg$FAILED;
1967
- if (peg$silentFails === 0) { peg$fail(peg$e34); }
1900
+ if (peg$silentFails === 0) { peg$fail(peg$e32); }
1968
1901
  }
1969
1902
  if (s1 !== peg$FAILED) {
1970
1903
  peg$savedPos = s0;
1971
- s1 = peg$f23();
1904
+ s1 = peg$f20();
1972
1905
  }
1973
1906
  s0 = s1;
1974
1907
  if (s0 === peg$FAILED) {
1975
1908
  s0 = peg$currPos;
1976
- if (input.substr(peg$currPos, 2) === peg$c26) {
1977
- s1 = peg$c26;
1909
+ if (input.substr(peg$currPos, 2) === peg$c25) {
1910
+ s1 = peg$c25;
1978
1911
  peg$currPos += 2;
1979
1912
  } else {
1980
1913
  s1 = peg$FAILED;
1981
- if (peg$silentFails === 0) { peg$fail(peg$e35); }
1914
+ if (peg$silentFails === 0) { peg$fail(peg$e33); }
1982
1915
  }
1983
1916
  if (s1 !== peg$FAILED) {
1984
1917
  peg$savedPos = s0;
1985
- s1 = peg$f24();
1918
+ s1 = peg$f21();
1986
1919
  }
1987
1920
  s0 = s1;
1988
1921
  if (s0 === peg$FAILED) {
1989
1922
  s0 = peg$currPos;
1990
1923
  if (input.charCodeAt(peg$currPos) === 92) {
1991
- s1 = peg$c27;
1924
+ s1 = peg$c26;
1992
1925
  peg$currPos++;
1993
1926
  } else {
1994
1927
  s1 = peg$FAILED;
1995
- if (peg$silentFails === 0) { peg$fail(peg$e36); }
1928
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
1996
1929
  }
1997
1930
  if (s1 !== peg$FAILED) {
1998
1931
  if (input.length > peg$currPos) {
@@ -2000,7 +1933,7 @@ function peg$parse(input, options) {
2000
1933
  peg$currPos++;
2001
1934
  } else {
2002
1935
  s2 = peg$FAILED;
2003
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
1936
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2004
1937
  }
2005
1938
  if (s2 !== peg$FAILED) {
2006
1939
  s0 = s2;
@@ -2018,11 +1951,245 @@ function peg$parse(input, options) {
2018
1951
  }
2019
1952
  }
2020
1953
  }
2021
- }
2022
- peg$silentFails--;
2023
- if (s0 === peg$FAILED) {
2024
- s1 = peg$FAILED;
2025
- if (peg$silentFails === 0) { peg$fail(peg$e28); }
1954
+ }
1955
+ peg$silentFails--;
1956
+ if (s0 === peg$FAILED) {
1957
+ s1 = peg$FAILED;
1958
+ if (peg$silentFails === 0) { peg$fail(peg$e26); }
1959
+ }
1960
+
1961
+ return s0;
1962
+ }
1963
+
1964
+ function peg$parseexpectBacktick() {
1965
+ var s0, s1;
1966
+
1967
+ if (input.charCodeAt(peg$currPos) === 96) {
1968
+ s0 = peg$c27;
1969
+ peg$currPos++;
1970
+ } else {
1971
+ s0 = peg$FAILED;
1972
+ if (peg$silentFails === 0) { peg$fail(peg$e36); }
1973
+ }
1974
+ if (s0 === peg$FAILED) {
1975
+ s0 = peg$currPos;
1976
+ if (input.length > peg$currPos) {
1977
+ s1 = input.charAt(peg$currPos);
1978
+ peg$currPos++;
1979
+ } else {
1980
+ s1 = peg$FAILED;
1981
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
1982
+ }
1983
+ if (s1 === peg$FAILED) {
1984
+ s1 = null;
1985
+ }
1986
+ peg$savedPos = s0;
1987
+ s1 = peg$f22();
1988
+ s0 = s1;
1989
+ }
1990
+
1991
+ return s0;
1992
+ }
1993
+
1994
+ function peg$parseexpectClosingBrace() {
1995
+ var s0, s1;
1996
+
1997
+ if (input.charCodeAt(peg$currPos) === 125) {
1998
+ s0 = peg$c28;
1999
+ peg$currPos++;
2000
+ } else {
2001
+ s0 = peg$FAILED;
2002
+ if (peg$silentFails === 0) { peg$fail(peg$e37); }
2003
+ }
2004
+ if (s0 === peg$FAILED) {
2005
+ s0 = peg$currPos;
2006
+ if (input.length > peg$currPos) {
2007
+ s1 = input.charAt(peg$currPos);
2008
+ peg$currPos++;
2009
+ } else {
2010
+ s1 = peg$FAILED;
2011
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2012
+ }
2013
+ if (s1 === peg$FAILED) {
2014
+ s1 = null;
2015
+ }
2016
+ peg$savedPos = s0;
2017
+ s1 = peg$f23();
2018
+ s0 = s1;
2019
+ }
2020
+
2021
+ return s0;
2022
+ }
2023
+
2024
+ function peg$parseexpectClosingBracket() {
2025
+ var s0, s1;
2026
+
2027
+ if (input.charCodeAt(peg$currPos) === 93) {
2028
+ s0 = peg$c1;
2029
+ peg$currPos++;
2030
+ } else {
2031
+ s0 = peg$FAILED;
2032
+ if (peg$silentFails === 0) { peg$fail(peg$e4); }
2033
+ }
2034
+ if (s0 === peg$FAILED) {
2035
+ s0 = peg$currPos;
2036
+ if (input.length > peg$currPos) {
2037
+ s1 = input.charAt(peg$currPos);
2038
+ peg$currPos++;
2039
+ } else {
2040
+ s1 = peg$FAILED;
2041
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2042
+ }
2043
+ if (s1 === peg$FAILED) {
2044
+ s1 = null;
2045
+ }
2046
+ peg$savedPos = s0;
2047
+ s1 = peg$f24();
2048
+ s0 = s1;
2049
+ }
2050
+
2051
+ return s0;
2052
+ }
2053
+
2054
+ function peg$parseexpectClosingParenthesis() {
2055
+ var s0, s1;
2056
+
2057
+ if (input.charCodeAt(peg$currPos) === 41) {
2058
+ s0 = peg$c3;
2059
+ peg$currPos++;
2060
+ } else {
2061
+ s0 = peg$FAILED;
2062
+ if (peg$silentFails === 0) { peg$fail(peg$e6); }
2063
+ }
2064
+ if (s0 === peg$FAILED) {
2065
+ s0 = peg$currPos;
2066
+ if (input.length > peg$currPos) {
2067
+ s1 = input.charAt(peg$currPos);
2068
+ peg$currPos++;
2069
+ } else {
2070
+ s1 = peg$FAILED;
2071
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2072
+ }
2073
+ if (s1 === peg$FAILED) {
2074
+ s1 = null;
2075
+ }
2076
+ peg$savedPos = s0;
2077
+ s1 = peg$f25();
2078
+ s0 = s1;
2079
+ }
2080
+
2081
+ return s0;
2082
+ }
2083
+
2084
+ function peg$parseexpectDoubleQuote() {
2085
+ var s0, s1;
2086
+
2087
+ if (input.charCodeAt(peg$currPos) === 34) {
2088
+ s0 = peg$c12;
2089
+ peg$currPos++;
2090
+ } else {
2091
+ s0 = peg$FAILED;
2092
+ if (peg$silentFails === 0) { peg$fail(peg$e19); }
2093
+ }
2094
+ if (s0 === peg$FAILED) {
2095
+ s0 = peg$currPos;
2096
+ if (input.length > peg$currPos) {
2097
+ s1 = input.charAt(peg$currPos);
2098
+ peg$currPos++;
2099
+ } else {
2100
+ s1 = peg$FAILED;
2101
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2102
+ }
2103
+ if (s1 === peg$FAILED) {
2104
+ s1 = null;
2105
+ }
2106
+ peg$savedPos = s0;
2107
+ s1 = peg$f26();
2108
+ s0 = s1;
2109
+ }
2110
+
2111
+ return s0;
2112
+ }
2113
+
2114
+ function peg$parseexpectGuillemet() {
2115
+ var s0, s1;
2116
+
2117
+ if (input.charCodeAt(peg$currPos) === 187) {
2118
+ s0 = peg$c29;
2119
+ peg$currPos++;
2120
+ } else {
2121
+ s0 = peg$FAILED;
2122
+ if (peg$silentFails === 0) { peg$fail(peg$e38); }
2123
+ }
2124
+ if (s0 === peg$FAILED) {
2125
+ s0 = peg$currPos;
2126
+ if (input.length > peg$currPos) {
2127
+ s1 = input.charAt(peg$currPos);
2128
+ peg$currPos++;
2129
+ } else {
2130
+ s1 = peg$FAILED;
2131
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2132
+ }
2133
+ if (s1 === peg$FAILED) {
2134
+ s1 = null;
2135
+ }
2136
+ peg$savedPos = s0;
2137
+ s1 = peg$f27();
2138
+ s0 = s1;
2139
+ }
2140
+
2141
+ return s0;
2142
+ }
2143
+
2144
+ function peg$parseexpectSingleQuote() {
2145
+ var s0, s1;
2146
+
2147
+ if (input.charCodeAt(peg$currPos) === 39) {
2148
+ s0 = peg$c30;
2149
+ peg$currPos++;
2150
+ } else {
2151
+ s0 = peg$FAILED;
2152
+ if (peg$silentFails === 0) { peg$fail(peg$e39); }
2153
+ }
2154
+ if (s0 === peg$FAILED) {
2155
+ s0 = peg$currPos;
2156
+ if (input.length > peg$currPos) {
2157
+ s1 = input.charAt(peg$currPos);
2158
+ peg$currPos++;
2159
+ } else {
2160
+ s1 = peg$FAILED;
2161
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2162
+ }
2163
+ if (s1 === peg$FAILED) {
2164
+ s1 = null;
2165
+ }
2166
+ peg$savedPos = s0;
2167
+ s1 = peg$f28();
2168
+ s0 = s1;
2169
+ }
2170
+
2171
+ return s0;
2172
+ }
2173
+
2174
+ function peg$parseexpectPipelineExpression() {
2175
+ var s0, s1;
2176
+
2177
+ s0 = peg$parsepipelineExpression();
2178
+ if (s0 === peg$FAILED) {
2179
+ s0 = peg$currPos;
2180
+ if (input.length > peg$currPos) {
2181
+ s1 = input.charAt(peg$currPos);
2182
+ peg$currPos++;
2183
+ } else {
2184
+ s1 = peg$FAILED;
2185
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2186
+ }
2187
+ if (s1 === peg$FAILED) {
2188
+ s1 = null;
2189
+ }
2190
+ peg$savedPos = s0;
2191
+ s1 = peg$f29();
2192
+ s0 = s1;
2026
2193
  }
2027
2194
 
2028
2195
  return s0;
@@ -2036,12 +2203,12 @@ function peg$parse(input, options) {
2036
2203
  if (s1 !== peg$FAILED) {
2037
2204
  s2 = peg$currPos;
2038
2205
  s3 = peg$parse__();
2039
- if (input.substr(peg$currPos, 2) === peg$c28) {
2040
- s4 = peg$c28;
2206
+ if (input.substr(peg$currPos, 2) === peg$c31) {
2207
+ s4 = peg$c31;
2041
2208
  peg$currPos += 2;
2042
2209
  } else {
2043
2210
  s4 = peg$FAILED;
2044
- if (peg$silentFails === 0) { peg$fail(peg$e37); }
2211
+ if (peg$silentFails === 0) { peg$fail(peg$e40); }
2045
2212
  }
2046
2213
  if (s4 !== peg$FAILED) {
2047
2214
  s5 = peg$parse__();
@@ -2060,7 +2227,7 @@ function peg$parse(input, options) {
2060
2227
  s2 = null;
2061
2228
  }
2062
2229
  peg$savedPos = s0;
2063
- s0 = peg$f25(s1, s2);
2230
+ s0 = peg$f30(s1, s2);
2064
2231
  } else {
2065
2232
  peg$currPos = s0;
2066
2233
  s0 = peg$FAILED;
@@ -2096,17 +2263,17 @@ function peg$parse(input, options) {
2096
2263
  s1 = null;
2097
2264
  }
2098
2265
  if (input.charCodeAt(peg$currPos) === 46) {
2099
- s2 = peg$c29;
2266
+ s2 = peg$c32;
2100
2267
  peg$currPos++;
2101
2268
  } else {
2102
2269
  s2 = peg$FAILED;
2103
- if (peg$silentFails === 0) { peg$fail(peg$e39); }
2270
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2104
2271
  }
2105
2272
  if (s2 !== peg$FAILED) {
2106
2273
  s3 = peg$parsedigits();
2107
2274
  if (s3 !== peg$FAILED) {
2108
2275
  peg$savedPos = s0;
2109
- s0 = peg$f26();
2276
+ s0 = peg$f31();
2110
2277
  } else {
2111
2278
  peg$currPos = s0;
2112
2279
  s0 = peg$FAILED;
@@ -2118,7 +2285,7 @@ function peg$parse(input, options) {
2118
2285
  peg$silentFails--;
2119
2286
  if (s0 === peg$FAILED) {
2120
2287
  s1 = peg$FAILED;
2121
- if (peg$silentFails === 0) { peg$fail(peg$e38); }
2288
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
2122
2289
  }
2123
2290
 
2124
2291
  return s0;
@@ -2139,10 +2306,10 @@ function peg$parse(input, options) {
2139
2306
  if (s1 !== peg$FAILED) {
2140
2307
  s2 = peg$parseexpression();
2141
2308
  if (s2 !== peg$FAILED) {
2142
- s3 = peg$parseclosingParenthesis();
2309
+ s3 = peg$parseexpectClosingParenthesis();
2143
2310
  if (s3 !== peg$FAILED) {
2144
2311
  peg$savedPos = s0;
2145
- s0 = peg$f27(s2);
2312
+ s0 = peg$f32(s2);
2146
2313
  } else {
2147
2314
  peg$currPos = s0;
2148
2315
  s0 = peg$FAILED;
@@ -2158,7 +2325,7 @@ function peg$parse(input, options) {
2158
2325
  peg$silentFails--;
2159
2326
  if (s0 === peg$FAILED) {
2160
2327
  s1 = peg$FAILED;
2161
- if (peg$silentFails === 0) { peg$fail(peg$e40); }
2328
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
2162
2329
  }
2163
2330
 
2164
2331
  return s0;
@@ -2170,11 +2337,11 @@ function peg$parse(input, options) {
2170
2337
  peg$silentFails++;
2171
2338
  s0 = peg$currPos;
2172
2339
  if (input.charCodeAt(peg$currPos) === 171) {
2173
- s1 = peg$c30;
2340
+ s1 = peg$c33;
2174
2341
  peg$currPos++;
2175
2342
  } else {
2176
2343
  s1 = peg$FAILED;
2177
- if (peg$silentFails === 0) { peg$fail(peg$e42); }
2344
+ if (peg$silentFails === 0) { peg$fail(peg$e45); }
2178
2345
  }
2179
2346
  if (s1 !== peg$FAILED) {
2180
2347
  s2 = [];
@@ -2183,16 +2350,10 @@ function peg$parse(input, options) {
2183
2350
  s2.push(s3);
2184
2351
  s3 = peg$parseguillemetStringChar();
2185
2352
  }
2186
- if (input.charCodeAt(peg$currPos) === 187) {
2187
- s3 = peg$c31;
2188
- peg$currPos++;
2189
- } else {
2190
- s3 = peg$FAILED;
2191
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
2192
- }
2353
+ s3 = peg$parseexpectGuillemet();
2193
2354
  if (s3 !== peg$FAILED) {
2194
2355
  peg$savedPos = s0;
2195
- s0 = peg$f28(s2);
2356
+ s0 = peg$f33(s2);
2196
2357
  } else {
2197
2358
  peg$currPos = s0;
2198
2359
  s0 = peg$FAILED;
@@ -2204,7 +2365,7 @@ function peg$parse(input, options) {
2204
2365
  peg$silentFails--;
2205
2366
  if (s0 === peg$FAILED) {
2206
2367
  s1 = peg$FAILED;
2207
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2368
+ if (peg$silentFails === 0) { peg$fail(peg$e44); }
2208
2369
  }
2209
2370
 
2210
2371
  return s0;
@@ -2217,11 +2378,11 @@ function peg$parse(input, options) {
2217
2378
  s1 = peg$currPos;
2218
2379
  peg$silentFails++;
2219
2380
  if (input.charCodeAt(peg$currPos) === 187) {
2220
- s2 = peg$c31;
2381
+ s2 = peg$c29;
2221
2382
  peg$currPos++;
2222
2383
  } else {
2223
2384
  s2 = peg$FAILED;
2224
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
2385
+ if (peg$silentFails === 0) { peg$fail(peg$e38); }
2225
2386
  }
2226
2387
  if (s2 === peg$FAILED) {
2227
2388
  s2 = peg$parsenewLine();
@@ -2254,15 +2415,15 @@ function peg$parse(input, options) {
2254
2415
 
2255
2416
  s0 = peg$currPos;
2256
2417
  if (input.charCodeAt(peg$currPos) === 126) {
2257
- s1 = peg$c32;
2418
+ s1 = peg$c34;
2258
2419
  peg$currPos++;
2259
2420
  } else {
2260
2421
  s1 = peg$FAILED;
2261
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
2422
+ if (peg$silentFails === 0) { peg$fail(peg$e46); }
2262
2423
  }
2263
2424
  if (s1 !== peg$FAILED) {
2264
2425
  peg$savedPos = s0;
2265
- s1 = peg$f29();
2426
+ s1 = peg$f34();
2266
2427
  }
2267
2428
  s0 = s1;
2268
2429
 
@@ -2278,11 +2439,11 @@ function peg$parse(input, options) {
2278
2439
  if (s1 !== peg$FAILED) {
2279
2440
  s2 = peg$currPos;
2280
2441
  if (input.charCodeAt(peg$currPos) === 58) {
2281
- s3 = peg$c10;
2442
+ s3 = peg$c9;
2282
2443
  peg$currPos++;
2283
2444
  } else {
2284
2445
  s3 = peg$FAILED;
2285
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
2446
+ if (peg$silentFails === 0) { peg$fail(peg$e14); }
2286
2447
  }
2287
2448
  if (s3 !== peg$FAILED) {
2288
2449
  s4 = peg$parseintegerLiteral();
@@ -2304,7 +2465,7 @@ function peg$parse(input, options) {
2304
2465
  s3 = null;
2305
2466
  }
2306
2467
  peg$savedPos = s0;
2307
- s0 = peg$f30(s1, s2, s3);
2468
+ s0 = peg$f35(s1, s2, s3);
2308
2469
  } else {
2309
2470
  peg$currPos = s0;
2310
2471
  s0 = peg$FAILED;
@@ -2312,7 +2473,7 @@ function peg$parse(input, options) {
2312
2473
  peg$silentFails--;
2313
2474
  if (s0 === peg$FAILED) {
2314
2475
  s1 = peg$FAILED;
2315
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
2476
+ if (peg$silentFails === 0) { peg$fail(peg$e47); }
2316
2477
  }
2317
2478
 
2318
2479
  return s0;
@@ -2335,13 +2496,13 @@ function peg$parse(input, options) {
2335
2496
  }
2336
2497
  if (s1 !== peg$FAILED) {
2337
2498
  peg$savedPos = s0;
2338
- s1 = peg$f31(s1);
2499
+ s1 = peg$f36(s1);
2339
2500
  }
2340
2501
  s0 = s1;
2341
2502
  peg$silentFails--;
2342
2503
  if (s0 === peg$FAILED) {
2343
2504
  s1 = peg$FAILED;
2344
- if (peg$silentFails === 0) { peg$fail(peg$e46); }
2505
+ if (peg$silentFails === 0) { peg$fail(peg$e48); }
2345
2506
  }
2346
2507
 
2347
2508
  return s0;
@@ -2355,26 +2516,26 @@ function peg$parse(input, options) {
2355
2516
  peg$currPos++;
2356
2517
  } else {
2357
2518
  s0 = peg$FAILED;
2358
- if (peg$silentFails === 0) { peg$fail(peg$e47); }
2519
+ if (peg$silentFails === 0) { peg$fail(peg$e49); }
2359
2520
  }
2360
2521
  if (s0 === peg$FAILED) {
2361
2522
  s0 = peg$currPos;
2362
2523
  if (input.charCodeAt(peg$currPos) === 45) {
2363
- s1 = peg$c33;
2524
+ s1 = peg$c35;
2364
2525
  peg$currPos++;
2365
2526
  } else {
2366
2527
  s1 = peg$FAILED;
2367
- if (peg$silentFails === 0) { peg$fail(peg$e48); }
2528
+ if (peg$silentFails === 0) { peg$fail(peg$e50); }
2368
2529
  }
2369
2530
  if (s1 !== peg$FAILED) {
2370
2531
  s2 = peg$currPos;
2371
2532
  peg$silentFails++;
2372
2533
  if (input.charCodeAt(peg$currPos) === 62) {
2373
- s3 = peg$c34;
2534
+ s3 = peg$c36;
2374
2535
  peg$currPos++;
2375
2536
  } else {
2376
2537
  s3 = peg$FAILED;
2377
- if (peg$silentFails === 0) { peg$fail(peg$e49); }
2538
+ if (peg$silentFails === 0) { peg$fail(peg$e51); }
2378
2539
  }
2379
2540
  peg$silentFails--;
2380
2541
  if (s3 === peg$FAILED) {
@@ -2401,50 +2562,6 @@ function peg$parse(input, options) {
2401
2562
  return s0;
2402
2563
  }
2403
2564
 
2404
- function peg$parseidentifierList() {
2405
- var s0, s1, s2, s3, s4;
2406
-
2407
- s0 = peg$currPos;
2408
- s1 = peg$currPos;
2409
- s2 = [];
2410
- s3 = peg$parseidentifier();
2411
- while (s3 !== peg$FAILED) {
2412
- s2.push(s3);
2413
- s3 = peg$currPos;
2414
- s4 = peg$parseseparator();
2415
- if (s4 !== peg$FAILED) {
2416
- s4 = peg$parseidentifier();
2417
- if (s4 === peg$FAILED) {
2418
- peg$currPos = s3;
2419
- s3 = peg$FAILED;
2420
- } else {
2421
- s3 = s4;
2422
- }
2423
- } else {
2424
- s3 = s4;
2425
- }
2426
- }
2427
- if (s2.length < 1) {
2428
- peg$currPos = s1;
2429
- s1 = peg$FAILED;
2430
- } else {
2431
- s1 = s2;
2432
- }
2433
- if (s1 !== peg$FAILED) {
2434
- s2 = peg$parseseparator();
2435
- if (s2 === peg$FAILED) {
2436
- s2 = null;
2437
- }
2438
- peg$savedPos = s0;
2439
- s0 = peg$f32(s1);
2440
- } else {
2441
- peg$currPos = s0;
2442
- s0 = peg$FAILED;
2443
- }
2444
-
2445
- return s0;
2446
- }
2447
-
2448
2565
  function peg$parseimplicitParenthesesCallExpression() {
2449
2566
  var s0, s1, s2, s3, s4;
2450
2567
 
@@ -2479,7 +2596,7 @@ function peg$parse(input, options) {
2479
2596
  s2 = null;
2480
2597
  }
2481
2598
  peg$savedPos = s0;
2482
- s0 = peg$f33(s1, s2);
2599
+ s0 = peg$f37(s1, s2);
2483
2600
  } else {
2484
2601
  peg$currPos = s0;
2485
2602
  s0 = peg$FAILED;
@@ -2487,7 +2604,7 @@ function peg$parse(input, options) {
2487
2604
  peg$silentFails--;
2488
2605
  if (s0 === peg$FAILED) {
2489
2606
  s1 = peg$FAILED;
2490
- if (peg$silentFails === 0) { peg$fail(peg$e50); }
2607
+ if (peg$silentFails === 0) { peg$fail(peg$e52); }
2491
2608
  }
2492
2609
 
2493
2610
  return s0;
@@ -2528,7 +2645,7 @@ function peg$parse(input, options) {
2528
2645
  s2 = null;
2529
2646
  }
2530
2647
  peg$savedPos = s0;
2531
- s0 = peg$f34(s1);
2648
+ s0 = peg$f38(s1);
2532
2649
  } else {
2533
2650
  peg$currPos = s0;
2534
2651
  s0 = peg$FAILED;
@@ -2545,7 +2662,7 @@ function peg$parse(input, options) {
2545
2662
  peg$currPos++;
2546
2663
  } else {
2547
2664
  s0 = peg$FAILED;
2548
- if (peg$silentFails === 0) { peg$fail(peg$e51); }
2665
+ if (peg$silentFails === 0) { peg$fail(peg$e53); }
2549
2666
  }
2550
2667
 
2551
2668
  return s0;
@@ -2559,13 +2676,13 @@ function peg$parse(input, options) {
2559
2676
  s1 = peg$parsedigits();
2560
2677
  if (s1 !== peg$FAILED) {
2561
2678
  peg$savedPos = s0;
2562
- s1 = peg$f35();
2679
+ s1 = peg$f39();
2563
2680
  }
2564
2681
  s0 = s1;
2565
2682
  peg$silentFails--;
2566
2683
  if (s0 === peg$FAILED) {
2567
2684
  s1 = peg$FAILED;
2568
- if (peg$silentFails === 0) { peg$fail(peg$e52); }
2685
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
2569
2686
  }
2570
2687
 
2571
2688
  return s0;
@@ -2607,7 +2724,7 @@ function peg$parse(input, options) {
2607
2724
  s2 = null;
2608
2725
  }
2609
2726
  peg$savedPos = s0;
2610
- s0 = peg$f36(s1);
2727
+ s0 = peg$f40(s1);
2611
2728
  } else {
2612
2729
  peg$currPos = s0;
2613
2730
  s0 = peg$FAILED;
@@ -2615,7 +2732,7 @@ function peg$parse(input, options) {
2615
2732
  peg$silentFails--;
2616
2733
  if (s0 === peg$FAILED) {
2617
2734
  s1 = peg$FAILED;
2618
- if (peg$silentFails === 0) { peg$fail(peg$e53); }
2735
+ if (peg$silentFails === 0) { peg$fail(peg$e55); }
2619
2736
  }
2620
2737
 
2621
2738
  return s0;
@@ -2641,12 +2758,12 @@ function peg$parse(input, options) {
2641
2758
  s2 = [];
2642
2759
  s3 = peg$currPos;
2643
2760
  s4 = peg$parse__();
2644
- if (input.substr(peg$currPos, 2) === peg$c35) {
2645
- s5 = peg$c35;
2761
+ if (input.substr(peg$currPos, 2) === peg$c37) {
2762
+ s5 = peg$c37;
2646
2763
  peg$currPos += 2;
2647
2764
  } else {
2648
2765
  s5 = peg$FAILED;
2649
- if (peg$silentFails === 0) { peg$fail(peg$e54); }
2766
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
2650
2767
  }
2651
2768
  if (s5 !== peg$FAILED) {
2652
2769
  s6 = peg$parse__();
@@ -2665,12 +2782,12 @@ function peg$parse(input, options) {
2665
2782
  s2.push(s3);
2666
2783
  s3 = peg$currPos;
2667
2784
  s4 = peg$parse__();
2668
- if (input.substr(peg$currPos, 2) === peg$c35) {
2669
- s5 = peg$c35;
2785
+ if (input.substr(peg$currPos, 2) === peg$c37) {
2786
+ s5 = peg$c37;
2670
2787
  peg$currPos += 2;
2671
2788
  } else {
2672
2789
  s5 = peg$FAILED;
2673
- if (peg$silentFails === 0) { peg$fail(peg$e54); }
2790
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
2674
2791
  }
2675
2792
  if (s5 !== peg$FAILED) {
2676
2793
  s6 = peg$parse__();
@@ -2687,7 +2804,7 @@ function peg$parse(input, options) {
2687
2804
  }
2688
2805
  }
2689
2806
  peg$savedPos = s0;
2690
- s0 = peg$f37(s1, s2);
2807
+ s0 = peg$f41(s1, s2);
2691
2808
  } else {
2692
2809
  peg$currPos = s0;
2693
2810
  s0 = peg$FAILED;
@@ -2705,12 +2822,12 @@ function peg$parse(input, options) {
2705
2822
  s2 = [];
2706
2823
  s3 = peg$currPos;
2707
2824
  s4 = peg$parse__();
2708
- if (input.substr(peg$currPos, 2) === peg$c36) {
2709
- s5 = peg$c36;
2825
+ if (input.substr(peg$currPos, 2) === peg$c38) {
2826
+ s5 = peg$c38;
2710
2827
  peg$currPos += 2;
2711
2828
  } else {
2712
2829
  s5 = peg$FAILED;
2713
- if (peg$silentFails === 0) { peg$fail(peg$e55); }
2830
+ if (peg$silentFails === 0) { peg$fail(peg$e57); }
2714
2831
  }
2715
2832
  if (s5 !== peg$FAILED) {
2716
2833
  s6 = peg$parse__();
@@ -2729,12 +2846,12 @@ function peg$parse(input, options) {
2729
2846
  s2.push(s3);
2730
2847
  s3 = peg$currPos;
2731
2848
  s4 = peg$parse__();
2732
- if (input.substr(peg$currPos, 2) === peg$c36) {
2733
- s5 = peg$c36;
2849
+ if (input.substr(peg$currPos, 2) === peg$c38) {
2850
+ s5 = peg$c38;
2734
2851
  peg$currPos += 2;
2735
2852
  } else {
2736
2853
  s5 = peg$FAILED;
2737
- if (peg$silentFails === 0) { peg$fail(peg$e55); }
2854
+ if (peg$silentFails === 0) { peg$fail(peg$e57); }
2738
2855
  }
2739
2856
  if (s5 !== peg$FAILED) {
2740
2857
  s6 = peg$parse__();
@@ -2751,7 +2868,7 @@ function peg$parse(input, options) {
2751
2868
  }
2752
2869
  }
2753
2870
  peg$savedPos = s0;
2754
- s0 = peg$f38(s1, s2);
2871
+ s0 = peg$f42(s1, s2);
2755
2872
  } else {
2756
2873
  peg$currPos = s0;
2757
2874
  s0 = peg$FAILED;
@@ -2764,24 +2881,24 @@ function peg$parse(input, options) {
2764
2881
  var s0, s1, s2, s3, s4, s5;
2765
2882
 
2766
2883
  s0 = peg$currPos;
2767
- if (input.substr(peg$currPos, 2) === peg$c37) {
2768
- s1 = peg$c37;
2884
+ if (input.substr(peg$currPos, 2) === peg$c39) {
2885
+ s1 = peg$c39;
2769
2886
  peg$currPos += 2;
2770
2887
  } else {
2771
2888
  s1 = peg$FAILED;
2772
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
2889
+ if (peg$silentFails === 0) { peg$fail(peg$e58); }
2773
2890
  }
2774
2891
  if (s1 !== peg$FAILED) {
2775
2892
  s2 = [];
2776
2893
  s3 = peg$currPos;
2777
2894
  s4 = peg$currPos;
2778
2895
  peg$silentFails++;
2779
- if (input.substr(peg$currPos, 2) === peg$c38) {
2780
- s5 = peg$c38;
2896
+ if (input.substr(peg$currPos, 2) === peg$c40) {
2897
+ s5 = peg$c40;
2781
2898
  peg$currPos += 2;
2782
2899
  } else {
2783
2900
  s5 = peg$FAILED;
2784
- if (peg$silentFails === 0) { peg$fail(peg$e57); }
2901
+ if (peg$silentFails === 0) { peg$fail(peg$e59); }
2785
2902
  }
2786
2903
  peg$silentFails--;
2787
2904
  if (s5 === peg$FAILED) {
@@ -2796,7 +2913,7 @@ function peg$parse(input, options) {
2796
2913
  peg$currPos++;
2797
2914
  } else {
2798
2915
  s5 = peg$FAILED;
2799
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
2916
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2800
2917
  }
2801
2918
  if (s5 !== peg$FAILED) {
2802
2919
  s4 = [s4, s5];
@@ -2814,12 +2931,12 @@ function peg$parse(input, options) {
2814
2931
  s3 = peg$currPos;
2815
2932
  s4 = peg$currPos;
2816
2933
  peg$silentFails++;
2817
- if (input.substr(peg$currPos, 2) === peg$c38) {
2818
- s5 = peg$c38;
2934
+ if (input.substr(peg$currPos, 2) === peg$c40) {
2935
+ s5 = peg$c40;
2819
2936
  peg$currPos += 2;
2820
2937
  } else {
2821
2938
  s5 = peg$FAILED;
2822
- if (peg$silentFails === 0) { peg$fail(peg$e57); }
2939
+ if (peg$silentFails === 0) { peg$fail(peg$e59); }
2823
2940
  }
2824
2941
  peg$silentFails--;
2825
2942
  if (s5 === peg$FAILED) {
@@ -2834,7 +2951,7 @@ function peg$parse(input, options) {
2834
2951
  peg$currPos++;
2835
2952
  } else {
2836
2953
  s5 = peg$FAILED;
2837
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
2954
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2838
2955
  }
2839
2956
  if (s5 !== peg$FAILED) {
2840
2957
  s4 = [s4, s5];
@@ -2848,16 +2965,16 @@ function peg$parse(input, options) {
2848
2965
  s3 = peg$FAILED;
2849
2966
  }
2850
2967
  }
2851
- if (input.substr(peg$currPos, 2) === peg$c38) {
2852
- s3 = peg$c38;
2968
+ if (input.substr(peg$currPos, 2) === peg$c40) {
2969
+ s3 = peg$c40;
2853
2970
  peg$currPos += 2;
2854
2971
  } else {
2855
2972
  s3 = peg$FAILED;
2856
- if (peg$silentFails === 0) { peg$fail(peg$e57); }
2973
+ if (peg$silentFails === 0) { peg$fail(peg$e59); }
2857
2974
  }
2858
2975
  if (s3 !== peg$FAILED) {
2859
2976
  peg$savedPos = s0;
2860
- s0 = peg$f39();
2977
+ s0 = peg$f43();
2861
2978
  } else {
2862
2979
  peg$currPos = s0;
2863
2980
  s0 = peg$FAILED;
@@ -2933,7 +3050,7 @@ function peg$parse(input, options) {
2933
3050
  }
2934
3051
  }
2935
3052
  peg$savedPos = s0;
2936
- s0 = peg$f40(s1, s2);
3053
+ s0 = peg$f44(s1, s2);
2937
3054
  } else {
2938
3055
  peg$currPos = s0;
2939
3056
  s0 = peg$FAILED;
@@ -2950,7 +3067,7 @@ function peg$parse(input, options) {
2950
3067
  peg$currPos++;
2951
3068
  } else {
2952
3069
  s0 = peg$FAILED;
2953
- if (peg$silentFails === 0) { peg$fail(peg$e58); }
3070
+ if (peg$silentFails === 0) { peg$fail(peg$e60); }
2954
3071
  }
2955
3072
 
2956
3073
  return s0;
@@ -2966,7 +3083,7 @@ function peg$parse(input, options) {
2966
3083
  peg$currPos++;
2967
3084
  } else {
2968
3085
  s2 = peg$FAILED;
2969
- if (peg$silentFails === 0) { peg$fail(peg$e59); }
3086
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
2970
3087
  }
2971
3088
  if (s2 !== peg$FAILED) {
2972
3089
  while (s2 !== peg$FAILED) {
@@ -2976,7 +3093,7 @@ function peg$parse(input, options) {
2976
3093
  peg$currPos++;
2977
3094
  } else {
2978
3095
  s2 = peg$FAILED;
2979
- if (peg$silentFails === 0) { peg$fail(peg$e59); }
3096
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
2980
3097
  }
2981
3098
  }
2982
3099
  } else {
@@ -2984,15 +3101,15 @@ function peg$parse(input, options) {
2984
3101
  }
2985
3102
  if (s1 !== peg$FAILED) {
2986
3103
  if (input.charCodeAt(peg$currPos) === 58) {
2987
- s2 = peg$c10;
3104
+ s2 = peg$c9;
2988
3105
  peg$currPos++;
2989
3106
  } else {
2990
3107
  s2 = peg$FAILED;
2991
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
3108
+ if (peg$silentFails === 0) { peg$fail(peg$e14); }
2992
3109
  }
2993
3110
  if (s2 !== peg$FAILED) {
2994
3111
  peg$savedPos = s0;
2995
- s0 = peg$f41(s1);
3112
+ s0 = peg$f45(s1);
2996
3113
  } else {
2997
3114
  peg$currPos = s0;
2998
3115
  s0 = peg$FAILED;
@@ -3009,27 +3126,27 @@ function peg$parse(input, options) {
3009
3126
  var s0;
3010
3127
 
3011
3128
  if (input.charCodeAt(peg$currPos) === 10) {
3012
- s0 = peg$c39;
3129
+ s0 = peg$c41;
3013
3130
  peg$currPos++;
3014
3131
  } else {
3015
3132
  s0 = peg$FAILED;
3016
- if (peg$silentFails === 0) { peg$fail(peg$e60); }
3133
+ if (peg$silentFails === 0) { peg$fail(peg$e62); }
3017
3134
  }
3018
3135
  if (s0 === peg$FAILED) {
3019
- if (input.substr(peg$currPos, 2) === peg$c40) {
3020
- s0 = peg$c40;
3136
+ if (input.substr(peg$currPos, 2) === peg$c42) {
3137
+ s0 = peg$c42;
3021
3138
  peg$currPos += 2;
3022
3139
  } else {
3023
3140
  s0 = peg$FAILED;
3024
- if (peg$silentFails === 0) { peg$fail(peg$e61); }
3141
+ if (peg$silentFails === 0) { peg$fail(peg$e63); }
3025
3142
  }
3026
3143
  if (s0 === peg$FAILED) {
3027
3144
  if (input.charCodeAt(peg$currPos) === 13) {
3028
- s0 = peg$c41;
3145
+ s0 = peg$c43;
3029
3146
  peg$currPos++;
3030
3147
  } else {
3031
3148
  s0 = peg$FAILED;
3032
- if (peg$silentFails === 0) { peg$fail(peg$e62); }
3149
+ if (peg$silentFails === 0) { peg$fail(peg$e64); }
3033
3150
  }
3034
3151
  }
3035
3152
  }
@@ -3048,7 +3165,7 @@ function peg$parse(input, options) {
3048
3165
  peg$silentFails--;
3049
3166
  if (s0 === peg$FAILED) {
3050
3167
  s1 = peg$FAILED;
3051
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
3168
+ if (peg$silentFails === 0) { peg$fail(peg$e65); }
3052
3169
  }
3053
3170
 
3054
3171
  return s0;
@@ -3063,12 +3180,12 @@ function peg$parse(input, options) {
3063
3180
  s2 = [];
3064
3181
  s3 = peg$currPos;
3065
3182
  s4 = peg$parse__();
3066
- if (input.substr(peg$currPos, 2) === peg$c42) {
3067
- s5 = peg$c42;
3183
+ if (input.substr(peg$currPos, 2) === peg$c44) {
3184
+ s5 = peg$c44;
3068
3185
  peg$currPos += 2;
3069
3186
  } else {
3070
3187
  s5 = peg$FAILED;
3071
- if (peg$silentFails === 0) { peg$fail(peg$e64); }
3188
+ if (peg$silentFails === 0) { peg$fail(peg$e66); }
3072
3189
  }
3073
3190
  if (s5 !== peg$FAILED) {
3074
3191
  s6 = peg$parse__();
@@ -3087,12 +3204,12 @@ function peg$parse(input, options) {
3087
3204
  s2.push(s3);
3088
3205
  s3 = peg$currPos;
3089
3206
  s4 = peg$parse__();
3090
- if (input.substr(peg$currPos, 2) === peg$c42) {
3091
- s5 = peg$c42;
3207
+ if (input.substr(peg$currPos, 2) === peg$c44) {
3208
+ s5 = peg$c44;
3092
3209
  peg$currPos += 2;
3093
3210
  } else {
3094
3211
  s5 = peg$FAILED;
3095
- if (peg$silentFails === 0) { peg$fail(peg$e64); }
3212
+ if (peg$silentFails === 0) { peg$fail(peg$e66); }
3096
3213
  }
3097
3214
  if (s5 !== peg$FAILED) {
3098
3215
  s6 = peg$parse__();
@@ -3109,7 +3226,7 @@ function peg$parse(input, options) {
3109
3226
  }
3110
3227
  }
3111
3228
  peg$savedPos = s0;
3112
- s0 = peg$f42(s1, s2);
3229
+ s0 = peg$f46(s1, s2);
3113
3230
  } else {
3114
3231
  peg$currPos = s0;
3115
3232
  s0 = peg$FAILED;
@@ -3124,11 +3241,11 @@ function peg$parse(input, options) {
3124
3241
  peg$silentFails++;
3125
3242
  s0 = peg$currPos;
3126
3243
  if (input.charCodeAt(peg$currPos) === 123) {
3127
- s1 = peg$c43;
3244
+ s1 = peg$c45;
3128
3245
  peg$currPos++;
3129
3246
  } else {
3130
3247
  s1 = peg$FAILED;
3131
- if (peg$silentFails === 0) { peg$fail(peg$e66); }
3248
+ if (peg$silentFails === 0) { peg$fail(peg$e68); }
3132
3249
  }
3133
3250
  if (s1 !== peg$FAILED) {
3134
3251
  s2 = peg$parse__();
@@ -3137,10 +3254,10 @@ function peg$parse(input, options) {
3137
3254
  s3 = null;
3138
3255
  }
3139
3256
  s4 = peg$parse__();
3140
- s5 = peg$parseclosingBrace();
3257
+ s5 = peg$parseexpectClosingBrace();
3141
3258
  if (s5 !== peg$FAILED) {
3142
3259
  peg$savedPos = s0;
3143
- s0 = peg$f43(s3);
3260
+ s0 = peg$f47(s3);
3144
3261
  } else {
3145
3262
  peg$currPos = s0;
3146
3263
  s0 = peg$FAILED;
@@ -3152,7 +3269,7 @@ function peg$parse(input, options) {
3152
3269
  peg$silentFails--;
3153
3270
  if (s0 === peg$FAILED) {
3154
3271
  s1 = peg$FAILED;
3155
- if (peg$silentFails === 0) { peg$fail(peg$e65); }
3272
+ if (peg$silentFails === 0) { peg$fail(peg$e67); }
3156
3273
  }
3157
3274
 
3158
3275
  return s0;
@@ -3193,7 +3310,7 @@ function peg$parse(input, options) {
3193
3310
  s2 = null;
3194
3311
  }
3195
3312
  peg$savedPos = s0;
3196
- s0 = peg$f44(s1);
3313
+ s0 = peg$f48(s1);
3197
3314
  } else {
3198
3315
  peg$currPos = s0;
3199
3316
  s0 = peg$FAILED;
@@ -3228,18 +3345,18 @@ function peg$parse(input, options) {
3228
3345
  if (s1 !== peg$FAILED) {
3229
3346
  s2 = peg$parse__();
3230
3347
  if (input.charCodeAt(peg$currPos) === 61) {
3231
- s3 = peg$c44;
3348
+ s3 = peg$c46;
3232
3349
  peg$currPos++;
3233
3350
  } else {
3234
3351
  s3 = peg$FAILED;
3235
- if (peg$silentFails === 0) { peg$fail(peg$e68); }
3352
+ if (peg$silentFails === 0) { peg$fail(peg$e70); }
3236
3353
  }
3237
3354
  if (s3 !== peg$FAILED) {
3238
3355
  s4 = peg$parse__();
3239
- s5 = peg$parsepipelineExpression();
3356
+ s5 = peg$parseexpectPipelineExpression();
3240
3357
  if (s5 !== peg$FAILED) {
3241
3358
  peg$savedPos = s0;
3242
- s0 = peg$f45(s1, s5);
3359
+ s0 = peg$f49(s1, s5);
3243
3360
  } else {
3244
3361
  peg$currPos = s0;
3245
3362
  s0 = peg$FAILED;
@@ -3255,7 +3372,7 @@ function peg$parse(input, options) {
3255
3372
  peg$silentFails--;
3256
3373
  if (s0 === peg$FAILED) {
3257
3374
  s1 = peg$FAILED;
3258
- if (peg$silentFails === 0) { peg$fail(peg$e67); }
3375
+ if (peg$silentFails === 0) { peg$fail(peg$e69); }
3259
3376
  }
3260
3377
 
3261
3378
  return s0;
@@ -3300,7 +3417,7 @@ function peg$parse(input, options) {
3300
3417
  }
3301
3418
  if (s1 !== peg$FAILED) {
3302
3419
  peg$savedPos = s0;
3303
- s1 = peg$f46(s1);
3420
+ s1 = peg$f50(s1);
3304
3421
  }
3305
3422
  s0 = s1;
3306
3423
 
@@ -3318,7 +3435,7 @@ function peg$parse(input, options) {
3318
3435
  peg$silentFails--;
3319
3436
  if (s0 === peg$FAILED) {
3320
3437
  s1 = peg$FAILED;
3321
- if (peg$silentFails === 0) { peg$fail(peg$e69); }
3438
+ if (peg$silentFails === 0) { peg$fail(peg$e71); }
3322
3439
  }
3323
3440
 
3324
3441
  return s0;
@@ -3333,18 +3450,18 @@ function peg$parse(input, options) {
3333
3450
  if (s1 !== peg$FAILED) {
3334
3451
  s2 = peg$parse__();
3335
3452
  if (input.charCodeAt(peg$currPos) === 58) {
3336
- s3 = peg$c10;
3453
+ s3 = peg$c9;
3337
3454
  peg$currPos++;
3338
3455
  } else {
3339
3456
  s3 = peg$FAILED;
3340
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
3457
+ if (peg$silentFails === 0) { peg$fail(peg$e14); }
3341
3458
  }
3342
3459
  if (s3 !== peg$FAILED) {
3343
3460
  s4 = peg$parse__();
3344
- s5 = peg$parsepipelineExpression();
3461
+ s5 = peg$parseexpectPipelineExpression();
3345
3462
  if (s5 !== peg$FAILED) {
3346
3463
  peg$savedPos = s0;
3347
- s0 = peg$f47(s1, s5);
3464
+ s0 = peg$f51(s1, s5);
3348
3465
  } else {
3349
3466
  peg$currPos = s0;
3350
3467
  s0 = peg$FAILED;
@@ -3360,7 +3477,7 @@ function peg$parse(input, options) {
3360
3477
  peg$silentFails--;
3361
3478
  if (s0 === peg$FAILED) {
3362
3479
  s1 = peg$FAILED;
3363
- if (peg$silentFails === 0) { peg$fail(peg$e70); }
3480
+ if (peg$silentFails === 0) { peg$fail(peg$e72); }
3364
3481
  }
3365
3482
 
3366
3483
  return s0;
@@ -3374,13 +3491,13 @@ function peg$parse(input, options) {
3374
3491
  s1 = peg$parseobjectPublicKey();
3375
3492
  if (s1 !== peg$FAILED) {
3376
3493
  peg$savedPos = s0;
3377
- s1 = peg$f48(s1);
3494
+ s1 = peg$f52(s1);
3378
3495
  }
3379
3496
  s0 = s1;
3380
3497
  peg$silentFails--;
3381
3498
  if (s0 === peg$FAILED) {
3382
3499
  s1 = peg$FAILED;
3383
- if (peg$silentFails === 0) { peg$fail(peg$e71); }
3500
+ if (peg$silentFails === 0) { peg$fail(peg$e73); }
3384
3501
  }
3385
3502
 
3386
3503
  return s0;
@@ -3393,17 +3510,17 @@ function peg$parse(input, options) {
3393
3510
  s1 = peg$parseidentifier();
3394
3511
  if (s1 !== peg$FAILED) {
3395
3512
  if (input.charCodeAt(peg$currPos) === 47) {
3396
- s2 = peg$c45;
3513
+ s2 = peg$c47;
3397
3514
  peg$currPos++;
3398
3515
  } else {
3399
3516
  s2 = peg$FAILED;
3400
- if (peg$silentFails === 0) { peg$fail(peg$e72); }
3517
+ if (peg$silentFails === 0) { peg$fail(peg$e74); }
3401
3518
  }
3402
3519
  if (s2 === peg$FAILED) {
3403
3520
  s2 = null;
3404
3521
  }
3405
3522
  peg$savedPos = s0;
3406
- s0 = peg$f49(s1, s2);
3523
+ s0 = peg$f53(s1, s2);
3407
3524
  } else {
3408
3525
  peg$currPos = s0;
3409
3526
  s0 = peg$FAILED;
@@ -3413,7 +3530,7 @@ function peg$parse(input, options) {
3413
3530
  s1 = peg$parsestringLiteral();
3414
3531
  if (s1 !== peg$FAILED) {
3415
3532
  peg$savedPos = s0;
3416
- s1 = peg$f50(s1);
3533
+ s1 = peg$f54(s1);
3417
3534
  }
3418
3535
  s0 = s1;
3419
3536
  }
@@ -3421,6 +3538,78 @@ function peg$parse(input, options) {
3421
3538
  return s0;
3422
3539
  }
3423
3540
 
3541
+ function peg$parseparameter() {
3542
+ var s0, s1;
3543
+
3544
+ s0 = peg$currPos;
3545
+ s1 = peg$parseidentifier();
3546
+ if (s1 !== peg$FAILED) {
3547
+ peg$savedPos = s0;
3548
+ s1 = peg$f55(s1);
3549
+ }
3550
+ s0 = s1;
3551
+
3552
+ return s0;
3553
+ }
3554
+
3555
+ function peg$parseparameterList() {
3556
+ var s0, s1, s2, s3, s4;
3557
+
3558
+ s0 = peg$currPos;
3559
+ s1 = peg$currPos;
3560
+ s2 = [];
3561
+ s3 = peg$parseparameter();
3562
+ while (s3 !== peg$FAILED) {
3563
+ s2.push(s3);
3564
+ s3 = peg$currPos;
3565
+ s4 = peg$parseseparator();
3566
+ if (s4 !== peg$FAILED) {
3567
+ s4 = peg$parseparameter();
3568
+ if (s4 === peg$FAILED) {
3569
+ peg$currPos = s3;
3570
+ s3 = peg$FAILED;
3571
+ } else {
3572
+ s3 = s4;
3573
+ }
3574
+ } else {
3575
+ s3 = s4;
3576
+ }
3577
+ }
3578
+ if (s2.length < 1) {
3579
+ peg$currPos = s1;
3580
+ s1 = peg$FAILED;
3581
+ } else {
3582
+ s1 = s2;
3583
+ }
3584
+ if (s1 !== peg$FAILED) {
3585
+ s2 = peg$parseseparator();
3586
+ if (s2 === peg$FAILED) {
3587
+ s2 = null;
3588
+ }
3589
+ peg$savedPos = s0;
3590
+ s0 = peg$f56(s1);
3591
+ } else {
3592
+ peg$currPos = s0;
3593
+ s0 = peg$FAILED;
3594
+ }
3595
+
3596
+ return s0;
3597
+ }
3598
+
3599
+ function peg$parseparameterSingleton() {
3600
+ var s0, s1;
3601
+
3602
+ s0 = peg$currPos;
3603
+ s1 = peg$parseidentifier();
3604
+ if (s1 !== peg$FAILED) {
3605
+ peg$savedPos = s0;
3606
+ s1 = peg$f57(s1);
3607
+ }
3608
+ s0 = s1;
3609
+
3610
+ return s0;
3611
+ }
3612
+
3424
3613
  function peg$parseparenthesesArguments() {
3425
3614
  var s0, s1, s2, s3, s4, s5;
3426
3615
 
@@ -3440,16 +3629,10 @@ function peg$parse(input, options) {
3440
3629
  s3 = null;
3441
3630
  }
3442
3631
  s4 = peg$parse__();
3443
- if (input.charCodeAt(peg$currPos) === 41) {
3444
- s5 = peg$c3;
3445
- peg$currPos++;
3446
- } else {
3447
- s5 = peg$FAILED;
3448
- if (peg$silentFails === 0) { peg$fail(peg$e6); }
3449
- }
3632
+ s5 = peg$parseexpectClosingParenthesis();
3450
3633
  if (s5 !== peg$FAILED) {
3451
3634
  peg$savedPos = s0;
3452
- s0 = peg$f51(s3);
3635
+ s0 = peg$f58(s3);
3453
3636
  } else {
3454
3637
  peg$currPos = s0;
3455
3638
  s0 = peg$FAILED;
@@ -3461,7 +3644,7 @@ function peg$parse(input, options) {
3461
3644
  peg$silentFails--;
3462
3645
  if (s0 === peg$FAILED) {
3463
3646
  s1 = peg$FAILED;
3464
- if (peg$silentFails === 0) { peg$fail(peg$e73); }
3647
+ if (peg$silentFails === 0) { peg$fail(peg$e75); }
3465
3648
  }
3466
3649
 
3467
3650
  return s0;
@@ -3487,13 +3670,13 @@ function peg$parse(input, options) {
3487
3670
  }
3488
3671
  if (s1 !== peg$FAILED) {
3489
3672
  peg$savedPos = s0;
3490
- s1 = peg$f52(s1);
3673
+ s1 = peg$f59(s1);
3491
3674
  }
3492
3675
  s0 = s1;
3493
3676
  peg$silentFails--;
3494
3677
  if (s0 === peg$FAILED) {
3495
3678
  s1 = peg$FAILED;
3496
- if (peg$silentFails === 0) { peg$fail(peg$e74); }
3679
+ if (peg$silentFails === 0) { peg$fail(peg$e76); }
3497
3680
  }
3498
3681
 
3499
3682
  return s0;
@@ -3506,7 +3689,7 @@ function peg$parse(input, options) {
3506
3689
  s1 = peg$parsepath();
3507
3690
  if (s1 !== peg$FAILED) {
3508
3691
  peg$savedPos = s0;
3509
- s1 = peg$f53(s1);
3692
+ s1 = peg$f60(s1);
3510
3693
  }
3511
3694
  s0 = s1;
3512
3695
 
@@ -3533,7 +3716,7 @@ function peg$parse(input, options) {
3533
3716
  s2 = null;
3534
3717
  }
3535
3718
  peg$savedPos = s0;
3536
- s0 = peg$f54(s1, s2);
3719
+ s0 = peg$f61(s1, s2);
3537
3720
  } else {
3538
3721
  peg$currPos = s0;
3539
3722
  s0 = peg$FAILED;
@@ -3547,11 +3730,11 @@ function peg$parse(input, options) {
3547
3730
 
3548
3731
  s0 = peg$currPos;
3549
3732
  if (input.charCodeAt(peg$currPos) === 47) {
3550
- s1 = peg$c45;
3733
+ s1 = peg$c47;
3551
3734
  peg$currPos++;
3552
3735
  } else {
3553
3736
  s1 = peg$FAILED;
3554
- if (peg$silentFails === 0) { peg$fail(peg$e72); }
3737
+ if (peg$silentFails === 0) { peg$fail(peg$e74); }
3555
3738
  }
3556
3739
  if (s1 !== peg$FAILED) {
3557
3740
  s2 = peg$parsepathKey();
@@ -3575,7 +3758,7 @@ function peg$parse(input, options) {
3575
3758
  peg$currPos++;
3576
3759
  } else {
3577
3760
  s0 = peg$FAILED;
3578
- if (peg$silentFails === 0) { peg$fail(peg$e75); }
3761
+ if (peg$silentFails === 0) { peg$fail(peg$e77); }
3579
3762
  }
3580
3763
  if (s0 === peg$FAILED) {
3581
3764
  s0 = peg$parseescapedChar();
@@ -3627,7 +3810,7 @@ function peg$parse(input, options) {
3627
3810
  }
3628
3811
  }
3629
3812
  peg$savedPos = s0;
3630
- s0 = peg$f55(s1, s2);
3813
+ s0 = peg$f62(s1, s2);
3631
3814
  } else {
3632
3815
  peg$currPos = s0;
3633
3816
  s0 = peg$FAILED;
@@ -3678,7 +3861,7 @@ function peg$parse(input, options) {
3678
3861
  peg$silentFails--;
3679
3862
  if (s0 === peg$FAILED) {
3680
3863
  s1 = peg$FAILED;
3681
- if (peg$silentFails === 0) { peg$fail(peg$e76); }
3864
+ if (peg$silentFails === 0) { peg$fail(peg$e78); }
3682
3865
  }
3683
3866
 
3684
3867
  return s0;
@@ -3690,12 +3873,12 @@ function peg$parse(input, options) {
3690
3873
  s0 = peg$currPos;
3691
3874
  s1 = peg$parsenamespace();
3692
3875
  if (s1 !== peg$FAILED) {
3693
- if (input.substr(peg$currPos, 2) === peg$c46) {
3694
- s2 = peg$c46;
3876
+ if (input.substr(peg$currPos, 2) === peg$c48) {
3877
+ s2 = peg$c48;
3695
3878
  peg$currPos += 2;
3696
3879
  } else {
3697
3880
  s2 = peg$FAILED;
3698
- if (peg$silentFails === 0) { peg$fail(peg$e77); }
3881
+ if (peg$silentFails === 0) { peg$fail(peg$e79); }
3699
3882
  }
3700
3883
  if (s2 !== peg$FAILED) {
3701
3884
  s3 = peg$parsehost();
@@ -3708,7 +3891,7 @@ function peg$parse(input, options) {
3708
3891
  s4 = null;
3709
3892
  }
3710
3893
  peg$savedPos = s0;
3711
- s0 = peg$f56(s1, s3, s4);
3894
+ s0 = peg$f63(s1, s3, s4);
3712
3895
  } else {
3713
3896
  peg$currPos = s0;
3714
3897
  s0 = peg$FAILED;
@@ -3737,7 +3920,7 @@ function peg$parse(input, options) {
3737
3920
  s2 = peg$parsescopeReference();
3738
3921
  if (s2 !== peg$FAILED) {
3739
3922
  peg$savedPos = s0;
3740
- s0 = peg$f57(s1, s2);
3923
+ s0 = peg$f64(s1, s2);
3741
3924
  } else {
3742
3925
  peg$currPos = s0;
3743
3926
  s0 = peg$FAILED;
@@ -3813,7 +3996,7 @@ function peg$parse(input, options) {
3813
3996
  }
3814
3997
  }
3815
3998
  peg$savedPos = s0;
3816
- s0 = peg$f58(s1, s2);
3999
+ s0 = peg$f65(s1, s2);
3817
4000
  } else {
3818
4001
  peg$currPos = s0;
3819
4002
  s0 = peg$FAILED;
@@ -3825,36 +4008,36 @@ function peg$parse(input, options) {
3825
4008
  function peg$parserelationalOperator() {
3826
4009
  var s0;
3827
4010
 
3828
- if (input.substr(peg$currPos, 2) === peg$c47) {
3829
- s0 = peg$c47;
4011
+ if (input.substr(peg$currPos, 2) === peg$c49) {
4012
+ s0 = peg$c49;
3830
4013
  peg$currPos += 2;
3831
4014
  } else {
3832
4015
  s0 = peg$FAILED;
3833
- if (peg$silentFails === 0) { peg$fail(peg$e78); }
4016
+ if (peg$silentFails === 0) { peg$fail(peg$e80); }
3834
4017
  }
3835
4018
  if (s0 === peg$FAILED) {
3836
4019
  if (input.charCodeAt(peg$currPos) === 60) {
3837
- s0 = peg$c48;
4020
+ s0 = peg$c50;
3838
4021
  peg$currPos++;
3839
4022
  } else {
3840
4023
  s0 = peg$FAILED;
3841
- if (peg$silentFails === 0) { peg$fail(peg$e79); }
4024
+ if (peg$silentFails === 0) { peg$fail(peg$e81); }
3842
4025
  }
3843
4026
  if (s0 === peg$FAILED) {
3844
- if (input.substr(peg$currPos, 2) === peg$c49) {
3845
- s0 = peg$c49;
4027
+ if (input.substr(peg$currPos, 2) === peg$c51) {
4028
+ s0 = peg$c51;
3846
4029
  peg$currPos += 2;
3847
4030
  } else {
3848
4031
  s0 = peg$FAILED;
3849
- if (peg$silentFails === 0) { peg$fail(peg$e80); }
4032
+ if (peg$silentFails === 0) { peg$fail(peg$e82); }
3850
4033
  }
3851
4034
  if (s0 === peg$FAILED) {
3852
4035
  if (input.charCodeAt(peg$currPos) === 62) {
3853
- s0 = peg$c34;
4036
+ s0 = peg$c36;
3854
4037
  peg$currPos++;
3855
4038
  } else {
3856
4039
  s0 = peg$FAILED;
3857
- if (peg$silentFails === 0) { peg$fail(peg$e49); }
4040
+ if (peg$silentFails === 0) { peg$fail(peg$e51); }
3858
4041
  }
3859
4042
  }
3860
4043
  }
@@ -3868,17 +4051,17 @@ function peg$parse(input, options) {
3868
4051
 
3869
4052
  s0 = peg$currPos;
3870
4053
  if (input.charCodeAt(peg$currPos) === 47) {
3871
- s1 = peg$c45;
4054
+ s1 = peg$c47;
3872
4055
  peg$currPos++;
3873
4056
  } else {
3874
4057
  s1 = peg$FAILED;
3875
- if (peg$silentFails === 0) { peg$fail(peg$e72); }
4058
+ if (peg$silentFails === 0) { peg$fail(peg$e74); }
3876
4059
  }
3877
4060
  if (s1 !== peg$FAILED) {
3878
4061
  s2 = peg$parsepathKey();
3879
4062
  if (s2 !== peg$FAILED) {
3880
4063
  peg$savedPos = s0;
3881
- s0 = peg$f59(s2);
4064
+ s0 = peg$f66(s2);
3882
4065
  } else {
3883
4066
  peg$currPos = s0;
3884
4067
  s0 = peg$FAILED;
@@ -3890,21 +4073,21 @@ function peg$parse(input, options) {
3890
4073
  if (s0 === peg$FAILED) {
3891
4074
  s0 = peg$currPos;
3892
4075
  if (input.charCodeAt(peg$currPos) === 47) {
3893
- s1 = peg$c45;
4076
+ s1 = peg$c47;
3894
4077
  peg$currPos++;
3895
4078
  } else {
3896
4079
  s1 = peg$FAILED;
3897
- if (peg$silentFails === 0) { peg$fail(peg$e72); }
4080
+ if (peg$silentFails === 0) { peg$fail(peg$e74); }
3898
4081
  }
3899
4082
  if (s1 !== peg$FAILED) {
3900
4083
  s2 = peg$currPos;
3901
4084
  peg$silentFails++;
3902
4085
  if (input.charCodeAt(peg$currPos) === 47) {
3903
- s3 = peg$c45;
4086
+ s3 = peg$c47;
3904
4087
  peg$currPos++;
3905
4088
  } else {
3906
4089
  s3 = peg$FAILED;
3907
- if (peg$silentFails === 0) { peg$fail(peg$e72); }
4090
+ if (peg$silentFails === 0) { peg$fail(peg$e74); }
3908
4091
  }
3909
4092
  peg$silentFails--;
3910
4093
  if (s3 === peg$FAILED) {
@@ -3915,7 +4098,7 @@ function peg$parse(input, options) {
3915
4098
  }
3916
4099
  if (s2 !== peg$FAILED) {
3917
4100
  peg$savedPos = s0;
3918
- s0 = peg$f60();
4101
+ s0 = peg$f67();
3919
4102
  } else {
3920
4103
  peg$currPos = s0;
3921
4104
  s0 = peg$FAILED;
@@ -3941,7 +4124,7 @@ function peg$parse(input, options) {
3941
4124
  s2 = null;
3942
4125
  }
3943
4126
  peg$savedPos = s0;
3944
- s0 = peg$f61(s1, s2);
4127
+ s0 = peg$f68(s1, s2);
3945
4128
  } else {
3946
4129
  peg$currPos = s0;
3947
4130
  s0 = peg$FAILED;
@@ -3949,7 +4132,7 @@ function peg$parse(input, options) {
3949
4132
  peg$silentFails--;
3950
4133
  if (s0 === peg$FAILED) {
3951
4134
  s1 = peg$FAILED;
3952
- if (peg$silentFails === 0) { peg$fail(peg$e81); }
4135
+ if (peg$silentFails === 0) { peg$fail(peg$e83); }
3953
4136
  }
3954
4137
 
3955
4138
  return s0;
@@ -3961,11 +4144,11 @@ function peg$parse(input, options) {
3961
4144
  s0 = peg$currPos;
3962
4145
  s1 = peg$parse__();
3963
4146
  if (input.charCodeAt(peg$currPos) === 44) {
3964
- s2 = peg$c8;
4147
+ s2 = peg$c7;
3965
4148
  peg$currPos++;
3966
4149
  } else {
3967
4150
  s2 = peg$FAILED;
3968
- if (peg$silentFails === 0) { peg$fail(peg$e13); }
4151
+ if (peg$silentFails === 0) { peg$fail(peg$e11); }
3969
4152
  }
3970
4153
  if (s2 !== peg$FAILED) {
3971
4154
  s3 = peg$parse__();
@@ -3986,12 +4169,12 @@ function peg$parse(input, options) {
3986
4169
  var s0, s1, s2, s3;
3987
4170
 
3988
4171
  s0 = peg$currPos;
3989
- if (input.substr(peg$currPos, 2) === peg$c50) {
3990
- s1 = peg$c50;
4172
+ if (input.substr(peg$currPos, 2) === peg$c52) {
4173
+ s1 = peg$c52;
3991
4174
  peg$currPos += 2;
3992
4175
  } else {
3993
4176
  s1 = peg$FAILED;
3994
- if (peg$silentFails === 0) { peg$fail(peg$e82); }
4177
+ if (peg$silentFails === 0) { peg$fail(peg$e84); }
3995
4178
  }
3996
4179
  if (s1 !== peg$FAILED) {
3997
4180
  s2 = [];
@@ -4000,7 +4183,7 @@ function peg$parse(input, options) {
4000
4183
  peg$currPos++;
4001
4184
  } else {
4002
4185
  s3 = peg$FAILED;
4003
- if (peg$silentFails === 0) { peg$fail(peg$e83); }
4186
+ if (peg$silentFails === 0) { peg$fail(peg$e85); }
4004
4187
  }
4005
4188
  while (s3 !== peg$FAILED) {
4006
4189
  s2.push(s3);
@@ -4009,11 +4192,11 @@ function peg$parse(input, options) {
4009
4192
  peg$currPos++;
4010
4193
  } else {
4011
4194
  s3 = peg$FAILED;
4012
- if (peg$silentFails === 0) { peg$fail(peg$e83); }
4195
+ if (peg$silentFails === 0) { peg$fail(peg$e85); }
4013
4196
  }
4014
4197
  }
4015
4198
  peg$savedPos = s0;
4016
- s0 = peg$f62();
4199
+ s0 = peg$f69();
4017
4200
  } else {
4018
4201
  peg$currPos = s0;
4019
4202
  s0 = peg$FAILED;
@@ -4065,7 +4248,7 @@ function peg$parse(input, options) {
4065
4248
  }
4066
4249
  }
4067
4250
  peg$savedPos = s0;
4068
- s0 = peg$f63(s1, s2);
4251
+ s0 = peg$f70(s1, s2);
4069
4252
  } else {
4070
4253
  peg$currPos = s0;
4071
4254
  s0 = peg$FAILED;
@@ -4077,28 +4260,28 @@ function peg$parse(input, options) {
4077
4260
  function peg$parseshiftOperator() {
4078
4261
  var s0;
4079
4262
 
4080
- if (input.substr(peg$currPos, 2) === peg$c51) {
4081
- s0 = peg$c51;
4263
+ if (input.substr(peg$currPos, 2) === peg$c53) {
4264
+ s0 = peg$c53;
4082
4265
  peg$currPos += 2;
4083
4266
  } else {
4084
4267
  s0 = peg$FAILED;
4085
- if (peg$silentFails === 0) { peg$fail(peg$e84); }
4268
+ if (peg$silentFails === 0) { peg$fail(peg$e86); }
4086
4269
  }
4087
4270
  if (s0 === peg$FAILED) {
4088
- if (input.substr(peg$currPos, 3) === peg$c52) {
4089
- s0 = peg$c52;
4271
+ if (input.substr(peg$currPos, 3) === peg$c54) {
4272
+ s0 = peg$c54;
4090
4273
  peg$currPos += 3;
4091
4274
  } else {
4092
4275
  s0 = peg$FAILED;
4093
- if (peg$silentFails === 0) { peg$fail(peg$e85); }
4276
+ if (peg$silentFails === 0) { peg$fail(peg$e87); }
4094
4277
  }
4095
4278
  if (s0 === peg$FAILED) {
4096
- if (input.substr(peg$currPos, 2) === peg$c53) {
4097
- s0 = peg$c53;
4279
+ if (input.substr(peg$currPos, 2) === peg$c55) {
4280
+ s0 = peg$c55;
4098
4281
  peg$currPos += 2;
4099
4282
  } else {
4100
4283
  s0 = peg$FAILED;
4101
- if (peg$silentFails === 0) { peg$fail(peg$e86); }
4284
+ if (peg$silentFails === 0) { peg$fail(peg$e88); }
4102
4285
  }
4103
4286
  }
4104
4287
  }
@@ -4112,21 +4295,21 @@ function peg$parse(input, options) {
4112
4295
  peg$silentFails++;
4113
4296
  s0 = peg$currPos;
4114
4297
  if (input.charCodeAt(peg$currPos) === 61) {
4115
- s1 = peg$c44;
4298
+ s1 = peg$c46;
4116
4299
  peg$currPos++;
4117
4300
  } else {
4118
4301
  s1 = peg$FAILED;
4119
- if (peg$silentFails === 0) { peg$fail(peg$e68); }
4302
+ if (peg$silentFails === 0) { peg$fail(peg$e70); }
4120
4303
  }
4121
4304
  if (s1 !== peg$FAILED) {
4122
4305
  s2 = peg$currPos;
4123
4306
  peg$silentFails++;
4124
4307
  if (input.charCodeAt(peg$currPos) === 61) {
4125
- s3 = peg$c44;
4308
+ s3 = peg$c46;
4126
4309
  peg$currPos++;
4127
4310
  } else {
4128
4311
  s3 = peg$FAILED;
4129
- if (peg$silentFails === 0) { peg$fail(peg$e68); }
4312
+ if (peg$silentFails === 0) { peg$fail(peg$e70); }
4130
4313
  }
4131
4314
  peg$silentFails--;
4132
4315
  if (s3 === peg$FAILED) {
@@ -4140,7 +4323,7 @@ function peg$parse(input, options) {
4140
4323
  s4 = peg$parseimplicitParenthesesCallExpression();
4141
4324
  if (s4 !== peg$FAILED) {
4142
4325
  peg$savedPos = s0;
4143
- s0 = peg$f64(s4);
4326
+ s0 = peg$f71(s4);
4144
4327
  } else {
4145
4328
  peg$currPos = s0;
4146
4329
  s0 = peg$FAILED;
@@ -4159,7 +4342,7 @@ function peg$parse(input, options) {
4159
4342
  peg$silentFails--;
4160
4343
  if (s0 === peg$FAILED) {
4161
4344
  s1 = peg$FAILED;
4162
- if (peg$silentFails === 0) { peg$fail(peg$e87); }
4345
+ if (peg$silentFails === 0) { peg$fail(peg$e89); }
4163
4346
  }
4164
4347
 
4165
4348
  return s0;
@@ -4169,19 +4352,19 @@ function peg$parse(input, options) {
4169
4352
  var s0;
4170
4353
 
4171
4354
  if (input.charCodeAt(peg$currPos) === 8594) {
4172
- s0 = peg$c54;
4355
+ s0 = peg$c56;
4173
4356
  peg$currPos++;
4174
4357
  } else {
4175
4358
  s0 = peg$FAILED;
4176
- if (peg$silentFails === 0) { peg$fail(peg$e88); }
4359
+ if (peg$silentFails === 0) { peg$fail(peg$e90); }
4177
4360
  }
4178
4361
  if (s0 === peg$FAILED) {
4179
- if (input.substr(peg$currPos, 2) === peg$c55) {
4180
- s0 = peg$c55;
4362
+ if (input.substr(peg$currPos, 2) === peg$c57) {
4363
+ s0 = peg$c57;
4181
4364
  peg$currPos += 2;
4182
4365
  } else {
4183
4366
  s0 = peg$FAILED;
4184
- if (peg$silentFails === 0) { peg$fail(peg$e89); }
4367
+ if (peg$silentFails === 0) { peg$fail(peg$e91); }
4185
4368
  }
4186
4369
  }
4187
4370
 
@@ -4192,12 +4375,12 @@ function peg$parse(input, options) {
4192
4375
  var s0, s1, s2, s3;
4193
4376
 
4194
4377
  s0 = peg$currPos;
4195
- if (input.substr(peg$currPos, 2) === peg$c46) {
4196
- s1 = peg$c46;
4378
+ if (input.substr(peg$currPos, 2) === peg$c48) {
4379
+ s1 = peg$c48;
4197
4380
  peg$currPos += 2;
4198
4381
  } else {
4199
4382
  s1 = peg$FAILED;
4200
- if (peg$silentFails === 0) { peg$fail(peg$e77); }
4383
+ if (peg$silentFails === 0) { peg$fail(peg$e79); }
4201
4384
  }
4202
4385
  if (s1 !== peg$FAILED) {
4203
4386
  s2 = [];
@@ -4206,7 +4389,7 @@ function peg$parse(input, options) {
4206
4389
  peg$currPos++;
4207
4390
  } else {
4208
4391
  s3 = peg$FAILED;
4209
- if (peg$silentFails === 0) { peg$fail(peg$e83); }
4392
+ if (peg$silentFails === 0) { peg$fail(peg$e85); }
4210
4393
  }
4211
4394
  while (s3 !== peg$FAILED) {
4212
4395
  s2.push(s3);
@@ -4215,11 +4398,11 @@ function peg$parse(input, options) {
4215
4398
  peg$currPos++;
4216
4399
  } else {
4217
4400
  s3 = peg$FAILED;
4218
- if (peg$silentFails === 0) { peg$fail(peg$e83); }
4401
+ if (peg$silentFails === 0) { peg$fail(peg$e85); }
4219
4402
  }
4220
4403
  }
4221
4404
  peg$savedPos = s0;
4222
- s0 = peg$f65();
4405
+ s0 = peg$f72();
4223
4406
  } else {
4224
4407
  peg$currPos = s0;
4225
4408
  s0 = peg$FAILED;
@@ -4234,11 +4417,11 @@ function peg$parse(input, options) {
4234
4417
  peg$silentFails++;
4235
4418
  s0 = peg$currPos;
4236
4419
  if (input.charCodeAt(peg$currPos) === 39) {
4237
- s1 = peg$c56;
4420
+ s1 = peg$c30;
4238
4421
  peg$currPos++;
4239
4422
  } else {
4240
4423
  s1 = peg$FAILED;
4241
- if (peg$silentFails === 0) { peg$fail(peg$e91); }
4424
+ if (peg$silentFails === 0) { peg$fail(peg$e39); }
4242
4425
  }
4243
4426
  if (s1 !== peg$FAILED) {
4244
4427
  s2 = [];
@@ -4247,16 +4430,10 @@ function peg$parse(input, options) {
4247
4430
  s2.push(s3);
4248
4431
  s3 = peg$parsesingleQuoteStringChar();
4249
4432
  }
4250
- if (input.charCodeAt(peg$currPos) === 39) {
4251
- s3 = peg$c56;
4252
- peg$currPos++;
4253
- } else {
4254
- s3 = peg$FAILED;
4255
- if (peg$silentFails === 0) { peg$fail(peg$e91); }
4256
- }
4433
+ s3 = peg$parseexpectSingleQuote();
4257
4434
  if (s3 !== peg$FAILED) {
4258
4435
  peg$savedPos = s0;
4259
- s0 = peg$f66(s2);
4436
+ s0 = peg$f73(s2);
4260
4437
  } else {
4261
4438
  peg$currPos = s0;
4262
4439
  s0 = peg$FAILED;
@@ -4268,7 +4445,7 @@ function peg$parse(input, options) {
4268
4445
  peg$silentFails--;
4269
4446
  if (s0 === peg$FAILED) {
4270
4447
  s1 = peg$FAILED;
4271
- if (peg$silentFails === 0) { peg$fail(peg$e90); }
4448
+ if (peg$silentFails === 0) { peg$fail(peg$e92); }
4272
4449
  }
4273
4450
 
4274
4451
  return s0;
@@ -4281,11 +4458,11 @@ function peg$parse(input, options) {
4281
4458
  s1 = peg$currPos;
4282
4459
  peg$silentFails++;
4283
4460
  if (input.charCodeAt(peg$currPos) === 39) {
4284
- s2 = peg$c56;
4461
+ s2 = peg$c30;
4285
4462
  peg$currPos++;
4286
4463
  } else {
4287
4464
  s2 = peg$FAILED;
4288
- if (peg$silentFails === 0) { peg$fail(peg$e91); }
4465
+ if (peg$silentFails === 0) { peg$fail(peg$e39); }
4289
4466
  }
4290
4467
  if (s2 === peg$FAILED) {
4291
4468
  s2 = peg$parsenewLine();
@@ -4320,7 +4497,7 @@ function peg$parse(input, options) {
4320
4497
  s1 = peg$parseslashFollows();
4321
4498
  if (s1 !== peg$FAILED) {
4322
4499
  peg$savedPos = s0;
4323
- s1 = peg$f67();
4500
+ s1 = peg$f74();
4324
4501
  }
4325
4502
  s0 = s1;
4326
4503
 
@@ -4334,11 +4511,11 @@ function peg$parse(input, options) {
4334
4511
  s1 = peg$currPos;
4335
4512
  peg$silentFails++;
4336
4513
  if (input.charCodeAt(peg$currPos) === 47) {
4337
- s2 = peg$c45;
4514
+ s2 = peg$c47;
4338
4515
  peg$currPos++;
4339
4516
  } else {
4340
4517
  s2 = peg$FAILED;
4341
- if (peg$silentFails === 0) { peg$fail(peg$e72); }
4518
+ if (peg$silentFails === 0) { peg$fail(peg$e74); }
4342
4519
  }
4343
4520
  peg$silentFails--;
4344
4521
  if (s2 !== peg$FAILED) {
@@ -4349,7 +4526,7 @@ function peg$parse(input, options) {
4349
4526
  }
4350
4527
  if (s1 !== peg$FAILED) {
4351
4528
  peg$savedPos = s0;
4352
- s1 = peg$f68();
4529
+ s1 = peg$f75();
4353
4530
  }
4354
4531
  s0 = s1;
4355
4532
 
@@ -4366,7 +4543,7 @@ function peg$parse(input, options) {
4366
4543
  s3 = peg$parsepipelineExpression();
4367
4544
  if (s3 !== peg$FAILED) {
4368
4545
  peg$savedPos = s0;
4369
- s0 = peg$f69(s3);
4546
+ s0 = peg$f76(s3);
4370
4547
  } else {
4371
4548
  peg$currPos = s0;
4372
4549
  s0 = peg$FAILED;
@@ -4393,7 +4570,7 @@ function peg$parse(input, options) {
4393
4570
  peg$silentFails--;
4394
4571
  if (s0 === peg$FAILED) {
4395
4572
  s1 = peg$FAILED;
4396
- if (peg$silentFails === 0) { peg$fail(peg$e92); }
4573
+ if (peg$silentFails === 0) { peg$fail(peg$e93); }
4397
4574
  }
4398
4575
 
4399
4576
  return s0;
@@ -4430,10 +4607,10 @@ function peg$parse(input, options) {
4430
4607
  }
4431
4608
  }
4432
4609
  peg$savedPos = s0;
4433
- s0 = peg$f70(s1, s2);
4610
+ s0 = peg$f77(s1, s2);
4434
4611
  peg$silentFails--;
4435
4612
  s1 = peg$FAILED;
4436
- if (peg$silentFails === 0) { peg$fail(peg$e93); }
4613
+ if (peg$silentFails === 0) { peg$fail(peg$e94); }
4437
4614
 
4438
4615
  return s0;
4439
4616
  }
@@ -4444,12 +4621,12 @@ function peg$parse(input, options) {
4444
4621
  s0 = peg$currPos;
4445
4622
  s1 = peg$currPos;
4446
4623
  peg$silentFails++;
4447
- if (input.substr(peg$currPos, 2) === peg$c57) {
4448
- s2 = peg$c57;
4624
+ if (input.substr(peg$currPos, 2) === peg$c58) {
4625
+ s2 = peg$c58;
4449
4626
  peg$currPos += 2;
4450
4627
  } else {
4451
4628
  s2 = peg$FAILED;
4452
- if (peg$silentFails === 0) { peg$fail(peg$e94); }
4629
+ if (peg$silentFails === 0) { peg$fail(peg$e95); }
4453
4630
  }
4454
4631
  peg$silentFails--;
4455
4632
  if (s2 === peg$FAILED) {
@@ -4486,11 +4663,11 @@ function peg$parse(input, options) {
4486
4663
  s2 = peg$parsetemplateDocumentChar();
4487
4664
  }
4488
4665
  peg$savedPos = s0;
4489
- s1 = peg$f71(s1);
4666
+ s1 = peg$f78(s1);
4490
4667
  s0 = s1;
4491
4668
  peg$silentFails--;
4492
4669
  s1 = peg$FAILED;
4493
- if (peg$silentFails === 0) { peg$fail(peg$e95); }
4670
+ if (peg$silentFails === 0) { peg$fail(peg$e96); }
4494
4671
 
4495
4672
  return s0;
4496
4673
  }
@@ -4501,11 +4678,11 @@ function peg$parse(input, options) {
4501
4678
  peg$silentFails++;
4502
4679
  s0 = peg$currPos;
4503
4680
  if (input.charCodeAt(peg$currPos) === 96) {
4504
- s1 = peg$c58;
4681
+ s1 = peg$c27;
4505
4682
  peg$currPos++;
4506
4683
  } else {
4507
4684
  s1 = peg$FAILED;
4508
- if (peg$silentFails === 0) { peg$fail(peg$e97); }
4685
+ if (peg$silentFails === 0) { peg$fail(peg$e36); }
4509
4686
  }
4510
4687
  if (s1 !== peg$FAILED) {
4511
4688
  s2 = peg$parsetemplateLiteralText();
@@ -4533,16 +4710,10 @@ function peg$parse(input, options) {
4533
4710
  s4 = peg$FAILED;
4534
4711
  }
4535
4712
  }
4536
- if (input.charCodeAt(peg$currPos) === 96) {
4537
- s4 = peg$c58;
4538
- peg$currPos++;
4539
- } else {
4540
- s4 = peg$FAILED;
4541
- if (peg$silentFails === 0) { peg$fail(peg$e97); }
4542
- }
4713
+ s4 = peg$parseexpectBacktick();
4543
4714
  if (s4 !== peg$FAILED) {
4544
4715
  peg$savedPos = s0;
4545
- s0 = peg$f72(s2, s3);
4716
+ s0 = peg$f79(s2, s3);
4546
4717
  } else {
4547
4718
  peg$currPos = s0;
4548
4719
  s0 = peg$FAILED;
@@ -4554,7 +4725,7 @@ function peg$parse(input, options) {
4554
4725
  peg$silentFails--;
4555
4726
  if (s0 === peg$FAILED) {
4556
4727
  s1 = peg$FAILED;
4557
- if (peg$silentFails === 0) { peg$fail(peg$e96); }
4728
+ if (peg$silentFails === 0) { peg$fail(peg$e97); }
4558
4729
  }
4559
4730
 
4560
4731
  return s0;
@@ -4567,19 +4738,19 @@ function peg$parse(input, options) {
4567
4738
  s1 = peg$currPos;
4568
4739
  peg$silentFails++;
4569
4740
  if (input.charCodeAt(peg$currPos) === 96) {
4570
- s2 = peg$c58;
4741
+ s2 = peg$c27;
4571
4742
  peg$currPos++;
4572
4743
  } else {
4573
4744
  s2 = peg$FAILED;
4574
- if (peg$silentFails === 0) { peg$fail(peg$e97); }
4745
+ if (peg$silentFails === 0) { peg$fail(peg$e36); }
4575
4746
  }
4576
4747
  if (s2 === peg$FAILED) {
4577
- if (input.substr(peg$currPos, 2) === peg$c57) {
4578
- s2 = peg$c57;
4748
+ if (input.substr(peg$currPos, 2) === peg$c58) {
4749
+ s2 = peg$c58;
4579
4750
  peg$currPos += 2;
4580
4751
  } else {
4581
4752
  s2 = peg$FAILED;
4582
- if (peg$silentFails === 0) { peg$fail(peg$e94); }
4753
+ if (peg$silentFails === 0) { peg$fail(peg$e95); }
4583
4754
  }
4584
4755
  }
4585
4756
  peg$silentFails--;
@@ -4616,7 +4787,7 @@ function peg$parse(input, options) {
4616
4787
  s2 = peg$parsetemplateLiteralChar();
4617
4788
  }
4618
4789
  peg$savedPos = s0;
4619
- s1 = peg$f73(s1);
4790
+ s1 = peg$f80(s1);
4620
4791
  s0 = s1;
4621
4792
 
4622
4793
  return s0;
@@ -4627,26 +4798,26 @@ function peg$parse(input, options) {
4627
4798
 
4628
4799
  peg$silentFails++;
4629
4800
  s0 = peg$currPos;
4630
- if (input.substr(peg$currPos, 2) === peg$c57) {
4631
- s1 = peg$c57;
4801
+ if (input.substr(peg$currPos, 2) === peg$c58) {
4802
+ s1 = peg$c58;
4632
4803
  peg$currPos += 2;
4633
4804
  } else {
4634
4805
  s1 = peg$FAILED;
4635
- if (peg$silentFails === 0) { peg$fail(peg$e94); }
4806
+ if (peg$silentFails === 0) { peg$fail(peg$e95); }
4636
4807
  }
4637
4808
  if (s1 !== peg$FAILED) {
4638
4809
  s2 = peg$parseexpression();
4639
4810
  if (s2 !== peg$FAILED) {
4640
4811
  if (input.charCodeAt(peg$currPos) === 125) {
4641
- s3 = peg$c7;
4812
+ s3 = peg$c28;
4642
4813
  peg$currPos++;
4643
4814
  } else {
4644
4815
  s3 = peg$FAILED;
4645
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
4816
+ if (peg$silentFails === 0) { peg$fail(peg$e37); }
4646
4817
  }
4647
4818
  if (s3 !== peg$FAILED) {
4648
4819
  peg$savedPos = s0;
4649
- s0 = peg$f74(s2);
4820
+ s0 = peg$f81(s2);
4650
4821
  } else {
4651
4822
  peg$currPos = s0;
4652
4823
  s0 = peg$FAILED;
@@ -4678,7 +4849,7 @@ function peg$parse(input, options) {
4678
4849
  peg$currPos++;
4679
4850
  } else {
4680
4851
  s0 = peg$FAILED;
4681
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
4852
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
4682
4853
  }
4683
4854
  }
4684
4855
 
@@ -4695,7 +4866,7 @@ function peg$parse(input, options) {
4695
4866
  s3 = peg$parseunaryExpression();
4696
4867
  if (s3 !== peg$FAILED) {
4697
4868
  peg$savedPos = s0;
4698
- s0 = peg$f75(s1, s3);
4869
+ s0 = peg$f82(s1, s3);
4699
4870
  } else {
4700
4871
  peg$currPos = s0;
4701
4872
  s0 = peg$FAILED;
@@ -4810,9 +4981,6 @@ const peg$allowedStartRules = [
4810
4981
  "bitwiseXorExpression",
4811
4982
  "bitwiseXorOperator",
4812
4983
  "callExpression",
4813
- "closingBrace",
4814
- "closingBracket",
4815
- "closingParenthesis",
4816
4984
  "commaExpression",
4817
4985
  "comment",
4818
4986
  "conditionalExpression",
@@ -4824,6 +4992,14 @@ const peg$allowedStartRules = [
4824
4992
  "equalityExpression",
4825
4993
  "equalityOperator",
4826
4994
  "escapedChar",
4995
+ "expectBacktick",
4996
+ "expectClosingBrace",
4997
+ "expectClosingBracket",
4998
+ "expectClosingParenthesis",
4999
+ "expectDoubleQuote",
5000
+ "expectGuillemet",
5001
+ "expectSingleQuote",
5002
+ "expectPipelineExpression",
4827
5003
  "exponentiationExpression",
4828
5004
  "expression",
4829
5005
  "floatLiteral",
@@ -4834,7 +5010,6 @@ const peg$allowedStartRules = [
4834
5010
  "host",
4835
5011
  "identifier",
4836
5012
  "identifierChar",
4837
- "identifierList",
4838
5013
  "implicitParenthesesCallExpression",
4839
5014
  "implicitParensthesesArguments",
4840
5015
  "inlineSpace",
@@ -4859,6 +5034,9 @@ const peg$allowedStartRules = [
4859
5034
  "objectProperty",
4860
5035
  "objectShorthandProperty",
4861
5036
  "objectPublicKey",
5037
+ "parameter",
5038
+ "parameterList",
5039
+ "parameterSingleton",
4862
5040
  "parenthesesArguments",
4863
5041
  "path",
4864
5042
  "pathArguments",