blob: f31960d69598cc6c1aad1ae74a2e718ab0f50eb5 [file] [edit]
'use strict';
var GetIntrinsic = require('../GetIntrinsic');
var $TypeError = GetIntrinsic('%TypeError%');
var inspect = require('object-inspect');
var IsCallable = require('./IsCallable');
// https://www.ecma-international.org/ecma-262/6.0/#sec-call
module.exports = function Call(F, V) {
var args = arguments.length > 2 ? arguments[2] : [];
if (!IsCallable(F)) {
throw new $TypeError(inspect(F) + ' is not a function');
}
return F.apply(V, args);
};