| import setPrototypeOf from "./setPrototypeOf.js"; |
| import isNativeReflectConstruct from "./isNativeReflectConstruct.js"; |
| export default function _construct(Parent, args, Class) { |
| if (isNativeReflectConstruct()) { |
| _construct = Reflect.construct; |
| } else { |
| _construct = function _construct(Parent, args, Class) { |
| var a = [null]; |
| a.push.apply(a, args); |
| var Constructor = Function.bind.apply(Parent, a); |
| var instance = new Constructor(); |
| if (Class) setPrototypeOf(instance, Class.prototype); |
| return instance; |
| }; |
| } |
| |
| return _construct.apply(null, arguments); |
| } |