123456789101112131415161718192021222324 |
- module.exports = function (grunt) {
- var PEG = require('pegjs');
-
- grunt.registerMultiTask('peg', 'Generate JavaScript parser from PEG.js grammar description', function () {
- var options = this.options({
- cache: false,
- output: 'source',
- export_var: 'module.exports'
- });
- var parser = PEG.buildParser(grunt.file.read(this.data.src), options);
- var content = "define(['./boot'], function($boot) {\nvar $globals = $boot.globals, nil = $boot.nil;\n" + options.export_var + " = " + parser + ";\n});";
- grunt.file.write(this.data.dest, content);
- });
- };
|