File tree 4 files changed +12
-6
lines changed
4 files changed +12
-6
lines changed Original file line number Diff line number Diff line change 2
2
all : test
3
3
4
4
site :
5
- browserify -r ./lib/jison.js -a ' file:fs ' -a ' system:util ' --exports require | uglifyjs > web/content/assets/js/jison.js
5
+ browserify entry.js --exports require | uglifyjs > web/content/assets/js/jison.js
6
6
cd web/ && nanoc compile
7
7
cp -r examples web/output/jison/
8
8
Original file line number Diff line number Diff line change
1
+
2
+ Jison = require ( './lib/jison.js' ) ;
3
+ bnf = require ( 'ebnf-parser' ) ;
Original file line number Diff line number Diff line change @@ -7,7 +7,9 @@ var Set = require('./util/set').Set;
7
7
var Lexer = require ( 'jison-lex' ) ;
8
8
var ebnfParser = require ( 'ebnf-parser' ) ;
9
9
var JSONSelect = require ( 'JSONSelect' ) ;
10
- var Reflect = require ( 'reflect' ) ;
10
+ var esprima = require ( 'esprima' ) ;
11
+ var escodegen = require ( 'escodegen' ) ;
12
+
11
13
12
14
var version = require ( '../package.json' ) . version ;
13
15
@@ -959,12 +961,12 @@ lrGeneratorMixin.generateModule = function generateModule (opt) {
959
961
function removeErrorRecovery ( fn ) {
960
962
var parseFn = String ( fn ) ;
961
963
try {
962
- var ast = Reflect . parse ( parseFn ) ;
964
+ var ast = esprima . parse ( parseFn ) ;
963
965
964
966
var labeled = JSONSelect . match ( ':has(:root > .label > .name:val("_handle_error"))' , ast ) ;
965
967
labeled [ 0 ] . body . consequent . body = [ labeled [ 0 ] . body . consequent . body [ 0 ] , labeled [ 0 ] . body . consequent . body [ 1 ] ] ;
966
968
967
- return Reflect . stringify ( ast ) . replace ( / _ h a n d l e _ e r r o r : \s ? / , "" ) . replace ( / \\ \\ n / g, "\\n" ) ;
969
+ return escodegen . generate ( ast ) . replace ( / _ h a n d l e _ e r r o r : \s ? / , "" ) . replace ( / \\ \\ n / g, "\\n" ) ;
968
970
} catch ( e ) {
969
971
return parseFn ;
970
972
}
Original file line number Diff line number Diff line change 30
30
},
31
31
"dependencies" : {
32
32
"JSONSelect" : " 0.4.0" ,
33
- "reflect" : " 0.0.7" ,
33
+ "esprima" : " 1.0.x" ,
34
+ "escodegen" : " 0.0.21" ,
34
35
"jison-lex" : " 0.1.x" ,
35
36
"ebnf-parser" : " 0.1.x" ,
36
37
"lex-parser" : " 0.1.x" ,
40
41
"test" : " 0.4.4" ,
41
42
"jison" : " 0.4.x" ,
42
43
"uglify-js" : " 1.3.3" ,
43
- "browserify" : " * "
44
+ "browserify" : " 2.x.x "
44
45
},
45
46
"scripts" : {
46
47
"test" : " node tests/all-tests.js"
You can’t perform that action at this time.
0 commit comments