babel/lib/6to5/transformers/rest-parameters.js
Sebastian McKenzie c97696c224 first commit
2014-09-28 23:39:22 +10:00

20 lines
425 B
JavaScript

var util = require("../util");
exports.FunctionExpression = function (node, parent) {
if (!node.rest) return;
var rest = node.rest;
delete node.rest;
var templateName = "arguments-slice-assign";
if (node.params.length) templateName += "-arg";
node.body.body.unshift(util.template(templateName, {
VARIABLE_NAME: rest,
SLICE_ARG: {
type: "Literal",
value: node.params.length
}
}));
};