@weborigami/language 0.0.40 → 0.0.41

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.
@@ -182,7 +182,7 @@ function peg$parse(input, options) {
182
182
  var peg$FAILED = {};
183
183
  var peg$source = options.grammarSource;
184
184
 
185
- var peg$startRuleFunctions = { __: peg$parse__, absoluteFilePath: peg$parseabsoluteFilePath, argsChain: peg$parseargsChain, assignment: peg$parseassignment, assignmentOrShorthand: peg$parseassignmentOrShorthand, array: peg$parsearray, callTarget: peg$parsecallTarget, comment: peg$parsecomment, digits: peg$parsedigits, doubleQuoteString: peg$parsedoubleQuoteString, doubleQuoteStringChar: peg$parsedoubleQuoteStringChar, escapedChar: peg$parseescapedChar, expr: peg$parseexpr, expression: peg$parseexpression, float: peg$parsefloat, functionComposition: peg$parsefunctionComposition, group: peg$parsegroup, identifier: peg$parseidentifier, identifierChar: peg$parseidentifierChar, implicitParensCall: peg$parseimplicitParensCall, host: peg$parsehost, inlineSpace: peg$parseinlineSpace, integer: peg$parseinteger, lambda: peg$parselambda, leadingSlashPath: peg$parseleadingSlashPath, list: peg$parselist, newLine: peg$parsenewLine, number: peg$parsenumber, object: peg$parseobject, objectProperties: peg$parseobjectProperties, objectProperty: peg$parseobjectProperty, objectPropertyOrShorthand: peg$parseobjectPropertyOrShorthand, parensArgs: peg$parseparensArgs, separator: peg$parseseparator, sign: peg$parsesign, path: peg$parsepath, pathKey: peg$parsepathKey, protocolCall: peg$parseprotocolCall, protocol: peg$parseprotocol, reservedProtocol: peg$parsereservedProtocol, scopeReference: peg$parsescopeReference, singleQuoteString: peg$parsesingleQuoteString, singleQuoteStringChar: peg$parsesingleQuoteStringChar, start: peg$parsestart, string: peg$parsestring, templateDocument: peg$parsetemplateDocument, templateDocumentChar: peg$parsetemplateDocumentChar, templateDocumentContents: peg$parsetemplateDocumentContents, templateDocumentText: peg$parsetemplateDocumentText, templateLiteral: peg$parsetemplateLiteral, templateLiteralChar: peg$parsetemplateLiteralChar, templateLiteralContents: peg$parsetemplateLiteralContents, templateLiteralText: peg$parsetemplateLiteralText, templateSubstitution: peg$parsetemplateSubstitution, textChar: peg$parsetextChar, tree: peg$parsetree, treeAssignments: peg$parsetreeAssignments, whitespaceWithNewLine: peg$parsewhitespaceWithNewLine };
185
+ var peg$startRuleFunctions = { __: peg$parse__, absoluteFilePath: peg$parseabsoluteFilePath, args: peg$parseargs, assignment: peg$parseassignment, assignmentOrShorthand: peg$parseassignmentOrShorthand, array: peg$parsearray, callTarget: peg$parsecallTarget, comment: peg$parsecomment, digits: peg$parsedigits, doubleQuoteString: peg$parsedoubleQuoteString, doubleQuoteStringChar: peg$parsedoubleQuoteStringChar, escapedChar: peg$parseescapedChar, expr: peg$parseexpr, expression: peg$parseexpression, float: peg$parsefloat, functionComposition: peg$parsefunctionComposition, group: peg$parsegroup, identifier: peg$parseidentifier, identifierChar: peg$parseidentifierChar, identifierList: peg$parseidentifierList, implicitParensCall: peg$parseimplicitParensCall, host: peg$parsehost, inlineSpace: peg$parseinlineSpace, integer: peg$parseinteger, lambda: peg$parselambda, leadingSlashPath: peg$parseleadingSlashPath, list: peg$parselist, newLine: peg$parsenewLine, number: peg$parsenumber, object: peg$parseobject, objectProperties: peg$parseobjectProperties, objectProperty: peg$parseobjectProperty, objectPropertyOrShorthand: peg$parseobjectPropertyOrShorthand, parameterizedLambda: peg$parseparameterizedLambda, parensArgs: peg$parseparensArgs, separator: peg$parseseparator, sign: peg$parsesign, path: peg$parsepath, pathKey: peg$parsepathKey, protocolCall: peg$parseprotocolCall, protocol: peg$parseprotocol, reservedProtocol: peg$parsereservedProtocol, scopeReference: peg$parsescopeReference, singleQuoteString: peg$parsesingleQuoteString, singleQuoteStringChar: peg$parsesingleQuoteStringChar, start: peg$parsestart, string: peg$parsestring, templateDocument: peg$parsetemplateDocument, templateDocumentChar: peg$parsetemplateDocumentChar, templateDocumentContents: peg$parsetemplateDocumentContents, templateDocumentText: peg$parsetemplateDocumentText, templateLiteral: peg$parsetemplateLiteral, templateLiteralChar: peg$parsetemplateLiteralChar, templateLiteralContents: peg$parsetemplateLiteralContents, templateLiteralText: peg$parsetemplateLiteralText, templateSubstitution: peg$parsetemplateSubstitution, textChar: peg$parsetextChar, tree: peg$parsetree, treeAssignments: peg$parsetreeAssignments, whitespaceWithNewLine: peg$parsewhitespaceWithNewLine };
186
186
  var peg$startRuleFunction = peg$parse__;
187
187
 
188
188
  var peg$c0 = "=";
@@ -201,21 +201,23 @@ function peg$parse(input, options) {
201
201
  var peg$c13 = "\r";
202
202
  var peg$c14 = "{";
203
203
  var peg$c15 = "}";
204
- var peg$c16 = ",";
205
- var peg$c17 = "https";
206
- var peg$c18 = "http";
207
- var peg$c19 = "package";
208
- var peg$c20 = "treehttps";
209
- var peg$c21 = "treehttp";
210
- var peg$c22 = "tree";
211
- var peg$c23 = "'";
212
- var peg$c24 = "{{";
213
- var peg$c25 = "`";
214
- var peg$c26 = "}}";
204
+ var peg$c16 = "=>";
205
+ var peg$c17 = "\u21D2";
206
+ var peg$c18 = ",";
207
+ var peg$c19 = "https";
208
+ var peg$c20 = "http";
209
+ var peg$c21 = "package";
210
+ var peg$c22 = "treehttps";
211
+ var peg$c23 = "treehttp";
212
+ var peg$c24 = "tree";
213
+ var peg$c25 = "'";
214
+ var peg$c26 = "{{";
215
+ var peg$c27 = "`";
216
+ var peg$c28 = "}}";
215
217
 
216
218
  var peg$r0 = /^[^\n\r]/;
217
219
  var peg$r1 = /^[0-9]/;
218
- var peg$r2 = /^[^(){}[\],\/:=`"'\\# \t\n\r]/;
220
+ var peg$r2 = /^[^(){}[\]<>,\/:=`"'\\# \t\n\r]/;
219
221
  var peg$r3 = /^[ \t]/;
220
222
  var peg$r4 = /^[+\-]/;
221
223
 
@@ -245,7 +247,7 @@ function peg$parse(input, options) {
245
247
  var peg$e23 = peg$literalExpectation("(", false);
246
248
  var peg$e24 = peg$literalExpectation(")", false);
247
249
  var peg$e25 = peg$otherExpectation("identifier");
248
- var peg$e26 = peg$classExpectation(["(", ")", "{", "}", "[", "]", ",", "/", ":", "=", "`", "\"", "'", "\\", "#", " ", "\t", "\n", "\r"], true, false);
250
+ var peg$e26 = peg$classExpectation(["(", ")", "{", "}", "[", "]", "<", ">", ",", "/", ":", "=", "`", "\"", "'", "\\", "#", " ", "\t", "\n", "\r"], true, false);
249
251
  var peg$e27 = peg$otherExpectation("function call with implicit parentheses");
250
252
  var peg$e28 = peg$otherExpectation("HTTP/HTTPS host");
251
253
  var peg$e29 = peg$literalExpectation(":", false);
@@ -263,36 +265,38 @@ function peg$parse(input, options) {
263
265
  var peg$e41 = peg$literalExpectation("{", false);
264
266
  var peg$e42 = peg$literalExpectation("}", false);
265
267
  var peg$e43 = peg$otherExpectation("object property");
266
- var peg$e44 = peg$otherExpectation("function arguments in parentheses");
267
- var peg$e45 = peg$literalExpectation(",", false);
268
- var peg$e46 = peg$classExpectation(["+", "-"], false, false);
269
- var peg$e47 = peg$otherExpectation("slash-separated path");
270
- var peg$e48 = peg$otherExpectation("path element");
271
- var peg$e49 = peg$otherExpectation("function call using protocol: syntax");
272
- var peg$e50 = peg$otherExpectation("protocol");
273
- var peg$e51 = peg$otherExpectation("reserved protocol");
274
- var peg$e52 = peg$literalExpectation("https", false);
275
- var peg$e53 = peg$literalExpectation("http", false);
276
- var peg$e54 = peg$literalExpectation("package", false);
277
- var peg$e55 = peg$literalExpectation("treehttps", false);
278
- var peg$e56 = peg$literalExpectation("treehttp", false);
279
- var peg$e57 = peg$literalExpectation("tree", false);
280
- var peg$e58 = peg$otherExpectation("scope reference");
281
- var peg$e59 = peg$otherExpectation("single quote string");
282
- var peg$e60 = peg$literalExpectation("'", false);
283
- var peg$e61 = peg$otherExpectation("string");
284
- var peg$e62 = peg$otherExpectation("template");
285
- var peg$e63 = peg$literalExpectation("{{", false);
286
- var peg$e64 = peg$otherExpectation("template text");
287
- var peg$e65 = peg$otherExpectation("template literal");
288
- var peg$e66 = peg$literalExpectation("`", false);
289
- var peg$e67 = peg$otherExpectation("template substitution");
290
- var peg$e68 = peg$literalExpectation("}}", false);
291
- var peg$e69 = peg$otherExpectation("tree literal");
268
+ var peg$e44 = peg$literalExpectation("=>", false);
269
+ var peg$e45 = peg$literalExpectation("\u21D2", false);
270
+ var peg$e46 = peg$otherExpectation("function arguments in parentheses");
271
+ var peg$e47 = peg$literalExpectation(",", false);
272
+ var peg$e48 = peg$classExpectation(["+", "-"], false, false);
273
+ var peg$e49 = peg$otherExpectation("slash-separated path");
274
+ var peg$e50 = peg$otherExpectation("path element");
275
+ var peg$e51 = peg$otherExpectation("function call using protocol: syntax");
276
+ var peg$e52 = peg$otherExpectation("protocol");
277
+ var peg$e53 = peg$otherExpectation("reserved protocol");
278
+ var peg$e54 = peg$literalExpectation("https", false);
279
+ var peg$e55 = peg$literalExpectation("http", false);
280
+ var peg$e56 = peg$literalExpectation("package", false);
281
+ var peg$e57 = peg$literalExpectation("treehttps", false);
282
+ var peg$e58 = peg$literalExpectation("treehttp", false);
283
+ var peg$e59 = peg$literalExpectation("tree", false);
284
+ var peg$e60 = peg$otherExpectation("scope reference");
285
+ var peg$e61 = peg$otherExpectation("single quote string");
286
+ var peg$e62 = peg$literalExpectation("'", false);
287
+ var peg$e63 = peg$otherExpectation("string");
288
+ var peg$e64 = peg$otherExpectation("template");
289
+ var peg$e65 = peg$literalExpectation("{{", false);
290
+ var peg$e66 = peg$otherExpectation("template text");
291
+ var peg$e67 = peg$otherExpectation("template literal");
292
+ var peg$e68 = peg$literalExpectation("`", false);
293
+ var peg$e69 = peg$otherExpectation("template substitution");
294
+ var peg$e70 = peg$literalExpectation("}}", false);
295
+ var peg$e71 = peg$otherExpectation("tree literal");
292
296
 
293
297
  var peg$f0 = function() { return ""; };
294
298
  var peg$f1 = function(path) { return [[ops.filesRoot], ...path]; };
295
- var peg$f2 = function(parts) { return parts; };
299
+ var peg$f2 = function(path) { return [ops.traverse, ...path]; };
296
300
  var peg$f3 = function(key) { return [key, [ops.inherited, key]]; };
297
301
  var peg$f4 = function(list) { return [ops.array, ...(list ?? [])]; };
298
302
  var peg$f5 = function(chars) { return chars.join(""); };
@@ -301,43 +305,49 @@ function peg$parse(input, options) {
301
305
  };
302
306
  var peg$f7 = function(target, chain) { return makeFunctionCall(target, chain); };
303
307
  var peg$f8 = function(chars) { return chars.join(""); };
304
- var peg$f9 = function(target, args) {
308
+ var peg$f9 = function(head, tail) {
309
+ return [head].concat(tail);
310
+ };
311
+ var peg$f10 = function(target, args) {
305
312
  return [target, ...args];
306
313
  };
307
- var peg$f10 = function() { return text(); };
308
- var peg$f11 = function() {
314
+ var peg$f11 = function() { return text(); };
315
+ var peg$f12 = function() {
309
316
  return parseInt(text());
310
317
  };
311
- var peg$f12 = function(expr) { return [ops.lambda, expr]; };
312
- var peg$f13 = function() { return [""]; };
313
- var peg$f14 = function(head, tail) { return [head].concat(tail); };
314
- var peg$f15 = function(properties) { return [ops.object, ...(properties ?? [])]; };
315
- var peg$f16 = function(head, tail) {
318
+ var peg$f13 = function(expr) { return [ops.lambda, null, expr]; };
319
+ var peg$f14 = function() { return [""]; };
320
+ var peg$f15 = function(head, tail) { return [head].concat(tail); };
321
+ var peg$f16 = function(properties) { return [ops.object, ...(properties ?? [])]; };
322
+ var peg$f17 = function(head, tail) {
316
323
  return [head].concat(tail);
317
324
  };
318
- var peg$f17 = function(key) { return [key, [ops.scope, key]]; };
319
- var peg$f18 = function(list) { return list ?? [undefined]; };
320
- var peg$f19 = function(head, tail) { return [head].concat(tail); };
321
- var peg$f20 = function(key) { return [key]; };
322
- var peg$f21 = function(key) { return key.join(""); };
323
- var peg$f22 = function(protocol, host, path) {
325
+ var peg$f18 = function(key) { return [key, [ops.scope, key]]; };
326
+ var peg$f19 = function(parameters, expr) {
327
+ return [ops.lambda, parameters ?? [], expr];
328
+ };
329
+ var peg$f20 = function(list) { return list ?? [undefined]; };
330
+ var peg$f21 = function(head, tail) { return [head].concat(tail); };
331
+ var peg$f22 = function(key) { return [key]; };
332
+ var peg$f23 = function(key) { return key.join(""); };
333
+ var peg$f24 = function(protocol, host, path) {
324
334
  return [protocol, host, ...(path ?? [])];
325
335
  };
326
- var peg$f23 = function() { return ops.https; };
327
- var peg$f24 = function() { return ops.http; };
328
- var peg$f25 = function() { return [ops.scope, "@package"] };
329
- var peg$f26 = function() { return ops.treeHttps; };
330
- var peg$f27 = function() { return ops.treeHttp; };
336
+ var peg$f25 = function() { return ops.https; };
337
+ var peg$f26 = function() { return ops.http; };
338
+ var peg$f27 = function() { return [ops.scope, "@package"] };
331
339
  var peg$f28 = function() { return ops.treeHttps; };
332
- var peg$f29 = function(key) { return [ops.scope, key]; };
333
- var peg$f30 = function(chars) { return chars.join(""); };
334
- var peg$f31 = function(contents) { return [ops.lambda, contents]; };
335
- var peg$f32 = function(parts) { return makeTemplate(parts); };
336
- var peg$f33 = function(chars) { return chars.join(""); };
340
+ var peg$f29 = function() { return ops.treeHttp; };
341
+ var peg$f30 = function() { return ops.treeHttps; };
342
+ var peg$f31 = function(key) { return [ops.scope, key]; };
343
+ var peg$f32 = function(chars) { return chars.join(""); };
344
+ var peg$f33 = function(contents) { return [ops.lambda, null, contents]; };
337
345
  var peg$f34 = function(parts) { return makeTemplate(parts); };
338
346
  var peg$f35 = function(chars) { return chars.join(""); };
339
- var peg$f36 = function(assignments) { return [ops.tree, ...(assignments ?? [])]; };
340
- var peg$f37 = function(head, tail) {
347
+ var peg$f36 = function(parts) { return makeTemplate(parts); };
348
+ var peg$f37 = function(chars) { return chars.join(""); };
349
+ var peg$f38 = function(assignments) { return [ops.tree, ...(assignments ?? [])]; };
350
+ var peg$f39 = function(head, tail) {
341
351
  return [head].concat(tail);
342
352
  };
343
353
  var peg$currPos = 0;
@@ -549,32 +559,20 @@ function peg$parse(input, options) {
549
559
  return s0;
550
560
  }
551
561
 
552
- function peg$parseargsChain() {
553
- var s0, s1, s2;
562
+ function peg$parseargs() {
563
+ var s0, s1;
554
564
 
555
565
  peg$silentFails++;
556
- s0 = peg$currPos;
557
- s1 = [];
558
- s2 = peg$parseparensArgs();
559
- if (s2 === peg$FAILED) {
560
- s2 = peg$parseleadingSlashPath();
561
- }
562
- if (s2 !== peg$FAILED) {
563
- while (s2 !== peg$FAILED) {
564
- s1.push(s2);
565
- s2 = peg$parseparensArgs();
566
- if (s2 === peg$FAILED) {
567
- s2 = peg$parseleadingSlashPath();
568
- }
566
+ s0 = peg$parseparensArgs();
567
+ if (s0 === peg$FAILED) {
568
+ s0 = peg$currPos;
569
+ s1 = peg$parseleadingSlashPath();
570
+ if (s1 !== peg$FAILED) {
571
+ peg$savedPos = s0;
572
+ s1 = peg$f2(s1);
569
573
  }
570
- } else {
571
- s1 = peg$FAILED;
572
- }
573
- if (s1 !== peg$FAILED) {
574
- peg$savedPos = s0;
575
- s1 = peg$f2(s1);
574
+ s0 = s1;
576
575
  }
577
- s0 = s1;
578
576
  peg$silentFails--;
579
577
  if (s0 === peg$FAILED) {
580
578
  s1 = peg$FAILED;
@@ -701,11 +699,14 @@ function peg$parse(input, options) {
701
699
  if (s0 === peg$FAILED) {
702
700
  s0 = peg$parselambda();
703
701
  if (s0 === peg$FAILED) {
704
- s0 = peg$parseprotocolCall();
702
+ s0 = peg$parseparameterizedLambda();
705
703
  if (s0 === peg$FAILED) {
706
- s0 = peg$parsegroup();
704
+ s0 = peg$parseprotocolCall();
707
705
  if (s0 === peg$FAILED) {
708
- s0 = peg$parsescopeReference();
706
+ s0 = peg$parsegroup();
707
+ if (s0 === peg$FAILED) {
708
+ s0 = peg$parsescopeReference();
709
+ }
709
710
  }
710
711
  }
711
712
  }
@@ -944,19 +945,22 @@ function peg$parse(input, options) {
944
945
  if (s0 === peg$FAILED) {
945
946
  s0 = peg$parsetree();
946
947
  if (s0 === peg$FAILED) {
947
- s0 = peg$parselambda();
948
+ s0 = peg$parsetemplateLiteral();
948
949
  if (s0 === peg$FAILED) {
949
- s0 = peg$parsetemplateLiteral();
950
+ s0 = peg$parselambda();
950
951
  if (s0 === peg$FAILED) {
951
- s0 = peg$parsegroup();
952
+ s0 = peg$parseparameterizedLambda();
952
953
  if (s0 === peg$FAILED) {
953
- s0 = peg$parsestring();
954
+ s0 = peg$parsegroup();
954
955
  if (s0 === peg$FAILED) {
955
- s0 = peg$parsenumber();
956
+ s0 = peg$parsestring();
956
957
  if (s0 === peg$FAILED) {
957
- s0 = peg$parseprotocolCall();
958
+ s0 = peg$parsenumber();
958
959
  if (s0 === peg$FAILED) {
959
- s0 = peg$parsescopeReference();
960
+ s0 = peg$parseprotocolCall();
961
+ if (s0 === peg$FAILED) {
962
+ s0 = peg$parsescopeReference();
963
+ }
960
964
  }
961
965
  }
962
966
  }
@@ -1044,13 +1048,22 @@ function peg$parse(input, options) {
1044
1048
  }
1045
1049
 
1046
1050
  function peg$parsefunctionComposition() {
1047
- var s0, s1, s2;
1051
+ var s0, s1, s2, s3;
1048
1052
 
1049
1053
  peg$silentFails++;
1050
1054
  s0 = peg$currPos;
1051
1055
  s1 = peg$parsecallTarget();
1052
1056
  if (s1 !== peg$FAILED) {
1053
- s2 = peg$parseargsChain();
1057
+ s2 = [];
1058
+ s3 = peg$parseargs();
1059
+ if (s3 !== peg$FAILED) {
1060
+ while (s3 !== peg$FAILED) {
1061
+ s2.push(s3);
1062
+ s3 = peg$parseargs();
1063
+ }
1064
+ } else {
1065
+ s2 = peg$FAILED;
1066
+ }
1054
1067
  if (s2 !== peg$FAILED) {
1055
1068
  peg$savedPos = s0;
1056
1069
  s0 = peg$f7(s1, s2);
@@ -1164,6 +1177,58 @@ function peg$parse(input, options) {
1164
1177
  return s0;
1165
1178
  }
1166
1179
 
1180
+ function peg$parseidentifierList() {
1181
+ var s0, s1, s2, s3, s4, s5;
1182
+
1183
+ s0 = peg$currPos;
1184
+ s1 = peg$parseidentifier();
1185
+ if (s1 !== peg$FAILED) {
1186
+ s2 = [];
1187
+ s3 = peg$currPos;
1188
+ s4 = peg$parseseparator();
1189
+ if (s4 !== peg$FAILED) {
1190
+ s5 = peg$parseidentifier();
1191
+ if (s5 !== peg$FAILED) {
1192
+ s3 = s5;
1193
+ } else {
1194
+ peg$currPos = s3;
1195
+ s3 = peg$FAILED;
1196
+ }
1197
+ } else {
1198
+ peg$currPos = s3;
1199
+ s3 = peg$FAILED;
1200
+ }
1201
+ while (s3 !== peg$FAILED) {
1202
+ s2.push(s3);
1203
+ s3 = peg$currPos;
1204
+ s4 = peg$parseseparator();
1205
+ if (s4 !== peg$FAILED) {
1206
+ s5 = peg$parseidentifier();
1207
+ if (s5 !== peg$FAILED) {
1208
+ s3 = s5;
1209
+ } else {
1210
+ peg$currPos = s3;
1211
+ s3 = peg$FAILED;
1212
+ }
1213
+ } else {
1214
+ peg$currPos = s3;
1215
+ s3 = peg$FAILED;
1216
+ }
1217
+ }
1218
+ s3 = peg$parseseparator();
1219
+ if (s3 === peg$FAILED) {
1220
+ s3 = null;
1221
+ }
1222
+ peg$savedPos = s0;
1223
+ s0 = peg$f9(s1, s2);
1224
+ } else {
1225
+ peg$currPos = s0;
1226
+ s0 = peg$FAILED;
1227
+ }
1228
+
1229
+ return s0;
1230
+ }
1231
+
1167
1232
  function peg$parseimplicitParensCall() {
1168
1233
  var s0, s1, s2, s3;
1169
1234
 
@@ -1188,7 +1253,7 @@ function peg$parse(input, options) {
1188
1253
  s3 = peg$parselist();
1189
1254
  if (s3 !== peg$FAILED) {
1190
1255
  peg$savedPos = s0;
1191
- s0 = peg$f9(s1, s3);
1256
+ s0 = peg$f10(s1, s3);
1192
1257
  } else {
1193
1258
  peg$currPos = s0;
1194
1259
  s0 = peg$FAILED;
@@ -1242,7 +1307,7 @@ function peg$parse(input, options) {
1242
1307
  s2 = null;
1243
1308
  }
1244
1309
  peg$savedPos = s0;
1245
- s0 = peg$f10();
1310
+ s0 = peg$f11();
1246
1311
  } else {
1247
1312
  peg$currPos = s0;
1248
1313
  s0 = peg$FAILED;
@@ -1282,7 +1347,7 @@ function peg$parse(input, options) {
1282
1347
  s2 = peg$parsedigits();
1283
1348
  if (s2 !== peg$FAILED) {
1284
1349
  peg$savedPos = s0;
1285
- s0 = peg$f11();
1350
+ s0 = peg$f12();
1286
1351
  } else {
1287
1352
  peg$currPos = s0;
1288
1353
  s0 = peg$FAILED;
@@ -1313,7 +1378,7 @@ function peg$parse(input, options) {
1313
1378
  s3 = peg$parseexpr();
1314
1379
  if (s3 !== peg$FAILED) {
1315
1380
  peg$savedPos = s0;
1316
- s0 = peg$f12(s3);
1381
+ s0 = peg$f13(s3);
1317
1382
  } else {
1318
1383
  peg$currPos = s0;
1319
1384
  s0 = peg$FAILED;
@@ -1366,7 +1431,7 @@ function peg$parse(input, options) {
1366
1431
  }
1367
1432
  if (s1 !== peg$FAILED) {
1368
1433
  peg$savedPos = s0;
1369
- s1 = peg$f13();
1434
+ s1 = peg$f14();
1370
1435
  }
1371
1436
  s0 = s1;
1372
1437
  }
@@ -1423,7 +1488,7 @@ function peg$parse(input, options) {
1423
1488
  s3 = null;
1424
1489
  }
1425
1490
  peg$savedPos = s0;
1426
- s0 = peg$f14(s1, s2);
1491
+ s0 = peg$f15(s1, s2);
1427
1492
  } else {
1428
1493
  peg$currPos = s0;
1429
1494
  s0 = peg$FAILED;
@@ -1513,7 +1578,7 @@ function peg$parse(input, options) {
1513
1578
  }
1514
1579
  if (s4 !== peg$FAILED) {
1515
1580
  peg$savedPos = s0;
1516
- s0 = peg$f15(s3);
1581
+ s0 = peg$f16(s3);
1517
1582
  } else {
1518
1583
  peg$currPos = s0;
1519
1584
  s0 = peg$FAILED;
@@ -1575,7 +1640,7 @@ function peg$parse(input, options) {
1575
1640
  }
1576
1641
  s4 = peg$parse__();
1577
1642
  peg$savedPos = s0;
1578
- s0 = peg$f16(s1, s2);
1643
+ s0 = peg$f17(s1, s2);
1579
1644
  } else {
1580
1645
  peg$currPos = s0;
1581
1646
  s0 = peg$FAILED;
@@ -1634,7 +1699,7 @@ function peg$parse(input, options) {
1634
1699
  s1 = peg$parseidentifier();
1635
1700
  if (s1 !== peg$FAILED) {
1636
1701
  peg$savedPos = s0;
1637
- s1 = peg$f17(s1);
1702
+ s1 = peg$f18(s1);
1638
1703
  }
1639
1704
  s0 = s1;
1640
1705
  }
@@ -1642,6 +1707,74 @@ function peg$parse(input, options) {
1642
1707
  return s0;
1643
1708
  }
1644
1709
 
1710
+ function peg$parseparameterizedLambda() {
1711
+ var s0, s1, s2, s3, s4, s5, s6, s7, s8;
1712
+
1713
+ s0 = peg$currPos;
1714
+ if (input.charCodeAt(peg$currPos) === 40) {
1715
+ s1 = peg$c7;
1716
+ peg$currPos++;
1717
+ } else {
1718
+ s1 = peg$FAILED;
1719
+ if (peg$silentFails === 0) { peg$fail(peg$e23); }
1720
+ }
1721
+ if (s1 !== peg$FAILED) {
1722
+ s2 = peg$parse__();
1723
+ s3 = peg$parseidentifierList();
1724
+ if (s3 === peg$FAILED) {
1725
+ s3 = null;
1726
+ }
1727
+ if (input.charCodeAt(peg$currPos) === 41) {
1728
+ s4 = peg$c8;
1729
+ peg$currPos++;
1730
+ } else {
1731
+ s4 = peg$FAILED;
1732
+ if (peg$silentFails === 0) { peg$fail(peg$e24); }
1733
+ }
1734
+ if (s4 !== peg$FAILED) {
1735
+ s5 = peg$parse__();
1736
+ if (input.substr(peg$currPos, 2) === peg$c16) {
1737
+ s6 = peg$c16;
1738
+ peg$currPos += 2;
1739
+ } else {
1740
+ s6 = peg$FAILED;
1741
+ if (peg$silentFails === 0) { peg$fail(peg$e44); }
1742
+ }
1743
+ if (s6 === peg$FAILED) {
1744
+ if (input.charCodeAt(peg$currPos) === 8658) {
1745
+ s6 = peg$c17;
1746
+ peg$currPos++;
1747
+ } else {
1748
+ s6 = peg$FAILED;
1749
+ if (peg$silentFails === 0) { peg$fail(peg$e45); }
1750
+ }
1751
+ }
1752
+ if (s6 !== peg$FAILED) {
1753
+ s7 = peg$parse__();
1754
+ s8 = peg$parseexpr();
1755
+ if (s8 !== peg$FAILED) {
1756
+ peg$savedPos = s0;
1757
+ s0 = peg$f19(s3, s8);
1758
+ } else {
1759
+ peg$currPos = s0;
1760
+ s0 = peg$FAILED;
1761
+ }
1762
+ } else {
1763
+ peg$currPos = s0;
1764
+ s0 = peg$FAILED;
1765
+ }
1766
+ } else {
1767
+ peg$currPos = s0;
1768
+ s0 = peg$FAILED;
1769
+ }
1770
+ } else {
1771
+ peg$currPos = s0;
1772
+ s0 = peg$FAILED;
1773
+ }
1774
+
1775
+ return s0;
1776
+ }
1777
+
1645
1778
  function peg$parseparensArgs() {
1646
1779
  var s0, s1, s2, s3, s4;
1647
1780
 
@@ -1669,7 +1802,7 @@ function peg$parse(input, options) {
1669
1802
  }
1670
1803
  if (s4 !== peg$FAILED) {
1671
1804
  peg$savedPos = s0;
1672
- s0 = peg$f18(s3);
1805
+ s0 = peg$f20(s3);
1673
1806
  } else {
1674
1807
  peg$currPos = s0;
1675
1808
  s0 = peg$FAILED;
@@ -1681,7 +1814,7 @@ function peg$parse(input, options) {
1681
1814
  peg$silentFails--;
1682
1815
  if (s0 === peg$FAILED) {
1683
1816
  s1 = peg$FAILED;
1684
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
1817
+ if (peg$silentFails === 0) { peg$fail(peg$e46); }
1685
1818
  }
1686
1819
 
1687
1820
  return s0;
@@ -1693,11 +1826,11 @@ function peg$parse(input, options) {
1693
1826
  s0 = peg$currPos;
1694
1827
  s1 = peg$parse__();
1695
1828
  if (input.charCodeAt(peg$currPos) === 44) {
1696
- s2 = peg$c16;
1829
+ s2 = peg$c18;
1697
1830
  peg$currPos++;
1698
1831
  } else {
1699
1832
  s2 = peg$FAILED;
1700
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
1833
+ if (peg$silentFails === 0) { peg$fail(peg$e47); }
1701
1834
  }
1702
1835
  if (s2 !== peg$FAILED) {
1703
1836
  s3 = peg$parse__();
@@ -1722,7 +1855,7 @@ function peg$parse(input, options) {
1722
1855
  peg$currPos++;
1723
1856
  } else {
1724
1857
  s0 = peg$FAILED;
1725
- if (peg$silentFails === 0) { peg$fail(peg$e46); }
1858
+ if (peg$silentFails === 0) { peg$fail(peg$e48); }
1726
1859
  }
1727
1860
 
1728
1861
  return s0;
@@ -1745,7 +1878,7 @@ function peg$parse(input, options) {
1745
1878
  s3 = peg$parsepath();
1746
1879
  if (s3 !== peg$FAILED) {
1747
1880
  peg$savedPos = s0;
1748
- s0 = peg$f19(s1, s3);
1881
+ s0 = peg$f21(s1, s3);
1749
1882
  } else {
1750
1883
  peg$currPos = s0;
1751
1884
  s0 = peg$FAILED;
@@ -1758,13 +1891,13 @@ function peg$parse(input, options) {
1758
1891
  s0 = peg$currPos;
1759
1892
  s1 = peg$parsepathKey();
1760
1893
  peg$savedPos = s0;
1761
- s1 = peg$f20(s1);
1894
+ s1 = peg$f22(s1);
1762
1895
  s0 = s1;
1763
1896
  }
1764
1897
  peg$silentFails--;
1765
1898
  if (s0 === peg$FAILED) {
1766
1899
  s1 = peg$FAILED;
1767
- if (peg$silentFails === 0) { peg$fail(peg$e47); }
1900
+ if (peg$silentFails === 0) { peg$fail(peg$e49); }
1768
1901
  }
1769
1902
 
1770
1903
  return s0;
@@ -1782,11 +1915,11 @@ function peg$parse(input, options) {
1782
1915
  s2 = peg$parseidentifierChar();
1783
1916
  }
1784
1917
  peg$savedPos = s0;
1785
- s1 = peg$f21(s1);
1918
+ s1 = peg$f23(s1);
1786
1919
  s0 = s1;
1787
1920
  peg$silentFails--;
1788
1921
  s1 = peg$FAILED;
1789
- if (peg$silentFails === 0) { peg$fail(peg$e48); }
1922
+ if (peg$silentFails === 0) { peg$fail(peg$e50); }
1790
1923
 
1791
1924
  return s0;
1792
1925
  }
@@ -1835,7 +1968,7 @@ function peg$parse(input, options) {
1835
1968
  s5 = null;
1836
1969
  }
1837
1970
  peg$savedPos = s0;
1838
- s0 = peg$f22(s1, s4, s5);
1971
+ s0 = peg$f24(s1, s4, s5);
1839
1972
  } else {
1840
1973
  peg$currPos = s0;
1841
1974
  s0 = peg$FAILED;
@@ -1851,7 +1984,7 @@ function peg$parse(input, options) {
1851
1984
  peg$silentFails--;
1852
1985
  if (s0 === peg$FAILED) {
1853
1986
  s1 = peg$FAILED;
1854
- if (peg$silentFails === 0) { peg$fail(peg$e49); }
1987
+ if (peg$silentFails === 0) { peg$fail(peg$e51); }
1855
1988
  }
1856
1989
 
1857
1990
  return s0;
@@ -1868,7 +2001,7 @@ function peg$parse(input, options) {
1868
2001
  peg$silentFails--;
1869
2002
  if (s0 === peg$FAILED) {
1870
2003
  s1 = peg$FAILED;
1871
- if (peg$silentFails === 0) { peg$fail(peg$e50); }
2004
+ if (peg$silentFails === 0) { peg$fail(peg$e52); }
1872
2005
  }
1873
2006
 
1874
2007
  return s0;
@@ -1879,86 +2012,86 @@ function peg$parse(input, options) {
1879
2012
 
1880
2013
  peg$silentFails++;
1881
2014
  s0 = peg$currPos;
1882
- if (input.substr(peg$currPos, 5) === peg$c17) {
1883
- s1 = peg$c17;
2015
+ if (input.substr(peg$currPos, 5) === peg$c19) {
2016
+ s1 = peg$c19;
1884
2017
  peg$currPos += 5;
1885
2018
  } else {
1886
2019
  s1 = peg$FAILED;
1887
- if (peg$silentFails === 0) { peg$fail(peg$e52); }
2020
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
1888
2021
  }
1889
2022
  if (s1 !== peg$FAILED) {
1890
2023
  peg$savedPos = s0;
1891
- s1 = peg$f23();
2024
+ s1 = peg$f25();
1892
2025
  }
1893
2026
  s0 = s1;
1894
2027
  if (s0 === peg$FAILED) {
1895
2028
  s0 = peg$currPos;
1896
- if (input.substr(peg$currPos, 4) === peg$c18) {
1897
- s1 = peg$c18;
2029
+ if (input.substr(peg$currPos, 4) === peg$c20) {
2030
+ s1 = peg$c20;
1898
2031
  peg$currPos += 4;
1899
2032
  } else {
1900
2033
  s1 = peg$FAILED;
1901
- if (peg$silentFails === 0) { peg$fail(peg$e53); }
2034
+ if (peg$silentFails === 0) { peg$fail(peg$e55); }
1902
2035
  }
1903
2036
  if (s1 !== peg$FAILED) {
1904
2037
  peg$savedPos = s0;
1905
- s1 = peg$f24();
2038
+ s1 = peg$f26();
1906
2039
  }
1907
2040
  s0 = s1;
1908
2041
  if (s0 === peg$FAILED) {
1909
2042
  s0 = peg$currPos;
1910
- if (input.substr(peg$currPos, 7) === peg$c19) {
1911
- s1 = peg$c19;
2043
+ if (input.substr(peg$currPos, 7) === peg$c21) {
2044
+ s1 = peg$c21;
1912
2045
  peg$currPos += 7;
1913
2046
  } else {
1914
2047
  s1 = peg$FAILED;
1915
- if (peg$silentFails === 0) { peg$fail(peg$e54); }
2048
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
1916
2049
  }
1917
2050
  if (s1 !== peg$FAILED) {
1918
2051
  peg$savedPos = s0;
1919
- s1 = peg$f25();
2052
+ s1 = peg$f27();
1920
2053
  }
1921
2054
  s0 = s1;
1922
2055
  if (s0 === peg$FAILED) {
1923
2056
  s0 = peg$currPos;
1924
- if (input.substr(peg$currPos, 9) === peg$c20) {
1925
- s1 = peg$c20;
2057
+ if (input.substr(peg$currPos, 9) === peg$c22) {
2058
+ s1 = peg$c22;
1926
2059
  peg$currPos += 9;
1927
2060
  } else {
1928
2061
  s1 = peg$FAILED;
1929
- if (peg$silentFails === 0) { peg$fail(peg$e55); }
2062
+ if (peg$silentFails === 0) { peg$fail(peg$e57); }
1930
2063
  }
1931
2064
  if (s1 !== peg$FAILED) {
1932
2065
  peg$savedPos = s0;
1933
- s1 = peg$f26();
2066
+ s1 = peg$f28();
1934
2067
  }
1935
2068
  s0 = s1;
1936
2069
  if (s0 === peg$FAILED) {
1937
2070
  s0 = peg$currPos;
1938
- if (input.substr(peg$currPos, 8) === peg$c21) {
1939
- s1 = peg$c21;
2071
+ if (input.substr(peg$currPos, 8) === peg$c23) {
2072
+ s1 = peg$c23;
1940
2073
  peg$currPos += 8;
1941
2074
  } else {
1942
2075
  s1 = peg$FAILED;
1943
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
2076
+ if (peg$silentFails === 0) { peg$fail(peg$e58); }
1944
2077
  }
1945
2078
  if (s1 !== peg$FAILED) {
1946
2079
  peg$savedPos = s0;
1947
- s1 = peg$f27();
2080
+ s1 = peg$f29();
1948
2081
  }
1949
2082
  s0 = s1;
1950
2083
  if (s0 === peg$FAILED) {
1951
2084
  s0 = peg$currPos;
1952
- if (input.substr(peg$currPos, 4) === peg$c22) {
1953
- s1 = peg$c22;
2085
+ if (input.substr(peg$currPos, 4) === peg$c24) {
2086
+ s1 = peg$c24;
1954
2087
  peg$currPos += 4;
1955
2088
  } else {
1956
2089
  s1 = peg$FAILED;
1957
- if (peg$silentFails === 0) { peg$fail(peg$e57); }
2090
+ if (peg$silentFails === 0) { peg$fail(peg$e59); }
1958
2091
  }
1959
2092
  if (s1 !== peg$FAILED) {
1960
2093
  peg$savedPos = s0;
1961
- s1 = peg$f28();
2094
+ s1 = peg$f30();
1962
2095
  }
1963
2096
  s0 = s1;
1964
2097
  }
@@ -1969,7 +2102,7 @@ function peg$parse(input, options) {
1969
2102
  peg$silentFails--;
1970
2103
  if (s0 === peg$FAILED) {
1971
2104
  s1 = peg$FAILED;
1972
- if (peg$silentFails === 0) { peg$fail(peg$e51); }
2105
+ if (peg$silentFails === 0) { peg$fail(peg$e53); }
1973
2106
  }
1974
2107
 
1975
2108
  return s0;
@@ -1983,13 +2116,13 @@ function peg$parse(input, options) {
1983
2116
  s1 = peg$parseidentifier();
1984
2117
  if (s1 !== peg$FAILED) {
1985
2118
  peg$savedPos = s0;
1986
- s1 = peg$f29(s1);
2119
+ s1 = peg$f31(s1);
1987
2120
  }
1988
2121
  s0 = s1;
1989
2122
  peg$silentFails--;
1990
2123
  if (s0 === peg$FAILED) {
1991
2124
  s1 = peg$FAILED;
1992
- if (peg$silentFails === 0) { peg$fail(peg$e58); }
2125
+ if (peg$silentFails === 0) { peg$fail(peg$e60); }
1993
2126
  }
1994
2127
 
1995
2128
  return s0;
@@ -2001,11 +2134,11 @@ function peg$parse(input, options) {
2001
2134
  peg$silentFails++;
2002
2135
  s0 = peg$currPos;
2003
2136
  if (input.charCodeAt(peg$currPos) === 39) {
2004
- s1 = peg$c23;
2137
+ s1 = peg$c25;
2005
2138
  peg$currPos++;
2006
2139
  } else {
2007
2140
  s1 = peg$FAILED;
2008
- if (peg$silentFails === 0) { peg$fail(peg$e60); }
2141
+ if (peg$silentFails === 0) { peg$fail(peg$e62); }
2009
2142
  }
2010
2143
  if (s1 !== peg$FAILED) {
2011
2144
  s2 = [];
@@ -2015,15 +2148,15 @@ function peg$parse(input, options) {
2015
2148
  s3 = peg$parsesingleQuoteStringChar();
2016
2149
  }
2017
2150
  if (input.charCodeAt(peg$currPos) === 39) {
2018
- s3 = peg$c23;
2151
+ s3 = peg$c25;
2019
2152
  peg$currPos++;
2020
2153
  } else {
2021
2154
  s3 = peg$FAILED;
2022
- if (peg$silentFails === 0) { peg$fail(peg$e60); }
2155
+ if (peg$silentFails === 0) { peg$fail(peg$e62); }
2023
2156
  }
2024
2157
  if (s3 !== peg$FAILED) {
2025
2158
  peg$savedPos = s0;
2026
- s0 = peg$f30(s2);
2159
+ s0 = peg$f32(s2);
2027
2160
  } else {
2028
2161
  peg$currPos = s0;
2029
2162
  s0 = peg$FAILED;
@@ -2035,7 +2168,7 @@ function peg$parse(input, options) {
2035
2168
  peg$silentFails--;
2036
2169
  if (s0 === peg$FAILED) {
2037
2170
  s1 = peg$FAILED;
2038
- if (peg$silentFails === 0) { peg$fail(peg$e59); }
2171
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
2039
2172
  }
2040
2173
 
2041
2174
  return s0;
@@ -2048,11 +2181,11 @@ function peg$parse(input, options) {
2048
2181
  s1 = peg$currPos;
2049
2182
  peg$silentFails++;
2050
2183
  if (input.charCodeAt(peg$currPos) === 39) {
2051
- s2 = peg$c23;
2184
+ s2 = peg$c25;
2052
2185
  peg$currPos++;
2053
2186
  } else {
2054
2187
  s2 = peg$FAILED;
2055
- if (peg$silentFails === 0) { peg$fail(peg$e60); }
2188
+ if (peg$silentFails === 0) { peg$fail(peg$e62); }
2056
2189
  }
2057
2190
  if (s2 === peg$FAILED) {
2058
2191
  s2 = peg$parsenewLine();
@@ -2099,7 +2232,7 @@ function peg$parse(input, options) {
2099
2232
  peg$silentFails--;
2100
2233
  if (s0 === peg$FAILED) {
2101
2234
  s1 = peg$FAILED;
2102
- if (peg$silentFails === 0) { peg$fail(peg$e61); }
2235
+ if (peg$silentFails === 0) { peg$fail(peg$e63); }
2103
2236
  }
2104
2237
 
2105
2238
  return s0;
@@ -2112,11 +2245,11 @@ function peg$parse(input, options) {
2112
2245
  s0 = peg$currPos;
2113
2246
  s1 = peg$parsetemplateDocumentContents();
2114
2247
  peg$savedPos = s0;
2115
- s1 = peg$f31(s1);
2248
+ s1 = peg$f33(s1);
2116
2249
  s0 = s1;
2117
2250
  peg$silentFails--;
2118
2251
  s1 = peg$FAILED;
2119
- if (peg$silentFails === 0) { peg$fail(peg$e62); }
2252
+ if (peg$silentFails === 0) { peg$fail(peg$e64); }
2120
2253
 
2121
2254
  return s0;
2122
2255
  }
@@ -2127,12 +2260,12 @@ function peg$parse(input, options) {
2127
2260
  s0 = peg$currPos;
2128
2261
  s1 = peg$currPos;
2129
2262
  peg$silentFails++;
2130
- if (input.substr(peg$currPos, 2) === peg$c24) {
2131
- s2 = peg$c24;
2263
+ if (input.substr(peg$currPos, 2) === peg$c26) {
2264
+ s2 = peg$c26;
2132
2265
  peg$currPos += 2;
2133
2266
  } else {
2134
2267
  s2 = peg$FAILED;
2135
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
2268
+ if (peg$silentFails === 0) { peg$fail(peg$e65); }
2136
2269
  }
2137
2270
  peg$silentFails--;
2138
2271
  if (s2 === peg$FAILED) {
@@ -2174,7 +2307,7 @@ function peg$parse(input, options) {
2174
2307
  }
2175
2308
  }
2176
2309
  peg$savedPos = s0;
2177
- s1 = peg$f32(s1);
2310
+ s1 = peg$f34(s1);
2178
2311
  s0 = s1;
2179
2312
 
2180
2313
  return s0;
@@ -2197,13 +2330,13 @@ function peg$parse(input, options) {
2197
2330
  }
2198
2331
  if (s1 !== peg$FAILED) {
2199
2332
  peg$savedPos = s0;
2200
- s1 = peg$f33(s1);
2333
+ s1 = peg$f35(s1);
2201
2334
  }
2202
2335
  s0 = s1;
2203
2336
  peg$silentFails--;
2204
2337
  if (s0 === peg$FAILED) {
2205
2338
  s1 = peg$FAILED;
2206
- if (peg$silentFails === 0) { peg$fail(peg$e64); }
2339
+ if (peg$silentFails === 0) { peg$fail(peg$e66); }
2207
2340
  }
2208
2341
 
2209
2342
  return s0;
@@ -2215,20 +2348,20 @@ function peg$parse(input, options) {
2215
2348
  peg$silentFails++;
2216
2349
  s0 = peg$currPos;
2217
2350
  if (input.charCodeAt(peg$currPos) === 96) {
2218
- s1 = peg$c25;
2351
+ s1 = peg$c27;
2219
2352
  peg$currPos++;
2220
2353
  } else {
2221
2354
  s1 = peg$FAILED;
2222
- if (peg$silentFails === 0) { peg$fail(peg$e66); }
2355
+ if (peg$silentFails === 0) { peg$fail(peg$e68); }
2223
2356
  }
2224
2357
  if (s1 !== peg$FAILED) {
2225
2358
  s2 = peg$parsetemplateLiteralContents();
2226
2359
  if (input.charCodeAt(peg$currPos) === 96) {
2227
- s3 = peg$c25;
2360
+ s3 = peg$c27;
2228
2361
  peg$currPos++;
2229
2362
  } else {
2230
2363
  s3 = peg$FAILED;
2231
- if (peg$silentFails === 0) { peg$fail(peg$e66); }
2364
+ if (peg$silentFails === 0) { peg$fail(peg$e68); }
2232
2365
  }
2233
2366
  if (s3 !== peg$FAILED) {
2234
2367
  s0 = s2;
@@ -2243,7 +2376,7 @@ function peg$parse(input, options) {
2243
2376
  peg$silentFails--;
2244
2377
  if (s0 === peg$FAILED) {
2245
2378
  s1 = peg$FAILED;
2246
- if (peg$silentFails === 0) { peg$fail(peg$e65); }
2379
+ if (peg$silentFails === 0) { peg$fail(peg$e67); }
2247
2380
  }
2248
2381
 
2249
2382
  return s0;
@@ -2256,19 +2389,19 @@ function peg$parse(input, options) {
2256
2389
  s1 = peg$currPos;
2257
2390
  peg$silentFails++;
2258
2391
  if (input.charCodeAt(peg$currPos) === 96) {
2259
- s2 = peg$c25;
2392
+ s2 = peg$c27;
2260
2393
  peg$currPos++;
2261
2394
  } else {
2262
2395
  s2 = peg$FAILED;
2263
- if (peg$silentFails === 0) { peg$fail(peg$e66); }
2396
+ if (peg$silentFails === 0) { peg$fail(peg$e68); }
2264
2397
  }
2265
2398
  if (s2 === peg$FAILED) {
2266
- if (input.substr(peg$currPos, 2) === peg$c24) {
2267
- s2 = peg$c24;
2399
+ if (input.substr(peg$currPos, 2) === peg$c26) {
2400
+ s2 = peg$c26;
2268
2401
  peg$currPos += 2;
2269
2402
  } else {
2270
2403
  s2 = peg$FAILED;
2271
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
2404
+ if (peg$silentFails === 0) { peg$fail(peg$e65); }
2272
2405
  }
2273
2406
  }
2274
2407
  peg$silentFails--;
@@ -2311,7 +2444,7 @@ function peg$parse(input, options) {
2311
2444
  }
2312
2445
  }
2313
2446
  peg$savedPos = s0;
2314
- s1 = peg$f34(s1);
2447
+ s1 = peg$f36(s1);
2315
2448
  s0 = s1;
2316
2449
 
2317
2450
  return s0;
@@ -2333,7 +2466,7 @@ function peg$parse(input, options) {
2333
2466
  }
2334
2467
  if (s1 !== peg$FAILED) {
2335
2468
  peg$savedPos = s0;
2336
- s1 = peg$f35(s1);
2469
+ s1 = peg$f37(s1);
2337
2470
  }
2338
2471
  s0 = s1;
2339
2472
 
@@ -2345,22 +2478,22 @@ function peg$parse(input, options) {
2345
2478
 
2346
2479
  peg$silentFails++;
2347
2480
  s0 = peg$currPos;
2348
- if (input.substr(peg$currPos, 2) === peg$c24) {
2349
- s1 = peg$c24;
2481
+ if (input.substr(peg$currPos, 2) === peg$c26) {
2482
+ s1 = peg$c26;
2350
2483
  peg$currPos += 2;
2351
2484
  } else {
2352
2485
  s1 = peg$FAILED;
2353
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
2486
+ if (peg$silentFails === 0) { peg$fail(peg$e65); }
2354
2487
  }
2355
2488
  if (s1 !== peg$FAILED) {
2356
2489
  s2 = peg$parseexpression();
2357
2490
  if (s2 !== peg$FAILED) {
2358
- if (input.substr(peg$currPos, 2) === peg$c26) {
2359
- s3 = peg$c26;
2491
+ if (input.substr(peg$currPos, 2) === peg$c28) {
2492
+ s3 = peg$c28;
2360
2493
  peg$currPos += 2;
2361
2494
  } else {
2362
2495
  s3 = peg$FAILED;
2363
- if (peg$silentFails === 0) { peg$fail(peg$e68); }
2496
+ if (peg$silentFails === 0) { peg$fail(peg$e70); }
2364
2497
  }
2365
2498
  if (s3 !== peg$FAILED) {
2366
2499
  s0 = s2;
@@ -2379,7 +2512,7 @@ function peg$parse(input, options) {
2379
2512
  peg$silentFails--;
2380
2513
  if (s0 === peg$FAILED) {
2381
2514
  s1 = peg$FAILED;
2382
- if (peg$silentFails === 0) { peg$fail(peg$e67); }
2515
+ if (peg$silentFails === 0) { peg$fail(peg$e69); }
2383
2516
  }
2384
2517
 
2385
2518
  return s0;
@@ -2429,7 +2562,7 @@ function peg$parse(input, options) {
2429
2562
  }
2430
2563
  if (s4 !== peg$FAILED) {
2431
2564
  peg$savedPos = s0;
2432
- s0 = peg$f36(s3);
2565
+ s0 = peg$f38(s3);
2433
2566
  } else {
2434
2567
  peg$currPos = s0;
2435
2568
  s0 = peg$FAILED;
@@ -2441,7 +2574,7 @@ function peg$parse(input, options) {
2441
2574
  peg$silentFails--;
2442
2575
  if (s0 === peg$FAILED) {
2443
2576
  s1 = peg$FAILED;
2444
- if (peg$silentFails === 0) { peg$fail(peg$e69); }
2577
+ if (peg$silentFails === 0) { peg$fail(peg$e71); }
2445
2578
  }
2446
2579
 
2447
2580
  return s0;
@@ -2491,7 +2624,7 @@ function peg$parse(input, options) {
2491
2624
  }
2492
2625
  s4 = peg$parse__();
2493
2626
  peg$savedPos = s0;
2494
- s0 = peg$f37(s1, s2);
2627
+ s0 = peg$f39(s1, s2);
2495
2628
  } else {
2496
2629
  peg$currPos = s0;
2497
2630
  s0 = peg$FAILED;