A Browserify transform for Jison parsers.
Mix Jison parsers into your JS files and Browserify projects without needing additional build steps.
browserify -t jisonify main.js > bundle.js
// calc.jison %lex %% \s+ /* Skip whitespace. */ [0-9]+ return 'NUMBER' "-" return '-' "+" return '+' <<EOF>> return 'EOF' . return 'INVALID' /lex %left '+' '-' %start expressions %% expressions : expr EOF { return $1; } ; expr : expr '+' expr { $$ = $1 + $3; } | expr '-' expr { $$ = $1 - $3; } | NUMBER { $$ = Number(yytext); } ;
// main.js var parser = require('./calc.jison').parser; exports = run = function() { var input = document.getElementById('input'); var output = document.getElementById('output'); output.innerText = parser.parse(input.value); };
browserify -t jisonify main.js > bundle.js
<!-- calc.html --> <!DOCTYPE html> <html> <head> <script src="bundle.js"></script> </head> <body> <form onsubmit="run(); return false;"> <input type="text" id="input" value="50 + 2 - 10" /> <input type="submit" /> Result: <span id="output">–</span> </form> </body> </html>
var browserify = require('browserify'); var jisonify = require('jisonify'); var b = browserify(); b.add('./main.js'); b.transform(jisonify); b.bundle(function(err, src) { // ... });
Copyright © 2014 Chris Schmich
MIT License, See LICENSE for details.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4