massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / core-js / modules / es.aggregate-error.js
1 'use strict';
2 var $ = require('../internals/export');
3 var global = require('../internals/global');
4 var isPrototypeOf = require('../internals/object-is-prototype-of');
5 var getPrototypeOf = require('../internals/object-get-prototype-of');
6 var setPrototypeOf = require('../internals/object-set-prototype-of');
7 var copyConstructorProperties = require('../internals/copy-constructor-properties');
8 var create = require('../internals/object-create');
9 var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
10 var createPropertyDescriptor = require('../internals/create-property-descriptor');
11 var clearErrorStack = require('../internals/clear-error-stack');
12 var installErrorCause = require('../internals/install-error-cause');
13 var iterate = require('../internals/iterate');
14 var normalizeStringArgument = require('../internals/normalize-string-argument');
15 var wellKnownSymbol = require('../internals/well-known-symbol');
16 var ERROR_STACK_INSTALLABLE = require('../internals/error-stack-installable');
17
18 var TO_STRING_TAG = wellKnownSymbol('toStringTag');
19 var Error = global.Error;
20 var push = [].push;
21
22 var $AggregateError = function AggregateError(errors, message /* , options */) {
23   var options = arguments.length > 2 ? arguments[2] : undefined;
24   var isInstance = isPrototypeOf(AggregateErrorPrototype, this);
25   var that;
26   if (setPrototypeOf) {
27     that = setPrototypeOf(new Error(undefined), isInstance ? getPrototypeOf(this) : AggregateErrorPrototype);
28   } else {
29     that = isInstance ? this : create(AggregateErrorPrototype);
30     createNonEnumerableProperty(that, TO_STRING_TAG, 'Error');
31   }
32   createNonEnumerableProperty(that, 'message', normalizeStringArgument(message, ''));
33   if (ERROR_STACK_INSTALLABLE) createNonEnumerableProperty(that, 'stack', clearErrorStack(that.stack, 1));
34   installErrorCause(that, options);
35   var errorsArray = [];
36   iterate(errors, push, { that: errorsArray });
37   createNonEnumerableProperty(that, 'errors', errorsArray);
38   return that;
39 };
40
41 if (setPrototypeOf) setPrototypeOf($AggregateError, Error);
42 else copyConstructorProperties($AggregateError, Error);
43
44 var AggregateErrorPrototype = $AggregateError.prototype = create(Error.prototype, {
45   constructor: createPropertyDescriptor(1, $AggregateError),
46   message: createPropertyDescriptor(1, ''),
47   name: createPropertyDescriptor(1, 'AggregateError')
48 });
49
50 // `AggregateError` constructor
51 // https://tc39.es/ecma262/#sec-aggregate-error-constructor
52 $({ global: true }, {
53   AggregateError: $AggregateError
54 });