diff --git a/bin/_6to5-node b/bin/_6to5-node index d31d93a46e..842ebd666b 100644 --- a/bin/_6to5-node +++ b/bin/_6to5-node @@ -1,13 +1,14 @@ #!/usr/bin/env node -var commander = require("commander"); -var Module = require("module"); -var path = require("path"); -var repl = require("repl"); -var to5 = require("../lib/6to5"); -var util = require("../lib/6to5/util"); -var vm = require("vm"); -var _ = require("lodash"); +var roadrunner = require("roadrunner"); +var commander = require("commander"); +var Module = require("module"); +var path = require("path"); +var repl = require("repl"); +var to5 = require("../lib/6to5"); +var util = require("../lib/6to5/util"); +var vm = require("vm"); +var _ = require("lodash"); commander.option("-e, --eval [script]", "Evaluate script"); commander.option("-p, --print", "Evaluate script and print result"); @@ -15,19 +16,23 @@ commander.option("-i, --ignore [regex]", "Ignore all files that match this regex commander.option("-x, --extensions [extensions]", "List of extensions to hook into [.es6,.js]"); commander.option("-r, --experimental", "Enable experimental support for proposed ES7 features"); commander.option("-g, --playground", "Enable playground support"); +commander.option("-c, --cache", "Cache compiled files and require paths"); var pkg = require("../package.json"); commander.version(pkg.version); commander.usage("[options] [ -e script | script.js ] [arguments]"); commander.parse(process.argv); +if (commander.cache) roadrunner.load(); + // to5.register({ experimental: commander.experimental, extensions: commander.extensions, playground: commander.playground, - ignore: commander.ignore + ignore: commander.ignore, + cache: commander.cache && roadrunner.get("6to5") }); // @@ -72,6 +77,8 @@ if (commander.eval) { } } +if (commander.cache) roadrunner.save(); + function replStart() { repl.start({ prompt: "> ",