babel/lib/6to5/transformation/transformers/default-parameters.js
2014-11-08 09:17:12 +11:00

22 lines
453 B
JavaScript

var util = require("../../util");
var t = require("../../types");
var _ = require("lodash");
exports.Function = function (node) {
if (!node.defaults.length) return;
t.ensureBlock(node);
_.each(node.defaults, function (def, i) {
if (!def) return;
var param = node.params[i];
node.body.body.unshift(util.template("if-undefined-set-to", {
VARIABLE: param,
DEFAULT: def
}, true));
});
node.defaults = [];
};