summaryrefslogtreecommitdiffstats
path: root/node_modules/es-abstract/2019/SpeciesConstructor.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/es-abstract/2019/SpeciesConstructor.js')
-rw-r--r--node_modules/es-abstract/2019/SpeciesConstructor.js32
1 files changed, 0 insertions, 32 deletions
diff --git a/node_modules/es-abstract/2019/SpeciesConstructor.js b/node_modules/es-abstract/2019/SpeciesConstructor.js
deleted file mode 100644
index 3cdcd74..0000000
--- a/node_modules/es-abstract/2019/SpeciesConstructor.js
+++ /dev/null
@@ -1,32 +0,0 @@
-'use strict';
-
-var GetIntrinsic = require('../GetIntrinsic');
-
-var $species = GetIntrinsic('%Symbol.species%', true);
-var $TypeError = GetIntrinsic('%TypeError%');
-
-var IsConstructor = require('./IsConstructor');
-var Type = require('./Type');
-
-// https://ecma-international.org/ecma-262/6.0/#sec-speciesconstructor
-
-module.exports = function SpeciesConstructor(O, defaultConstructor) {
- if (Type(O) !== 'Object') {
- throw new $TypeError('Assertion failed: Type(O) is not Object');
- }
- var C = O.constructor;
- if (typeof C === 'undefined') {
- return defaultConstructor;
- }
- if (Type(C) !== 'Object') {
- throw new $TypeError('O.constructor is not an Object');
- }
- var S = $species ? C[$species] : void 0;
- if (S == null) {
- return defaultConstructor;
- }
- if (IsConstructor(S)) {
- return S;
- }
- throw new $TypeError('no constructor found');
-};