(function(global, undefined) { /* ===== PEG ===== */ var PEG = { /* * Generates a parser from a specified grammar and returns it. * * The grammar must be a string in the format described by the metagramar in * the parser.pegjs file. * * Throws |PEG.parser.SyntaxError| if the grammar contains a syntax error or * |PEG.GrammarError| if it contains a semantic error. Note that not all * errors are detected during the generation and some may protrude to the * generated parser and cause its malfunction. */ buildParser: function(grammar) { return PEG.compiler.compile(PEG.parser.parse(grammar)); } }; /* ===== PEG.GrammarError ===== */ /* Thrown when the grammar contains an error. */ PEG.GrammarError = function(message) { this.name = "PEG.GrammarError"; this.message = message; }; PEG.GrammarError.prototype = Error.prototype; /* ===== Includes ===== */ // @include "utils.js" // @include "parser.js" // @include "compiler.js" /* ===== Export ===== */ global.PEG = PEG; })(this);