Rename |reportedPos| to |savedPos|
Preform the following renames: * |reportedPos| -> |savedPos| (abstract machine variable) * |peg$reportedPos| -> |peg$savedPos| (variable in generated code) * |REPORT_SAVED_POS| -> |LOAD_SAVED_POS| (instruction) * |REPORT_CURR_POS| -> |UPDATE_SAVED_POS| (instruction) The idea is that the name |reportedPos| is no longer accurate after the |location| change (seea the previous commit) because now both |reportedPos| and |currPos| are reported to user code. Renaming to |savedPos| resolves this inaccuracy. There is probably some better name for the concept than quite generic |savedPos|, but it doesn't come to me.
This commit is contained in:
parent
4f7145e360
commit
b1ad2a1f61
|
@ -35,8 +35,8 @@ var opcodes = {
|
|||
|
||||
/* Calls */
|
||||
|
||||
REPORT_SAVED_POS: 20, // REPORT_SAVED_POS p
|
||||
REPORT_CURR_POS: 21, // REPORT_CURR_POS
|
||||
LOAD_SAVED_POS: 20, // LOAD_SAVED_POS p
|
||||
UPDATE_SAVED_POS: 21, // UPDATE_SAVED_POS
|
||||
CALL: 22, // CALL f, n, pc, p1, p2, ..., pN
|
||||
|
||||
/* Rules */
|
||||
|
|
|
@ -156,13 +156,13 @@ var arrays = require("../../utils/arrays"),
|
|||
* Calls
|
||||
* -----
|
||||
*
|
||||
* [20] REPORT_SAVED_POS p
|
||||
* [20] LOAD_SAVED_POS p
|
||||
*
|
||||
* reportedPos = stack[p];
|
||||
* savedPos = stack[p];
|
||||
*
|
||||
* [21] REPORT_CURR_POS
|
||||
* [21] UPDATE_SAVED_POS
|
||||
*
|
||||
* reportedPos = currPos;
|
||||
* savedPos = currPos;
|
||||
*
|
||||
* [22] CALL f, n, pc, p1, p2, ..., pN
|
||||
*
|
||||
|
@ -255,7 +255,7 @@ function generateBytecode(ast) {
|
|||
var functionIndex = addFunctionConst(objects.keys(context.env), code);
|
||||
|
||||
return buildSequence(
|
||||
[op.REPORT_CURR_POS],
|
||||
[op.UPDATE_SAVED_POS],
|
||||
buildCall(functionIndex, 0, context.env, context.sp),
|
||||
buildCondition(
|
||||
[op.IF],
|
||||
|
@ -354,7 +354,7 @@ function generateBytecode(ast) {
|
|||
buildCondition(
|
||||
[op.IF_NOT_ERROR],
|
||||
buildSequence(
|
||||
[op.REPORT_SAVED_POS, 1],
|
||||
[op.LOAD_SAVED_POS, 1],
|
||||
buildCall(functionIndex, 1, env, context.sp + 2)
|
||||
),
|
||||
[]
|
||||
|
@ -399,7 +399,7 @@ function generateBytecode(ast) {
|
|||
);
|
||||
|
||||
return buildSequence(
|
||||
[op.REPORT_SAVED_POS, node.elements.length],
|
||||
[op.LOAD_SAVED_POS, node.elements.length],
|
||||
buildCall(
|
||||
functionIndex,
|
||||
node.elements.length,
|
||||
|
|
|
@ -348,13 +348,13 @@ function generateJavascript(ast, options) {
|
|||
' ip += 2;',
|
||||
' break;',
|
||||
'',
|
||||
' case ' + op.REPORT_SAVED_POS + ':', // REPORT_SAVED_POS p
|
||||
' peg$reportedPos = stack[stack.length - 1 - bc[ip + 1]];',
|
||||
' case ' + op.LOAD_SAVED_POS + ':', // LOAD_SAVED_POS p
|
||||
' peg$savedPos = stack[stack.length - 1 - bc[ip + 1]];',
|
||||
' ip += 2;',
|
||||
' break;',
|
||||
'',
|
||||
' case ' + op.REPORT_CURR_POS + ':', // REPORT_CURR_POS
|
||||
' peg$reportedPos = peg$currPos;',
|
||||
' case ' + op.UPDATE_SAVED_POS + ':', // UPDATE_SAVED_POS
|
||||
' peg$savedPos = peg$currPos;',
|
||||
' ip++;',
|
||||
' break;',
|
||||
'',
|
||||
|
@ -666,13 +666,13 @@ function generateJavascript(ast, options) {
|
|||
ip += 2;
|
||||
break;
|
||||
|
||||
case op.REPORT_SAVED_POS: // REPORT_SAVED_POS p
|
||||
parts.push('peg$reportedPos = ' + stack.index(bc[ip + 1]) + ';');
|
||||
case op.LOAD_SAVED_POS: // LOAD_SAVED_POS p
|
||||
parts.push('peg$savedPos = ' + stack.index(bc[ip + 1]) + ';');
|
||||
ip += 2;
|
||||
break;
|
||||
|
||||
case op.REPORT_CURR_POS: // REPORT_CURR_POS
|
||||
parts.push('peg$reportedPos = peg$currPos;');
|
||||
case op.UPDATE_SAVED_POS: // UPDATE_SAVED_POS
|
||||
parts.push('peg$savedPos = peg$currPos;');
|
||||
ip++;
|
||||
break;
|
||||
|
||||
|
@ -858,7 +858,7 @@ function generateJavascript(ast, options) {
|
|||
parts.push([
|
||||
'',
|
||||
' peg$currPos = 0,',
|
||||
' peg$reportedPos = 0,',
|
||||
' peg$savedPos = 0,',
|
||||
' peg$cachedPos = 0,',
|
||||
' peg$cachedPosDetails = { line: 1, column: 1, seenCR: false },',
|
||||
' peg$maxFailPos = 0,',
|
||||
|
@ -925,18 +925,18 @@ function generateJavascript(ast, options) {
|
|||
parts.push([
|
||||
'',
|
||||
' function text() {',
|
||||
' return input.substring(peg$reportedPos, peg$currPos);',
|
||||
' return input.substring(peg$savedPos, peg$currPos);',
|
||||
' }',
|
||||
'',
|
||||
' function location() {',
|
||||
' var reportedPosDetails = peg$computePosDetails(peg$reportedPos),',
|
||||
' var savedPosDetails = peg$computePosDetails(peg$savedPos),',
|
||||
' currPosDetails = peg$computePosDetails(peg$currPos);',
|
||||
'',
|
||||
' return {',
|
||||
' start: {',
|
||||
' offset: peg$reportedPos,',
|
||||
' line: reportedPosDetails.line,',
|
||||
' column: reportedPosDetails.column',
|
||||
' offset: peg$savedPos,',
|
||||
' line: savedPosDetails.line,',
|
||||
' column: savedPosDetails.column',
|
||||
' },',
|
||||
' end: {',
|
||||
' offset: peg$currPos,',
|
||||
|
@ -950,12 +950,12 @@ function generateJavascript(ast, options) {
|
|||
' throw peg$buildException(',
|
||||
' null,',
|
||||
' [{ type: "other", description: description }],',
|
||||
' peg$reportedPos',
|
||||
' peg$savedPos',
|
||||
' );',
|
||||
' }',
|
||||
'',
|
||||
' function error(message) {',
|
||||
' throw peg$buildException(message, null, peg$reportedPos);',
|
||||
' throw peg$buildException(message, null, peg$savedPos);',
|
||||
' }',
|
||||
'',
|
||||
' function peg$computePosDetails(pos) {',
|
||||
|
|
|
@ -335,7 +335,7 @@ module.exports = (function() {
|
|||
peg$c239 = { type: "literal", value: ";", description: "\";\"" },
|
||||
|
||||
peg$currPos = 0,
|
||||
peg$reportedPos = 0,
|
||||
peg$savedPos = 0,
|
||||
peg$cachedPos = 0,
|
||||
peg$cachedPosDetails = { line: 1, column: 1, seenCR: false },
|
||||
peg$maxFailPos = 0,
|
||||
|
@ -353,18 +353,18 @@ module.exports = (function() {
|
|||
}
|
||||
|
||||
function text() {
|
||||
return input.substring(peg$reportedPos, peg$currPos);
|
||||
return input.substring(peg$savedPos, peg$currPos);
|
||||
}
|
||||
|
||||
function location() {
|
||||
var reportedPosDetails = peg$computePosDetails(peg$reportedPos),
|
||||
var savedPosDetails = peg$computePosDetails(peg$savedPos),
|
||||
currPosDetails = peg$computePosDetails(peg$currPos);
|
||||
|
||||
return {
|
||||
start: {
|
||||
offset: peg$reportedPos,
|
||||
line: reportedPosDetails.line,
|
||||
column: reportedPosDetails.column
|
||||
offset: peg$savedPos,
|
||||
line: savedPosDetails.line,
|
||||
column: savedPosDetails.column
|
||||
},
|
||||
end: {
|
||||
offset: peg$currPos,
|
||||
|
@ -378,12 +378,12 @@ module.exports = (function() {
|
|||
throw peg$buildException(
|
||||
null,
|
||||
[{ type: "other", description: description }],
|
||||
peg$reportedPos
|
||||
peg$savedPos
|
||||
);
|
||||
}
|
||||
|
||||
function error(message) {
|
||||
throw peg$buildException(message, null, peg$reportedPos);
|
||||
throw peg$buildException(message, null, peg$savedPos);
|
||||
}
|
||||
|
||||
function peg$computePosDetails(pos) {
|
||||
|
@ -574,7 +574,7 @@ module.exports = (function() {
|
|||
s3 = peg$FAILED;
|
||||
}
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c0(s2, s3);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -601,7 +601,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseEOS();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c1(s1);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -657,7 +657,7 @@ module.exports = (function() {
|
|||
if (s6 !== peg$FAILED) {
|
||||
s7 = peg$parseEOS();
|
||||
if (s7 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c4(s1, s3, s6);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -769,7 +769,7 @@ module.exports = (function() {
|
|||
}
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c7(s1, s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -809,7 +809,7 @@ module.exports = (function() {
|
|||
s2 = null;
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c8(s1, s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -865,7 +865,7 @@ module.exports = (function() {
|
|||
}
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c9(s1, s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -900,7 +900,7 @@ module.exports = (function() {
|
|||
if (s4 !== peg$FAILED) {
|
||||
s5 = peg$parsePrefixedExpression();
|
||||
if (s5 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c12(s1, s5);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -940,7 +940,7 @@ module.exports = (function() {
|
|||
if (s2 !== peg$FAILED) {
|
||||
s3 = peg$parseSuffixedExpression();
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c13(s1, s3);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -1004,7 +1004,7 @@ module.exports = (function() {
|
|||
if (s2 !== peg$FAILED) {
|
||||
s3 = peg$parseSuffixedOperator();
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c20(s1, s3);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -1094,7 +1094,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c30); }
|
||||
}
|
||||
if (s5 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c31(s3);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -1186,7 +1186,7 @@ module.exports = (function() {
|
|||
s2 = peg$FAILED;
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c32(s1);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -1211,7 +1211,7 @@ module.exports = (function() {
|
|||
if (s2 !== peg$FAILED) {
|
||||
s3 = peg$parseCodeBlock();
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c33(s1, s3);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -1730,7 +1730,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseIdentifierName();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c68(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -1759,7 +1759,7 @@ module.exports = (function() {
|
|||
s3 = peg$parseIdentifierPart();
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c70(s1, s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -1811,7 +1811,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseUnicodeEscapeSequence();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c75(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2053,7 +2053,7 @@ module.exports = (function() {
|
|||
s2 = null;
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c83(s1, s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2101,7 +2101,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c86); }
|
||||
}
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c87(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2141,7 +2141,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c89); }
|
||||
}
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c87(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2201,7 +2201,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseSourceCharacter();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c90();
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2224,7 +2224,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseEscapeSequence();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c75(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2278,7 +2278,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseSourceCharacter();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c90();
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2301,7 +2301,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseEscapeSequence();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c75(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2376,7 +2376,7 @@ module.exports = (function() {
|
|||
s5 = null;
|
||||
}
|
||||
if (s5 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c98(s2, s3, s5);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2424,7 +2424,7 @@ module.exports = (function() {
|
|||
if (s2 !== peg$FAILED) {
|
||||
s3 = peg$parseClassCharacter();
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c101(s1, s3);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2478,7 +2478,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseSourceCharacter();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c90();
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2501,7 +2501,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseEscapeSequence();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c75(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2534,7 +2534,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseLineTerminatorSequence();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c102();
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2574,7 +2574,7 @@ module.exports = (function() {
|
|||
s2 = peg$FAILED;
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c105();
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2643,7 +2643,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c107); }
|
||||
}
|
||||
if (s1 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c108();
|
||||
}
|
||||
s0 = s1;
|
||||
|
@ -2657,7 +2657,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c110); }
|
||||
}
|
||||
if (s1 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c111();
|
||||
}
|
||||
s0 = s1;
|
||||
|
@ -2671,7 +2671,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c113); }
|
||||
}
|
||||
if (s1 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c114();
|
||||
}
|
||||
s0 = s1;
|
||||
|
@ -2685,7 +2685,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c116); }
|
||||
}
|
||||
if (s1 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c117();
|
||||
}
|
||||
s0 = s1;
|
||||
|
@ -2699,7 +2699,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c119); }
|
||||
}
|
||||
if (s1 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c120();
|
||||
}
|
||||
s0 = s1;
|
||||
|
@ -2713,7 +2713,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c122); }
|
||||
}
|
||||
if (s1 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c123();
|
||||
}
|
||||
s0 = s1;
|
||||
|
@ -2749,7 +2749,7 @@ module.exports = (function() {
|
|||
if (s1 !== peg$FAILED) {
|
||||
s2 = peg$parseSourceCharacter();
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c90();
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2827,7 +2827,7 @@ module.exports = (function() {
|
|||
s2 = s3;
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c128(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2888,7 +2888,7 @@ module.exports = (function() {
|
|||
s2 = s3;
|
||||
}
|
||||
if (s2 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c128(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
@ -2943,7 +2943,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c134); }
|
||||
}
|
||||
if (s1 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c135();
|
||||
}
|
||||
s0 = s1;
|
||||
|
@ -2974,7 +2974,7 @@ module.exports = (function() {
|
|||
if (peg$silentFails === 0) { peg$fail(peg$c140); }
|
||||
}
|
||||
if (s3 !== peg$FAILED) {
|
||||
peg$reportedPos = s0;
|
||||
peg$savedPos = s0;
|
||||
s1 = peg$c141(s2);
|
||||
s0 = s1;
|
||||
} else {
|
||||
|
|
|
@ -93,7 +93,7 @@ describe("compiler pass |generateBytecode|", function() {
|
|||
1, // PUSH_CURR_POS
|
||||
14, 0, 2, 2, 18, 0, 19, 1, // <expression>
|
||||
11, 6, 0, // IF_NOT_ERROR
|
||||
20, 1, // * REPORT_SAVED_POS
|
||||
20, 1, // * LOAD_SAVED_POS
|
||||
22, 2, 1, 0, // CALL
|
||||
5 // NIP
|
||||
]));
|
||||
|
@ -116,7 +116,7 @@ describe("compiler pass |generateBytecode|", function() {
|
|||
1, // PUSH_CURR_POS
|
||||
14, 0, 2, 2, 18, 0, 19, 1, // <expression>
|
||||
11, 7, 0, // IF_NOT_ERROR
|
||||
20, 1, // * REPORT_SAVED_POS
|
||||
20, 1, // * LOAD_SAVED_POS
|
||||
22, 2, 1, 1, 0, // CALL
|
||||
5 // NIP
|
||||
]));
|
||||
|
@ -143,7 +143,7 @@ describe("compiler pass |generateBytecode|", function() {
|
|||
11, 25, 4, // IF_NOT_ERROR
|
||||
14, 4, 2, 2, 18, 4, 19, 5, // * <elements[2]>
|
||||
11, 10, 4, // IF_NOT_ERROR
|
||||
20, 3, // * REPORT_SAVED_POS
|
||||
20, 3, // * LOAD_SAVED_POS
|
||||
22, 6, 3, 3, 2, 1, 0, // CALL
|
||||
5, // NIP
|
||||
4, 3, // * POP_N
|
||||
|
@ -359,7 +359,7 @@ describe("compiler pass |generateBytecode|", function() {
|
|||
|
||||
it("generates correct bytecode", function() {
|
||||
expect(pass).toChangeAST(grammar, bytecodeDetails([
|
||||
21, // REPORT_CURR_POS
|
||||
21, // UPDATE_SAVED_POS
|
||||
22, 0, 0, 0, // CALL
|
||||
9, 2, 2, // IF
|
||||
2, // * POP
|
||||
|
@ -389,7 +389,7 @@ describe("compiler pass |generateBytecode|", function() {
|
|||
11, 40, 4, // IF_NOT_ERROR
|
||||
14, 4, 2, 2, 18, 4, 19, 5, // * <elements[2]>
|
||||
11, 25, 4, // IF_NOT_ERROR
|
||||
21, // * REPORT_CURR_POS
|
||||
21, // * UPDATE_SAVED_POS
|
||||
22, 6, 0, 3, 2, 1, 0, // CALL
|
||||
9, 2, 2, // IF
|
||||
2, // * POP
|
||||
|
@ -434,7 +434,7 @@ describe("compiler pass |generateBytecode|", function() {
|
|||
|
||||
it("generates correct bytecode", function() {
|
||||
expect(pass).toChangeAST(grammar, bytecodeDetails([
|
||||
21, // REPORT_CURR_POS
|
||||
21, // UPDATE_SAVED_POS
|
||||
22, 0, 0, 0, // CALL
|
||||
9, 2, 2, // IF
|
||||
2, // * POP
|
||||
|
@ -464,7 +464,7 @@ describe("compiler pass |generateBytecode|", function() {
|
|||
11, 40, 4, // IF_NOT_ERROR
|
||||
14, 4, 2, 2, 18, 4, 19, 5, // * <elements[2]>
|
||||
11, 25, 4, // IF_NOT_ERROR
|
||||
21, // * REPORT_CURR_POS
|
||||
21, // * UPDATE_SAVED_POS
|
||||
22, 6, 0, 3, 2, 1, 0, // CALL
|
||||
9, 2, 2, // IF
|
||||
2, // * POP
|
||||
|
|
Loading…
Reference in a new issue