22 lines
453 B
JavaScript
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 = [];
|
|
};
|