X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=rconv.js;h=a094a3f5abd7552c94127b64fb9cb0aa41a6a022;hb=f927f87326fa8196765f0c524cb514a2152f66c3;hp=f1129fab4fe63d450b3016c6ba56b614ed15a67f;hpb=e979a61ceaceda71eb024c691fa5876db2d328d6;p=app.Builder.js diff --git a/rconv.js b/rconv.js index f1129fab4..a094a3f5a 100644 --- a/rconv.js +++ b/rconv.js @@ -26,12 +26,12 @@ var args = Array.prototype.slice.call(Seed.argv); args.shift(); args.shift(); -//print(JSON.stringify(args, null,4)); +//print(JSON.(args, null,4)); //Seed.quit(); if (File.isFile(args[0])) { - createTest(args[0]); + createTest(args[0], true); } else { File.list(args[0]).forEach(function(a) { @@ -49,11 +49,23 @@ print( " diff -w -u /tmp/rconv_orig /tmp/rconv_gen/"); -function createTest(fn) { +function createTest(fn, force) { + + // does it have a .bjs file.. + var bjs = fn.replace(/\.js$/, '.bjs'); + if (!force && !File.exists(bjs)) { + return true; + + } + + print("converting : " + fn); // outputs to two directories.. if (!File.exists('/tmp/rconv_orig')) { File.mkdir('/tmp/rconv_orig'); + } + if (!File.exists('/tmp/rconv_genbjs')) { + File.mkdir('/tmp/rconv_genbjs'); } if (!File.exists('/tmp/rconv_gen')) { File.mkdir('/tmp/rconv_gen'); @@ -76,10 +88,17 @@ function createTest(fn) { var rf = new JsParser(toks); - //print(JSON.stringify(rf.tokens, null,4));Seed.quit(); + //print(JSON.(rf.tokens, null,4));Seed.quit(); + rf.parse(); - rf.parse(); + if (File.exists('/tmp/rconv_genbjs/' + GLib.basename(fn).replace(/\.js$/,'.bjs') )) { + File.remove('/tmp/rconv_genbjs/' + GLib.basename(fn).replace(/\.js$/,'.bjs') ); + } + File.write('/tmp/rconv_genbjs/' + GLib.basename(fn).replace(/\.js$/,'.bjs'), + JSON.(rf.cfg,null,4)); + + // now try and render it back to javascript. var rclass = imports.JsRender[rf.cfg.type][rf.cfg.type]; @@ -93,6 +112,6 @@ function createTest(fn) { File.write('/tmp/rconv_gen/' + GLib.basename(fn) , res); } -//print(JSON.stringify(rf.cfg, null,4)); +//print(JSON.(rf.cfg, null,4));