decaffeinate-parser
Version:
A better AST for CoffeeScript, inspired by CoffeeScriptRedux.
21 lines (20 loc) • 903 B
JavaScript
;
exports.__esModule = true;
var nodes_1 = require("decaffeinate-coffeescript2/lib/coffeescript/nodes");
var nodes_2 = require("../nodes");
var getLocation_1 = require("../util/getLocation");
var mapAny_1 = require("./mapAny");
function mapReturn(context, node) {
var _a = getLocation_1["default"](context, node), line = _a.line, column = _a.column, start = _a.start, end = _a.end, raw = _a.raw;
var argument = node.expression ? mapAny_1["default"](context, node.expression) : null;
if (node instanceof nodes_1.YieldReturn) {
return new nodes_2.YieldReturn(line, column, start, end, raw, argument);
}
else if (node instanceof nodes_1.AwaitReturn) {
return new nodes_2.AwaitReturn(line, column, start, end, raw, argument);
}
else {
return new nodes_2.Return(line, column, start, end, raw, argument);
}
}
exports["default"] = mapReturn;