Code coverage report for 6to5/transformation/transformers/default-parameters.js

Statements: 100% (13 / 13)      Branches: 100% (4 / 4)      Functions: 100% (2 / 2)      Lines: 100% (11 / 11)      Ignored: none     

All files » 6to5/transformation/transformers/ » default-parameters.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 221 1 1   1 207 4   4 6   5   5           4    
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 = [];
};