diff --git a/lib/compiler/index.js b/lib/compiler/index.js
index 502f2d3..1248598 100644
--- a/lib/compiler/index.js
+++ b/lib/compiler/index.js
@@ -19,18 +19,18 @@ var compiler = {
*/
passes: {
check: {
- reportUndefinedRules: require("./passes/report-undefined-rules"),
- reportDuplicateRules: require("./passes/report-duplicate-rules"),
- reportDuplicateLabels: require("./passes/report-duplicate-labels"),
- reportLeftRecursion: require("./passes/report-left-recursion"),
- reportInfiniteLoops: require("./passes/report-infinite-loops")
+ reportUndefinedRules: require("./passes/report-undefined-rules"),
+ reportDuplicateRules: require("./passes/report-duplicate-rules"),
+ reportDuplicateLabels: require("./passes/report-duplicate-labels"),
+ reportInfiniteRecursion: require("./passes/report-infinite-recursion"),
+ reportInfiniteRepetition: require("./passes/report-infinite-repetition")
},
transform: {
- removeProxyRules: require("./passes/remove-proxy-rules")
+ removeProxyRules: require("./passes/remove-proxy-rules")
},
generate: {
- generateBytecode: require("./passes/generate-bytecode"),
- generateJS: require("./passes/generate-js")
+ generateBytecode: require("./passes/generate-bytecode"),
+ generateJS: require("./passes/generate-js")
}
},
diff --git a/lib/compiler/passes/report-left-recursion.js b/lib/compiler/passes/report-infinite-recursion.js
similarity index 94%
rename from lib/compiler/passes/report-left-recursion.js
rename to lib/compiler/passes/report-infinite-recursion.js
index a3d153b..1230a2f 100644
--- a/lib/compiler/passes/report-left-recursion.js
+++ b/lib/compiler/passes/report-infinite-recursion.js
@@ -17,7 +17,7 @@ var arrays = require("../../utils/arrays"),
* In general, if a rule reference can be reached without consuming any input,
* it can lead to left recursion.
*/
-function reportLeftRecursion(ast) {
+function reportInfiniteRecursion(ast) {
var visitedRules = [];
var check = visitor.build({
@@ -54,4 +54,4 @@ function reportLeftRecursion(ast) {
check(ast);
}
-module.exports = reportLeftRecursion;
+module.exports = reportInfiniteRecursion;
diff --git a/lib/compiler/passes/report-infinite-loops.js b/lib/compiler/passes/report-infinite-repetition.js
similarity index 91%
rename from lib/compiler/passes/report-infinite-loops.js
rename to lib/compiler/passes/report-infinite-repetition.js
index cf8bf29..e6f12c0 100644
--- a/lib/compiler/passes/report-infinite-loops.js
+++ b/lib/compiler/passes/report-infinite-repetition.js
@@ -8,7 +8,7 @@ var GrammarError = require("../../grammar-error"),
* Reports expressions that don't consume any input inside |*| or |+| in the
* grammar, which prevents infinite loops in the generated parser.
*/
-function reportInfiniteLoops(ast) {
+function reportInfiniteRepetition(ast) {
var check = visitor.build({
zero_or_more: function(node) {
if (!asts.alwaysConsumesOnSuccess(ast, node.expression)) {
@@ -32,4 +32,4 @@ function reportInfiniteLoops(ast) {
check(ast);
}
-module.exports = reportInfiniteLoops;
+module.exports = reportInfiniteRepetition;
diff --git a/package.json b/package.json
index 2df73c0..012a2f3 100644
--- a/package.json
+++ b/package.json
@@ -29,8 +29,8 @@
"lib/compiler/passes/remove-proxy-rules.js",
"lib/compiler/passes/report-duplicate-rules.js",
"lib/compiler/passes/report-duplicate-labels.js",
- "lib/compiler/passes/report-infinite-loops.js",
- "lib/compiler/passes/report-left-recursion.js",
+ "lib/compiler/passes/report-infinite-repetition.js",
+ "lib/compiler/passes/report-infinite-recursion.js",
"lib/compiler/passes/report-undefined-rules.js",
"lib/compiler/visitor.js",
"lib/grammar-error.js",
diff --git a/spec/index.html b/spec/index.html
index 321bd49..f6c0ed6 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -12,8 +12,8 @@
-
-
+
+
diff --git a/spec/unit/compiler/passes/report-left-recursion.spec.js b/spec/unit/compiler/passes/report-infinite-recursion.spec.js
similarity index 96%
rename from spec/unit/compiler/passes/report-left-recursion.spec.js
rename to spec/unit/compiler/passes/report-infinite-recursion.spec.js
index 4087903..f5612ac 100644
--- a/spec/unit/compiler/passes/report-left-recursion.spec.js
+++ b/spec/unit/compiler/passes/report-infinite-recursion.spec.js
@@ -2,8 +2,8 @@
"use strict";
-describe("compiler pass |reportLeftRecursion|", function() {
- var pass = peg.compiler.passes.check.reportLeftRecursion;
+describe("compiler pass |reportInfiniteRecursion|", function() {
+ var pass = peg.compiler.passes.check.reportInfiniteRecursion;
it("reports direct left recursion", function() {
expect(pass).toReportError('start = start', {
diff --git a/spec/unit/compiler/passes/report-infinite-loops.spec.js b/spec/unit/compiler/passes/report-infinite-repetition.spec.js
similarity index 95%
rename from spec/unit/compiler/passes/report-infinite-loops.spec.js
rename to spec/unit/compiler/passes/report-infinite-repetition.spec.js
index 4ebce04..b0ceb5a 100644
--- a/spec/unit/compiler/passes/report-infinite-loops.spec.js
+++ b/spec/unit/compiler/passes/report-infinite-repetition.spec.js
@@ -2,8 +2,8 @@
"use strict";
-describe("compiler pass |reportInfiniteLoops|", function() {
- var pass = peg.compiler.passes.check.reportInfiniteLoops;
+describe("compiler pass |reportInfiniteRepetition|", function() {
+ var pass = peg.compiler.passes.check.reportInfiniteRepetition;
it("reports infinite loops for zero_or_more", function() {
expect(pass).toReportError('start = ("")*', {