Sha256: ddb24db7a45a62ecedd5b8440d767ce2ec232a219ed1c9b77830fa1a808a2317

Contents?: true

Size: 733 Bytes

Versions: 3

Compression:

Stored size: 733 Bytes

Contents

/* eslint max-len: 0 */

"use strict";

var _interopRequireWildcard = require("babel-runtime/helpers/interop-require-wildcard")["default"];

exports.__esModule = true;

var _babelTypes = require("babel-types");

var t = _interopRequireWildcard(_babelTypes);

exports["default"] = function (callee, thisNode, args) {
  if (args.length === 1 && t.isSpreadElement(args[0]) && t.isIdentifier(args[0].argument, { name: "arguments" })) {
    // eg. super(...arguments);
    return t.callExpression(t.memberExpression(callee, t.identifier("apply")), [thisNode, args[0].argument]);
  } else {
    return t.callExpression(t.memberExpression(callee, t.identifier("call")), [thisNode].concat(args));
  }
};

module.exports = exports["default"];

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
babel-schmooze-sprockets-0.1.0 node_modules/babel-helper-optimise-call-expression/lib/index.js
babel-schmooze-sprockets-0.1.0.alpha.3 node_modules/babel-helper-optimise-call-expression/lib/index.js
babel-schmooze-sprockets-0.1.0.alpha.2 node_modules/babel-helper-optimise-call-expression/lib/index.js