// 26.1.1 Reflect.apply(target, thisArgument, argumentsList) var $export = require('./_export'); var aFunction = require('./_a-function'); var anObject = require('./_an-object'); var rApply = (require('./_global').Reflect || {}).apply; var fApply = Function.apply; // MS Edge argumentsList argument is optional $export($export.S + $export.F * !require('./_fails')(function () { rApply(function () { /* empty */ }); }), 'Reflect', { apply: function apply(target, thisArgument, argumentsList) { var T = aFunction(target); var L = anObject(argumentsList); return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L); } });