links-notation 0.21.2 → 0.21.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +295 -118
- package/package.json +1 -1
- package/src/grammar.pegjs +46 -3
- package/src/parser-generated.js +297 -113
- package/tests/NestingDepth.test.js +124 -0
- package/tests/support/nestingDepthWorker.js +15 -0
package/dist/index.js
CHANGED
|
@@ -639,11 +639,11 @@ function peg$parse(input, options) {
|
|
|
639
639
|
const peg$e0 = peg$classExpectation([" ", "\t"], false, false, false);
|
|
640
640
|
const peg$e1 = peg$classExpectation(["\r", `
|
|
641
641
|
`], false, false, false);
|
|
642
|
-
const peg$e2 = peg$
|
|
643
|
-
const peg$e3 = peg$literalExpectation("
|
|
644
|
-
const peg$e4 = peg$literalExpectation("
|
|
645
|
-
const peg$e5 = peg$literalExpectation(
|
|
646
|
-
const peg$e6 = peg$
|
|
642
|
+
const peg$e2 = peg$anyExpectation();
|
|
643
|
+
const peg$e3 = peg$literalExpectation("(", false);
|
|
644
|
+
const peg$e4 = peg$literalExpectation(")", false);
|
|
645
|
+
const peg$e5 = peg$literalExpectation(":", false);
|
|
646
|
+
const peg$e6 = peg$literalExpectation('"', false);
|
|
647
647
|
const peg$e7 = peg$literalExpectation("'", false);
|
|
648
648
|
const peg$e8 = peg$literalExpectation("`", false);
|
|
649
649
|
const peg$e9 = peg$literalExpectation(" ", false);
|
|
@@ -673,26 +673,31 @@ function peg$parse(input, options) {
|
|
|
673
673
|
function peg$f6(l) {
|
|
674
674
|
return l;
|
|
675
675
|
}
|
|
676
|
-
function peg$f7(
|
|
676
|
+
function peg$f7() {
|
|
677
|
+
return !unreadableLines.has(lineKey(offset()));
|
|
678
|
+
}
|
|
679
|
+
function peg$f8(e, saved, l) {
|
|
680
|
+
if (l === null) {
|
|
681
|
+
indentationStack = saved;
|
|
682
|
+
return e;
|
|
683
|
+
}
|
|
677
684
|
return Object.assign({}, e, { children: l });
|
|
678
685
|
}
|
|
679
|
-
function peg$
|
|
680
|
-
|
|
686
|
+
function peg$f9() {
|
|
687
|
+
unreadableLines.add(lineKey(offset()));
|
|
688
|
+
return false;
|
|
681
689
|
}
|
|
682
|
-
function peg$
|
|
690
|
+
function peg$f10(l) {
|
|
683
691
|
return l;
|
|
684
692
|
}
|
|
685
|
-
function peg$
|
|
693
|
+
function peg$f11(i) {
|
|
686
694
|
return { id: i };
|
|
687
695
|
}
|
|
688
|
-
function peg$
|
|
689
|
-
return
|
|
696
|
+
function peg$f12(g, rest) {
|
|
697
|
+
return rest === null ? g : { values: [g].concat(rest) };
|
|
690
698
|
}
|
|
691
|
-
function peg$
|
|
692
|
-
return
|
|
693
|
-
}
|
|
694
|
-
function peg$f13(sl) {
|
|
695
|
-
return sl;
|
|
699
|
+
function peg$f13() {
|
|
700
|
+
return null;
|
|
696
701
|
}
|
|
697
702
|
function peg$f14(fl) {
|
|
698
703
|
return fl;
|
|
@@ -704,34 +709,38 @@ function peg$parse(input, options) {
|
|
|
704
709
|
exitNestedContext();
|
|
705
710
|
return body;
|
|
706
711
|
}
|
|
707
|
-
function peg$f17(
|
|
712
|
+
function peg$f17() {
|
|
713
|
+
exitNestedContext();
|
|
714
|
+
return false;
|
|
715
|
+
}
|
|
716
|
+
function peg$f18(l) {
|
|
708
717
|
return { nested: l };
|
|
709
718
|
}
|
|
710
|
-
function peg$
|
|
719
|
+
function peg$f19() {
|
|
711
720
|
return { nested: [] };
|
|
712
721
|
}
|
|
713
|
-
function peg$
|
|
722
|
+
function peg$f20() {
|
|
714
723
|
return enterNestedContext();
|
|
715
724
|
}
|
|
716
|
-
function peg$
|
|
725
|
+
function peg$f21(value) {
|
|
717
726
|
return value;
|
|
718
727
|
}
|
|
719
|
-
function peg$
|
|
728
|
+
function peg$f22(list) {
|
|
720
729
|
return list;
|
|
721
730
|
}
|
|
722
|
-
function peg$
|
|
731
|
+
function peg$f23(id, v) {
|
|
723
732
|
return { id, values: v };
|
|
724
733
|
}
|
|
725
|
-
function peg$
|
|
734
|
+
function peg$f24(v) {
|
|
726
735
|
return { values: v };
|
|
727
736
|
}
|
|
728
|
-
function peg$
|
|
737
|
+
function peg$f25(id) {
|
|
729
738
|
return { id, values: [] };
|
|
730
739
|
}
|
|
731
|
-
function peg$
|
|
740
|
+
function peg$f26(chars) {
|
|
732
741
|
return chars.join("");
|
|
733
742
|
}
|
|
734
|
-
function peg$
|
|
743
|
+
function peg$f27() {
|
|
735
744
|
const pos = offset();
|
|
736
745
|
const result = parseQuotedStringAt(input, pos, '"');
|
|
737
746
|
if (result) {
|
|
@@ -741,19 +750,19 @@ function peg$parse(input, options) {
|
|
|
741
750
|
}
|
|
742
751
|
return false;
|
|
743
752
|
}
|
|
744
|
-
function peg$
|
|
753
|
+
function peg$f28(chars) {
|
|
745
754
|
return parsedValue;
|
|
746
755
|
}
|
|
747
|
-
function peg$
|
|
756
|
+
function peg$f29(c, cs) {
|
|
748
757
|
return [c].concat(cs).join("");
|
|
749
758
|
}
|
|
750
|
-
function peg$
|
|
759
|
+
function peg$f30() {
|
|
751
760
|
return parsedLength > 1 && (parsedLength--, true);
|
|
752
761
|
}
|
|
753
|
-
function peg$
|
|
762
|
+
function peg$f31(c) {
|
|
754
763
|
return c;
|
|
755
764
|
}
|
|
756
|
-
function peg$
|
|
765
|
+
function peg$f32() {
|
|
757
766
|
const pos = offset();
|
|
758
767
|
const result = parseQuotedStringAt(input, pos, "'");
|
|
759
768
|
if (result) {
|
|
@@ -763,19 +772,19 @@ function peg$parse(input, options) {
|
|
|
763
772
|
}
|
|
764
773
|
return false;
|
|
765
774
|
}
|
|
766
|
-
function peg$
|
|
775
|
+
function peg$f33(chars) {
|
|
767
776
|
return parsedValue;
|
|
768
777
|
}
|
|
769
|
-
function peg$
|
|
778
|
+
function peg$f34(c, cs) {
|
|
770
779
|
return [c].concat(cs).join("");
|
|
771
780
|
}
|
|
772
|
-
function peg$
|
|
781
|
+
function peg$f35() {
|
|
773
782
|
return parsedLength > 1 && (parsedLength--, true);
|
|
774
783
|
}
|
|
775
|
-
function peg$
|
|
784
|
+
function peg$f36(c) {
|
|
776
785
|
return c;
|
|
777
786
|
}
|
|
778
|
-
function peg$
|
|
787
|
+
function peg$f37() {
|
|
779
788
|
const pos = offset();
|
|
780
789
|
const result = parseQuotedStringAt(input, pos, "`");
|
|
781
790
|
if (result) {
|
|
@@ -785,31 +794,34 @@ function peg$parse(input, options) {
|
|
|
785
794
|
}
|
|
786
795
|
return false;
|
|
787
796
|
}
|
|
788
|
-
function peg$
|
|
797
|
+
function peg$f38(chars) {
|
|
789
798
|
return parsedValue;
|
|
790
799
|
}
|
|
791
|
-
function peg$
|
|
800
|
+
function peg$f39(c, cs) {
|
|
792
801
|
return [c].concat(cs).join("");
|
|
793
802
|
}
|
|
794
|
-
function peg$
|
|
803
|
+
function peg$f40() {
|
|
795
804
|
return parsedLength > 1 && (parsedLength--, true);
|
|
796
805
|
}
|
|
797
|
-
function peg$
|
|
806
|
+
function peg$f41(c) {
|
|
798
807
|
return c;
|
|
799
808
|
}
|
|
800
|
-
function peg$
|
|
809
|
+
function peg$f42() {
|
|
810
|
+
return indentationStack.slice();
|
|
811
|
+
}
|
|
812
|
+
function peg$f43(spaces) {
|
|
801
813
|
setBaseIndentation(spaces);
|
|
802
814
|
}
|
|
803
|
-
function peg$
|
|
815
|
+
function peg$f44(spaces) {
|
|
804
816
|
return normalizeIndentation(spaces) > getCurrentIndentation();
|
|
805
817
|
}
|
|
806
|
-
function peg$
|
|
818
|
+
function peg$f45(spaces) {
|
|
807
819
|
pushIndentation(spaces);
|
|
808
820
|
}
|
|
809
|
-
function peg$
|
|
821
|
+
function peg$f46(spaces) {
|
|
810
822
|
return checkIndentation(spaces);
|
|
811
823
|
}
|
|
812
|
-
function peg$
|
|
824
|
+
function peg$f47() {
|
|
813
825
|
return isInsideNestedContext();
|
|
814
826
|
}
|
|
815
827
|
let peg$currPos = options.peg$currPos | 0;
|
|
@@ -1135,20 +1147,38 @@ function peg$parse(input, options) {
|
|
|
1135
1147
|
return s0;
|
|
1136
1148
|
}
|
|
1137
1149
|
function peg$parseelement() {
|
|
1138
|
-
let s0, s1, s2, s3;
|
|
1150
|
+
let s0, s1, s2, s3, s4, s5, s6;
|
|
1139
1151
|
s0 = peg$currPos;
|
|
1140
|
-
|
|
1152
|
+
peg$savedPos = peg$currPos;
|
|
1153
|
+
s1 = peg$f7();
|
|
1154
|
+
if (s1) {
|
|
1155
|
+
s1 = undefined;
|
|
1156
|
+
} else {
|
|
1157
|
+
s1 = peg$FAILED;
|
|
1158
|
+
}
|
|
1141
1159
|
if (s1 !== peg$FAILED) {
|
|
1142
|
-
s2 = peg$
|
|
1160
|
+
s2 = peg$parseanyLink();
|
|
1143
1161
|
if (s2 !== peg$FAILED) {
|
|
1144
|
-
s3 = peg$
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1162
|
+
s3 = peg$parseSAVE_INDENTATION();
|
|
1163
|
+
s4 = peg$currPos;
|
|
1164
|
+
s5 = peg$parsePUSH_INDENTATION();
|
|
1165
|
+
if (s5 !== peg$FAILED) {
|
|
1166
|
+
s6 = peg$parselinks();
|
|
1167
|
+
if (s6 !== peg$FAILED) {
|
|
1168
|
+
s4 = s6;
|
|
1169
|
+
} else {
|
|
1170
|
+
peg$currPos = s4;
|
|
1171
|
+
s4 = peg$FAILED;
|
|
1172
|
+
}
|
|
1148
1173
|
} else {
|
|
1149
|
-
peg$currPos =
|
|
1150
|
-
|
|
1174
|
+
peg$currPos = s4;
|
|
1175
|
+
s4 = peg$FAILED;
|
|
1176
|
+
}
|
|
1177
|
+
if (s4 === peg$FAILED) {
|
|
1178
|
+
s4 = null;
|
|
1151
1179
|
}
|
|
1180
|
+
peg$savedPos = s0;
|
|
1181
|
+
s0 = peg$f8(s2, s3, s4);
|
|
1152
1182
|
} else {
|
|
1153
1183
|
peg$currPos = s0;
|
|
1154
1184
|
s0 = peg$FAILED;
|
|
@@ -1159,12 +1189,34 @@ function peg$parse(input, options) {
|
|
|
1159
1189
|
}
|
|
1160
1190
|
if (s0 === peg$FAILED) {
|
|
1161
1191
|
s0 = peg$currPos;
|
|
1162
|
-
|
|
1192
|
+
peg$savedPos = peg$currPos;
|
|
1193
|
+
s1 = peg$f9();
|
|
1194
|
+
if (s1) {
|
|
1195
|
+
s1 = undefined;
|
|
1196
|
+
} else {
|
|
1197
|
+
s1 = peg$FAILED;
|
|
1198
|
+
}
|
|
1163
1199
|
if (s1 !== peg$FAILED) {
|
|
1164
|
-
peg$
|
|
1165
|
-
|
|
1200
|
+
if (input.length > peg$currPos) {
|
|
1201
|
+
s2 = input.charAt(peg$currPos);
|
|
1202
|
+
peg$currPos++;
|
|
1203
|
+
} else {
|
|
1204
|
+
s2 = peg$FAILED;
|
|
1205
|
+
if (peg$silentFails === 0) {
|
|
1206
|
+
peg$fail(peg$e2);
|
|
1207
|
+
}
|
|
1208
|
+
}
|
|
1209
|
+
if (s2 !== peg$FAILED) {
|
|
1210
|
+
s1 = [s1, s2];
|
|
1211
|
+
s0 = s1;
|
|
1212
|
+
} else {
|
|
1213
|
+
peg$currPos = s0;
|
|
1214
|
+
s0 = peg$FAILED;
|
|
1215
|
+
}
|
|
1216
|
+
} else {
|
|
1217
|
+
peg$currPos = s0;
|
|
1218
|
+
s0 = peg$FAILED;
|
|
1166
1219
|
}
|
|
1167
|
-
s0 = s1;
|
|
1168
1220
|
}
|
|
1169
1221
|
return s0;
|
|
1170
1222
|
}
|
|
@@ -1174,7 +1226,7 @@ function peg$parse(input, options) {
|
|
|
1174
1226
|
s1 = peg$parsenestedGroup();
|
|
1175
1227
|
if (s1 !== peg$FAILED) {
|
|
1176
1228
|
peg$savedPos = s0;
|
|
1177
|
-
s1 = peg$
|
|
1229
|
+
s1 = peg$f10(s1);
|
|
1178
1230
|
}
|
|
1179
1231
|
s0 = s1;
|
|
1180
1232
|
if (s0 === peg$FAILED) {
|
|
@@ -1182,7 +1234,7 @@ function peg$parse(input, options) {
|
|
|
1182
1234
|
s1 = peg$parsereference();
|
|
1183
1235
|
if (s1 !== peg$FAILED) {
|
|
1184
1236
|
peg$savedPos = s0;
|
|
1185
|
-
s1 = peg$
|
|
1237
|
+
s1 = peg$f11(s1);
|
|
1186
1238
|
}
|
|
1187
1239
|
s0 = s1;
|
|
1188
1240
|
}
|
|
@@ -1191,12 +1243,28 @@ function peg$parse(input, options) {
|
|
|
1191
1243
|
function peg$parseanyLink() {
|
|
1192
1244
|
let s0, s1, s2;
|
|
1193
1245
|
s0 = peg$currPos;
|
|
1194
|
-
s1 = peg$
|
|
1246
|
+
s1 = peg$currPos;
|
|
1247
|
+
peg$silentFails++;
|
|
1248
|
+
if (input.charCodeAt(peg$currPos) === 40) {
|
|
1249
|
+
s2 = peg$c0;
|
|
1250
|
+
peg$currPos++;
|
|
1251
|
+
} else {
|
|
1252
|
+
s2 = peg$FAILED;
|
|
1253
|
+
if (peg$silentFails === 0) {
|
|
1254
|
+
peg$fail(peg$e3);
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
peg$silentFails--;
|
|
1258
|
+
if (s2 !== peg$FAILED) {
|
|
1259
|
+
peg$currPos = s1;
|
|
1260
|
+
s1 = undefined;
|
|
1261
|
+
} else {
|
|
1262
|
+
s1 = peg$FAILED;
|
|
1263
|
+
}
|
|
1195
1264
|
if (s1 !== peg$FAILED) {
|
|
1196
|
-
s2 = peg$
|
|
1265
|
+
s2 = peg$parsegroupLink();
|
|
1197
1266
|
if (s2 !== peg$FAILED) {
|
|
1198
|
-
|
|
1199
|
-
s0 = peg$f11(s1);
|
|
1267
|
+
s0 = s2;
|
|
1200
1268
|
} else {
|
|
1201
1269
|
peg$currPos = s0;
|
|
1202
1270
|
s0 = peg$FAILED;
|
|
@@ -1207,20 +1275,84 @@ function peg$parse(input, options) {
|
|
|
1207
1275
|
}
|
|
1208
1276
|
if (s0 === peg$FAILED) {
|
|
1209
1277
|
s0 = peg$currPos;
|
|
1210
|
-
s1 = peg$
|
|
1278
|
+
s1 = peg$currPos;
|
|
1279
|
+
peg$silentFails++;
|
|
1280
|
+
if (input.charCodeAt(peg$currPos) === 40) {
|
|
1281
|
+
s2 = peg$c0;
|
|
1282
|
+
peg$currPos++;
|
|
1283
|
+
} else {
|
|
1284
|
+
s2 = peg$FAILED;
|
|
1285
|
+
if (peg$silentFails === 0) {
|
|
1286
|
+
peg$fail(peg$e3);
|
|
1287
|
+
}
|
|
1288
|
+
}
|
|
1289
|
+
peg$silentFails--;
|
|
1290
|
+
if (s2 === peg$FAILED) {
|
|
1291
|
+
s1 = undefined;
|
|
1292
|
+
} else {
|
|
1293
|
+
peg$currPos = s1;
|
|
1294
|
+
s1 = peg$FAILED;
|
|
1295
|
+
}
|
|
1211
1296
|
if (s1 !== peg$FAILED) {
|
|
1297
|
+
s2 = peg$parseindentedIdLink();
|
|
1298
|
+
if (s2 === peg$FAILED) {
|
|
1299
|
+
s2 = peg$parsesingleLineAnyLink();
|
|
1300
|
+
}
|
|
1301
|
+
if (s2 !== peg$FAILED) {
|
|
1302
|
+
s0 = s2;
|
|
1303
|
+
} else {
|
|
1304
|
+
peg$currPos = s0;
|
|
1305
|
+
s0 = peg$FAILED;
|
|
1306
|
+
}
|
|
1307
|
+
} else {
|
|
1308
|
+
peg$currPos = s0;
|
|
1309
|
+
s0 = peg$FAILED;
|
|
1310
|
+
}
|
|
1311
|
+
}
|
|
1312
|
+
return s0;
|
|
1313
|
+
}
|
|
1314
|
+
function peg$parsegroupLink() {
|
|
1315
|
+
let s0, s1, s2;
|
|
1316
|
+
s0 = peg$currPos;
|
|
1317
|
+
s1 = peg$parsenestedGroup();
|
|
1318
|
+
if (s1 !== peg$FAILED) {
|
|
1319
|
+
s2 = peg$parsegroupLinkRest();
|
|
1320
|
+
if (s2 !== peg$FAILED) {
|
|
1212
1321
|
peg$savedPos = s0;
|
|
1213
|
-
|
|
1322
|
+
s0 = peg$f12(s1, s2);
|
|
1323
|
+
} else {
|
|
1324
|
+
peg$currPos = s0;
|
|
1325
|
+
s0 = peg$FAILED;
|
|
1214
1326
|
}
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1327
|
+
} else {
|
|
1328
|
+
peg$currPos = s0;
|
|
1329
|
+
s0 = peg$FAILED;
|
|
1330
|
+
}
|
|
1331
|
+
return s0;
|
|
1332
|
+
}
|
|
1333
|
+
function peg$parsegroupLinkRest() {
|
|
1334
|
+
let s0, s1, s2;
|
|
1335
|
+
s0 = peg$currPos;
|
|
1336
|
+
s1 = peg$parseeol();
|
|
1337
|
+
if (s1 !== peg$FAILED) {
|
|
1338
|
+
peg$savedPos = s0;
|
|
1339
|
+
s1 = peg$f13();
|
|
1340
|
+
}
|
|
1341
|
+
s0 = s1;
|
|
1342
|
+
if (s0 === peg$FAILED) {
|
|
1343
|
+
s0 = peg$currPos;
|
|
1344
|
+
s1 = [];
|
|
1345
|
+
s2 = peg$parsesingleLineValueAndWhitespace();
|
|
1346
|
+
while (s2 !== peg$FAILED) {
|
|
1347
|
+
s1.push(s2);
|
|
1348
|
+
s2 = peg$parsesingleLineValueAndWhitespace();
|
|
1349
|
+
}
|
|
1350
|
+
s2 = peg$parseeol();
|
|
1351
|
+
if (s2 !== peg$FAILED) {
|
|
1223
1352
|
s0 = s1;
|
|
1353
|
+
} else {
|
|
1354
|
+
peg$currPos = s0;
|
|
1355
|
+
s0 = peg$FAILED;
|
|
1224
1356
|
}
|
|
1225
1357
|
}
|
|
1226
1358
|
return s0;
|
|
@@ -1270,7 +1402,7 @@ function peg$parse(input, options) {
|
|
|
1270
1402
|
} else {
|
|
1271
1403
|
s1 = peg$FAILED;
|
|
1272
1404
|
if (peg$silentFails === 0) {
|
|
1273
|
-
peg$fail(peg$
|
|
1405
|
+
peg$fail(peg$e3);
|
|
1274
1406
|
}
|
|
1275
1407
|
}
|
|
1276
1408
|
if (s1 !== peg$FAILED) {
|
|
@@ -1292,6 +1424,37 @@ function peg$parse(input, options) {
|
|
|
1292
1424
|
peg$currPos = s0;
|
|
1293
1425
|
s0 = peg$FAILED;
|
|
1294
1426
|
}
|
|
1427
|
+
if (s0 === peg$FAILED) {
|
|
1428
|
+
s0 = peg$currPos;
|
|
1429
|
+
if (input.charCodeAt(peg$currPos) === 40) {
|
|
1430
|
+
s1 = peg$c0;
|
|
1431
|
+
peg$currPos++;
|
|
1432
|
+
} else {
|
|
1433
|
+
s1 = peg$FAILED;
|
|
1434
|
+
if (peg$silentFails === 0) {
|
|
1435
|
+
peg$fail(peg$e3);
|
|
1436
|
+
}
|
|
1437
|
+
}
|
|
1438
|
+
if (s1 !== peg$FAILED) {
|
|
1439
|
+
peg$savedPos = peg$currPos;
|
|
1440
|
+
s2 = peg$f17();
|
|
1441
|
+
if (s2) {
|
|
1442
|
+
s2 = undefined;
|
|
1443
|
+
} else {
|
|
1444
|
+
s2 = peg$FAILED;
|
|
1445
|
+
}
|
|
1446
|
+
if (s2 !== peg$FAILED) {
|
|
1447
|
+
s1 = [s1, s2];
|
|
1448
|
+
s0 = s1;
|
|
1449
|
+
} else {
|
|
1450
|
+
peg$currPos = s0;
|
|
1451
|
+
s0 = peg$FAILED;
|
|
1452
|
+
}
|
|
1453
|
+
} else {
|
|
1454
|
+
peg$currPos = s0;
|
|
1455
|
+
s0 = peg$FAILED;
|
|
1456
|
+
}
|
|
1457
|
+
}
|
|
1295
1458
|
return s0;
|
|
1296
1459
|
}
|
|
1297
1460
|
function peg$parsenestedGroupBody() {
|
|
@@ -1307,12 +1470,12 @@ function peg$parse(input, options) {
|
|
|
1307
1470
|
} else {
|
|
1308
1471
|
s4 = peg$FAILED;
|
|
1309
1472
|
if (peg$silentFails === 0) {
|
|
1310
|
-
peg$fail(peg$
|
|
1473
|
+
peg$fail(peg$e4);
|
|
1311
1474
|
}
|
|
1312
1475
|
}
|
|
1313
1476
|
if (s4 !== peg$FAILED) {
|
|
1314
1477
|
peg$savedPos = s0;
|
|
1315
|
-
s0 = peg$
|
|
1478
|
+
s0 = peg$f18(s2);
|
|
1316
1479
|
} else {
|
|
1317
1480
|
peg$currPos = s0;
|
|
1318
1481
|
s0 = peg$FAILED;
|
|
@@ -1330,12 +1493,12 @@ function peg$parse(input, options) {
|
|
|
1330
1493
|
} else {
|
|
1331
1494
|
s2 = peg$FAILED;
|
|
1332
1495
|
if (peg$silentFails === 0) {
|
|
1333
|
-
peg$fail(peg$
|
|
1496
|
+
peg$fail(peg$e4);
|
|
1334
1497
|
}
|
|
1335
1498
|
}
|
|
1336
1499
|
if (s2 !== peg$FAILED) {
|
|
1337
1500
|
peg$savedPos = s0;
|
|
1338
|
-
s0 = peg$
|
|
1501
|
+
s0 = peg$f19();
|
|
1339
1502
|
} else {
|
|
1340
1503
|
peg$currPos = s0;
|
|
1341
1504
|
s0 = peg$FAILED;
|
|
@@ -1346,7 +1509,7 @@ function peg$parse(input, options) {
|
|
|
1346
1509
|
function peg$parseENTER_NESTED_CONTEXT() {
|
|
1347
1510
|
let s0;
|
|
1348
1511
|
peg$savedPos = peg$currPos;
|
|
1349
|
-
s0 = peg$
|
|
1512
|
+
s0 = peg$f20();
|
|
1350
1513
|
if (s0) {
|
|
1351
1514
|
s0 = undefined;
|
|
1352
1515
|
} else {
|
|
@@ -1361,7 +1524,7 @@ function peg$parse(input, options) {
|
|
|
1361
1524
|
s2 = peg$parsereferenceOrLink();
|
|
1362
1525
|
if (s2 !== peg$FAILED) {
|
|
1363
1526
|
peg$savedPos = s0;
|
|
1364
|
-
s0 = peg$
|
|
1527
|
+
s0 = peg$f21(s2);
|
|
1365
1528
|
} else {
|
|
1366
1529
|
peg$currPos = s0;
|
|
1367
1530
|
s0 = peg$FAILED;
|
|
@@ -1383,7 +1546,7 @@ function peg$parse(input, options) {
|
|
|
1383
1546
|
}
|
|
1384
1547
|
if (s1 !== peg$FAILED) {
|
|
1385
1548
|
peg$savedPos = s0;
|
|
1386
|
-
s1 = peg$
|
|
1549
|
+
s1 = peg$f22(s1);
|
|
1387
1550
|
}
|
|
1388
1551
|
s0 = s1;
|
|
1389
1552
|
return s0;
|
|
@@ -1401,14 +1564,14 @@ function peg$parse(input, options) {
|
|
|
1401
1564
|
} else {
|
|
1402
1565
|
s4 = peg$FAILED;
|
|
1403
1566
|
if (peg$silentFails === 0) {
|
|
1404
|
-
peg$fail(peg$
|
|
1567
|
+
peg$fail(peg$e5);
|
|
1405
1568
|
}
|
|
1406
1569
|
}
|
|
1407
1570
|
if (s4 !== peg$FAILED) {
|
|
1408
1571
|
s5 = peg$parsesingleLineValues();
|
|
1409
1572
|
if (s5 !== peg$FAILED) {
|
|
1410
1573
|
peg$savedPos = s0;
|
|
1411
|
-
s0 = peg$
|
|
1574
|
+
s0 = peg$f23(s2, s5);
|
|
1412
1575
|
} else {
|
|
1413
1576
|
peg$currPos = s0;
|
|
1414
1577
|
s0 = peg$FAILED;
|
|
@@ -1429,7 +1592,7 @@ function peg$parse(input, options) {
|
|
|
1429
1592
|
s1 = peg$parsesingleLineValues();
|
|
1430
1593
|
if (s1 !== peg$FAILED) {
|
|
1431
1594
|
peg$savedPos = s0;
|
|
1432
|
-
s1 = peg$
|
|
1595
|
+
s1 = peg$f24(s1);
|
|
1433
1596
|
}
|
|
1434
1597
|
s0 = s1;
|
|
1435
1598
|
return s0;
|
|
@@ -1446,14 +1609,14 @@ function peg$parse(input, options) {
|
|
|
1446
1609
|
} else {
|
|
1447
1610
|
s3 = peg$FAILED;
|
|
1448
1611
|
if (peg$silentFails === 0) {
|
|
1449
|
-
peg$fail(peg$
|
|
1612
|
+
peg$fail(peg$e5);
|
|
1450
1613
|
}
|
|
1451
1614
|
}
|
|
1452
1615
|
if (s3 !== peg$FAILED) {
|
|
1453
1616
|
s4 = peg$parseeol();
|
|
1454
1617
|
if (s4 !== peg$FAILED) {
|
|
1455
1618
|
peg$savedPos = s0;
|
|
1456
|
-
s0 = peg$
|
|
1619
|
+
s0 = peg$f25(s1);
|
|
1457
1620
|
} else {
|
|
1458
1621
|
peg$currPos = s0;
|
|
1459
1622
|
s0 = peg$FAILED;
|
|
@@ -1491,7 +1654,7 @@ function peg$parse(input, options) {
|
|
|
1491
1654
|
}
|
|
1492
1655
|
if (s1 !== peg$FAILED) {
|
|
1493
1656
|
peg$savedPos = s0;
|
|
1494
|
-
s1 = peg$
|
|
1657
|
+
s1 = peg$f26(s1);
|
|
1495
1658
|
}
|
|
1496
1659
|
s0 = s1;
|
|
1497
1660
|
return s0;
|
|
@@ -1518,7 +1681,7 @@ function peg$parse(input, options) {
|
|
|
1518
1681
|
} else {
|
|
1519
1682
|
s2 = peg$FAILED;
|
|
1520
1683
|
if (peg$silentFails === 0) {
|
|
1521
|
-
peg$fail(peg$
|
|
1684
|
+
peg$fail(peg$e6);
|
|
1522
1685
|
}
|
|
1523
1686
|
}
|
|
1524
1687
|
peg$silentFails--;
|
|
@@ -1530,7 +1693,7 @@ function peg$parse(input, options) {
|
|
|
1530
1693
|
}
|
|
1531
1694
|
if (s1 !== peg$FAILED) {
|
|
1532
1695
|
peg$savedPos = peg$currPos;
|
|
1533
|
-
s2 = peg$
|
|
1696
|
+
s2 = peg$f27();
|
|
1534
1697
|
if (s2) {
|
|
1535
1698
|
s2 = undefined;
|
|
1536
1699
|
} else {
|
|
@@ -1540,7 +1703,7 @@ function peg$parse(input, options) {
|
|
|
1540
1703
|
s3 = peg$parseconsumeDouble();
|
|
1541
1704
|
if (s3 !== peg$FAILED) {
|
|
1542
1705
|
peg$savedPos = s0;
|
|
1543
|
-
s0 = peg$
|
|
1706
|
+
s0 = peg$f28(s3);
|
|
1544
1707
|
} else {
|
|
1545
1708
|
peg$currPos = s0;
|
|
1546
1709
|
s0 = peg$FAILED;
|
|
@@ -1564,7 +1727,7 @@ function peg$parse(input, options) {
|
|
|
1564
1727
|
} else {
|
|
1565
1728
|
s1 = peg$FAILED;
|
|
1566
1729
|
if (peg$silentFails === 0) {
|
|
1567
|
-
peg$fail(peg$
|
|
1730
|
+
peg$fail(peg$e2);
|
|
1568
1731
|
}
|
|
1569
1732
|
}
|
|
1570
1733
|
if (s1 !== peg$FAILED) {
|
|
@@ -1575,7 +1738,7 @@ function peg$parse(input, options) {
|
|
|
1575
1738
|
s3 = peg$parseconsumeDoubleMore();
|
|
1576
1739
|
}
|
|
1577
1740
|
peg$savedPos = s0;
|
|
1578
|
-
s0 = peg$
|
|
1741
|
+
s0 = peg$f29(s1, s2);
|
|
1579
1742
|
} else {
|
|
1580
1743
|
peg$currPos = s0;
|
|
1581
1744
|
s0 = peg$FAILED;
|
|
@@ -1586,7 +1749,7 @@ function peg$parse(input, options) {
|
|
|
1586
1749
|
let s0, s1, s2;
|
|
1587
1750
|
s0 = peg$currPos;
|
|
1588
1751
|
peg$savedPos = peg$currPos;
|
|
1589
|
-
s1 = peg$
|
|
1752
|
+
s1 = peg$f30();
|
|
1590
1753
|
if (s1) {
|
|
1591
1754
|
s1 = undefined;
|
|
1592
1755
|
} else {
|
|
@@ -1599,12 +1762,12 @@ function peg$parse(input, options) {
|
|
|
1599
1762
|
} else {
|
|
1600
1763
|
s2 = peg$FAILED;
|
|
1601
1764
|
if (peg$silentFails === 0) {
|
|
1602
|
-
peg$fail(peg$
|
|
1765
|
+
peg$fail(peg$e2);
|
|
1603
1766
|
}
|
|
1604
1767
|
}
|
|
1605
1768
|
if (s2 !== peg$FAILED) {
|
|
1606
1769
|
peg$savedPos = s0;
|
|
1607
|
-
s0 = peg$
|
|
1770
|
+
s0 = peg$f31(s2);
|
|
1608
1771
|
} else {
|
|
1609
1772
|
peg$currPos = s0;
|
|
1610
1773
|
s0 = peg$FAILED;
|
|
@@ -1638,7 +1801,7 @@ function peg$parse(input, options) {
|
|
|
1638
1801
|
}
|
|
1639
1802
|
if (s1 !== peg$FAILED) {
|
|
1640
1803
|
peg$savedPos = peg$currPos;
|
|
1641
|
-
s2 = peg$
|
|
1804
|
+
s2 = peg$f32();
|
|
1642
1805
|
if (s2) {
|
|
1643
1806
|
s2 = undefined;
|
|
1644
1807
|
} else {
|
|
@@ -1648,7 +1811,7 @@ function peg$parse(input, options) {
|
|
|
1648
1811
|
s3 = peg$parseconsumeSingle();
|
|
1649
1812
|
if (s3 !== peg$FAILED) {
|
|
1650
1813
|
peg$savedPos = s0;
|
|
1651
|
-
s0 = peg$
|
|
1814
|
+
s0 = peg$f33(s3);
|
|
1652
1815
|
} else {
|
|
1653
1816
|
peg$currPos = s0;
|
|
1654
1817
|
s0 = peg$FAILED;
|
|
@@ -1672,7 +1835,7 @@ function peg$parse(input, options) {
|
|
|
1672
1835
|
} else {
|
|
1673
1836
|
s1 = peg$FAILED;
|
|
1674
1837
|
if (peg$silentFails === 0) {
|
|
1675
|
-
peg$fail(peg$
|
|
1838
|
+
peg$fail(peg$e2);
|
|
1676
1839
|
}
|
|
1677
1840
|
}
|
|
1678
1841
|
if (s1 !== peg$FAILED) {
|
|
@@ -1683,7 +1846,7 @@ function peg$parse(input, options) {
|
|
|
1683
1846
|
s3 = peg$parseconsumeSingleMore();
|
|
1684
1847
|
}
|
|
1685
1848
|
peg$savedPos = s0;
|
|
1686
|
-
s0 = peg$
|
|
1849
|
+
s0 = peg$f34(s1, s2);
|
|
1687
1850
|
} else {
|
|
1688
1851
|
peg$currPos = s0;
|
|
1689
1852
|
s0 = peg$FAILED;
|
|
@@ -1694,7 +1857,7 @@ function peg$parse(input, options) {
|
|
|
1694
1857
|
let s0, s1, s2;
|
|
1695
1858
|
s0 = peg$currPos;
|
|
1696
1859
|
peg$savedPos = peg$currPos;
|
|
1697
|
-
s1 = peg$
|
|
1860
|
+
s1 = peg$f35();
|
|
1698
1861
|
if (s1) {
|
|
1699
1862
|
s1 = undefined;
|
|
1700
1863
|
} else {
|
|
@@ -1707,12 +1870,12 @@ function peg$parse(input, options) {
|
|
|
1707
1870
|
} else {
|
|
1708
1871
|
s2 = peg$FAILED;
|
|
1709
1872
|
if (peg$silentFails === 0) {
|
|
1710
|
-
peg$fail(peg$
|
|
1873
|
+
peg$fail(peg$e2);
|
|
1711
1874
|
}
|
|
1712
1875
|
}
|
|
1713
1876
|
if (s2 !== peg$FAILED) {
|
|
1714
1877
|
peg$savedPos = s0;
|
|
1715
|
-
s0 = peg$
|
|
1878
|
+
s0 = peg$f36(s2);
|
|
1716
1879
|
} else {
|
|
1717
1880
|
peg$currPos = s0;
|
|
1718
1881
|
s0 = peg$FAILED;
|
|
@@ -1746,7 +1909,7 @@ function peg$parse(input, options) {
|
|
|
1746
1909
|
}
|
|
1747
1910
|
if (s1 !== peg$FAILED) {
|
|
1748
1911
|
peg$savedPos = peg$currPos;
|
|
1749
|
-
s2 = peg$
|
|
1912
|
+
s2 = peg$f37();
|
|
1750
1913
|
if (s2) {
|
|
1751
1914
|
s2 = undefined;
|
|
1752
1915
|
} else {
|
|
@@ -1756,7 +1919,7 @@ function peg$parse(input, options) {
|
|
|
1756
1919
|
s3 = peg$parseconsumeBacktick();
|
|
1757
1920
|
if (s3 !== peg$FAILED) {
|
|
1758
1921
|
peg$savedPos = s0;
|
|
1759
|
-
s0 = peg$
|
|
1922
|
+
s0 = peg$f38(s3);
|
|
1760
1923
|
} else {
|
|
1761
1924
|
peg$currPos = s0;
|
|
1762
1925
|
s0 = peg$FAILED;
|
|
@@ -1780,7 +1943,7 @@ function peg$parse(input, options) {
|
|
|
1780
1943
|
} else {
|
|
1781
1944
|
s1 = peg$FAILED;
|
|
1782
1945
|
if (peg$silentFails === 0) {
|
|
1783
|
-
peg$fail(peg$
|
|
1946
|
+
peg$fail(peg$e2);
|
|
1784
1947
|
}
|
|
1785
1948
|
}
|
|
1786
1949
|
if (s1 !== peg$FAILED) {
|
|
@@ -1791,7 +1954,7 @@ function peg$parse(input, options) {
|
|
|
1791
1954
|
s3 = peg$parseconsumeBacktickMore();
|
|
1792
1955
|
}
|
|
1793
1956
|
peg$savedPos = s0;
|
|
1794
|
-
s0 = peg$
|
|
1957
|
+
s0 = peg$f39(s1, s2);
|
|
1795
1958
|
} else {
|
|
1796
1959
|
peg$currPos = s0;
|
|
1797
1960
|
s0 = peg$FAILED;
|
|
@@ -1802,7 +1965,7 @@ function peg$parse(input, options) {
|
|
|
1802
1965
|
let s0, s1, s2;
|
|
1803
1966
|
s0 = peg$currPos;
|
|
1804
1967
|
peg$savedPos = peg$currPos;
|
|
1805
|
-
s1 = peg$
|
|
1968
|
+
s1 = peg$f40();
|
|
1806
1969
|
if (s1) {
|
|
1807
1970
|
s1 = undefined;
|
|
1808
1971
|
} else {
|
|
@@ -1815,12 +1978,12 @@ function peg$parse(input, options) {
|
|
|
1815
1978
|
} else {
|
|
1816
1979
|
s2 = peg$FAILED;
|
|
1817
1980
|
if (peg$silentFails === 0) {
|
|
1818
|
-
peg$fail(peg$
|
|
1981
|
+
peg$fail(peg$e2);
|
|
1819
1982
|
}
|
|
1820
1983
|
}
|
|
1821
1984
|
if (s2 !== peg$FAILED) {
|
|
1822
1985
|
peg$savedPos = s0;
|
|
1823
|
-
s0 = peg$
|
|
1986
|
+
s0 = peg$f41(s2);
|
|
1824
1987
|
} else {
|
|
1825
1988
|
peg$currPos = s0;
|
|
1826
1989
|
s0 = peg$FAILED;
|
|
@@ -1831,6 +1994,15 @@ function peg$parse(input, options) {
|
|
|
1831
1994
|
}
|
|
1832
1995
|
return s0;
|
|
1833
1996
|
}
|
|
1997
|
+
function peg$parseSAVE_INDENTATION() {
|
|
1998
|
+
let s0, s1;
|
|
1999
|
+
s0 = peg$currPos;
|
|
2000
|
+
s1 = "";
|
|
2001
|
+
peg$savedPos = s0;
|
|
2002
|
+
s1 = peg$f42();
|
|
2003
|
+
s0 = s1;
|
|
2004
|
+
return s0;
|
|
2005
|
+
}
|
|
1834
2006
|
function peg$parseSET_BASE_INDENTATION() {
|
|
1835
2007
|
let s0, s1, s2;
|
|
1836
2008
|
s0 = peg$currPos;
|
|
@@ -1857,7 +2029,7 @@ function peg$parse(input, options) {
|
|
|
1857
2029
|
}
|
|
1858
2030
|
}
|
|
1859
2031
|
peg$savedPos = s0;
|
|
1860
|
-
s1 = peg$
|
|
2032
|
+
s1 = peg$f43(s1);
|
|
1861
2033
|
s0 = s1;
|
|
1862
2034
|
return s0;
|
|
1863
2035
|
}
|
|
@@ -1887,7 +2059,7 @@ function peg$parse(input, options) {
|
|
|
1887
2059
|
}
|
|
1888
2060
|
}
|
|
1889
2061
|
peg$savedPos = peg$currPos;
|
|
1890
|
-
s2 = peg$
|
|
2062
|
+
s2 = peg$f44(s1);
|
|
1891
2063
|
if (s2) {
|
|
1892
2064
|
s2 = undefined;
|
|
1893
2065
|
} else {
|
|
@@ -1895,7 +2067,7 @@ function peg$parse(input, options) {
|
|
|
1895
2067
|
}
|
|
1896
2068
|
if (s2 !== peg$FAILED) {
|
|
1897
2069
|
peg$savedPos = s0;
|
|
1898
|
-
s0 = peg$
|
|
2070
|
+
s0 = peg$f45(s1);
|
|
1899
2071
|
} else {
|
|
1900
2072
|
peg$currPos = s0;
|
|
1901
2073
|
s0 = peg$FAILED;
|
|
@@ -1928,7 +2100,7 @@ function peg$parse(input, options) {
|
|
|
1928
2100
|
}
|
|
1929
2101
|
}
|
|
1930
2102
|
peg$savedPos = peg$currPos;
|
|
1931
|
-
s2 = peg$
|
|
2103
|
+
s2 = peg$f46(s1);
|
|
1932
2104
|
if (s2) {
|
|
1933
2105
|
s2 = undefined;
|
|
1934
2106
|
} else {
|
|
@@ -2139,7 +2311,7 @@ function peg$parse(input, options) {
|
|
|
2139
2311
|
let s0, s1, s2, s3;
|
|
2140
2312
|
s0 = peg$currPos;
|
|
2141
2313
|
peg$savedPos = peg$currPos;
|
|
2142
|
-
s1 = peg$
|
|
2314
|
+
s1 = peg$f47();
|
|
2143
2315
|
if (s1) {
|
|
2144
2316
|
s1 = undefined;
|
|
2145
2317
|
} else {
|
|
@@ -2154,7 +2326,7 @@ function peg$parse(input, options) {
|
|
|
2154
2326
|
} else {
|
|
2155
2327
|
s3 = peg$FAILED;
|
|
2156
2328
|
if (peg$silentFails === 0) {
|
|
2157
|
-
peg$fail(peg$
|
|
2329
|
+
peg$fail(peg$e4);
|
|
2158
2330
|
}
|
|
2159
2331
|
}
|
|
2160
2332
|
peg$silentFails--;
|
|
@@ -2187,7 +2359,7 @@ function peg$parse(input, options) {
|
|
|
2187
2359
|
} else {
|
|
2188
2360
|
s1 = peg$FAILED;
|
|
2189
2361
|
if (peg$silentFails === 0) {
|
|
2190
|
-
peg$fail(peg$
|
|
2362
|
+
peg$fail(peg$e2);
|
|
2191
2363
|
}
|
|
2192
2364
|
}
|
|
2193
2365
|
peg$silentFails--;
|
|
@@ -2264,12 +2436,17 @@ function peg$parse(input, options) {
|
|
|
2264
2436
|
let indentationStack = [0];
|
|
2265
2437
|
let baseIndentation = null;
|
|
2266
2438
|
let contextStack = [];
|
|
2439
|
+
let unreadableLines = new Set;
|
|
2267
2440
|
function resetState() {
|
|
2268
2441
|
indentationStack = [0];
|
|
2269
2442
|
baseIndentation = null;
|
|
2270
2443
|
contextStack = [];
|
|
2444
|
+
unreadableLines = new Set;
|
|
2271
2445
|
return true;
|
|
2272
2446
|
}
|
|
2447
|
+
function lineKey(position) {
|
|
2448
|
+
return contextStack.length > 0 ? -1 - position : position;
|
|
2449
|
+
}
|
|
2273
2450
|
function enterNestedContext() {
|
|
2274
2451
|
contextStack.push({ indentationStack, baseIndentation });
|
|
2275
2452
|
indentationStack = [0];
|