add ast return transform option

This commit is contained in:
Sebastian McKenzie 2014-12-04 10:34:52 +11:00
parent 2f279de7d1
commit a1239e5f5a
2 changed files with 15 additions and 12 deletions

View File

@ -41,7 +41,8 @@ File.normaliseOptions = function (opts) {
filename: "unknown",
modules: "common",
runtime: false,
code: true
code: true,
ast: true
});
// normalise windows path separators to unix
@ -186,15 +187,18 @@ File.prototype.generate = function () {
var opts = this.opts;
var ast = this.ast;
if (!opts.code) {
return {
code: "",
map: null,
ast: ast
};
}
var result = {
code: "",
map: null,
ast: null
};
var result = generate(ast, opts, this.code);
if (opts.ast) result.ast = ast;
if (!opts.code) return result;
var _result = generate(ast, opts, this.code);
result.code = _result.code;
result.map = _result.map;
if (this.shebang) {
// add back shebang
@ -205,8 +209,6 @@ File.prototype.generate = function () {
result.code += "\n" + util.sourceMapToComment(result.map);
}
result.ast = result;
return result;
};

View File

@ -89,7 +89,8 @@ var loader = function (m, filename) {
whitelist: whitelist,
blacklist: blacklist,
sourceMap: true,
modules: "commonInterop"
modules: "commonInterop",
ast: false
}, transformOpts));
if (cache) {