first
This commit is contained in:
19
node_modules/core-js/internals/inherit-if-required.js
generated
vendored
Normal file
19
node_modules/core-js/internals/inherit-if-required.js
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
'use strict';
|
||||
var isCallable = require('../internals/is-callable');
|
||||
var isObject = require('../internals/is-object');
|
||||
var setPrototypeOf = require('../internals/object-set-prototype-of');
|
||||
|
||||
// makes subclassing work correct for wrapped built-ins
|
||||
module.exports = function ($this, dummy, Wrapper) {
|
||||
var NewTarget, NewTargetPrototype;
|
||||
if (
|
||||
// it can work only with native `setPrototypeOf`
|
||||
setPrototypeOf &&
|
||||
// we haven't completely correct pre-ES6 way for getting `new.target`, so use this
|
||||
isCallable(NewTarget = dummy.constructor) &&
|
||||
NewTarget !== Wrapper &&
|
||||
isObject(NewTargetPrototype = NewTarget.prototype) &&
|
||||
NewTargetPrototype !== Wrapper.prototype
|
||||
) setPrototypeOf($this, NewTargetPrototype);
|
||||
return $this;
|
||||
};
|
Reference in New Issue
Block a user