30 lines
1.1 KiB
JavaScript
30 lines
1.1 KiB
JavaScript
// Metro module 4474 (f4475).
|
|
import * as _GetIntrinsic from "./GetIntrinsic";
|
|
import * as _isInteger from "./isInteger";
|
|
import * as _Module541 from "./Module541";
|
|
import * as _Module4475 from "./Module4475";
|
|
import * as _Module560 from "./Module560";
|
|
import * as _Module4476 from "./Module4476";
|
|
import * as _Module562 from "./Module562";
|
|
let c2692_2 = _GetIntrinsic("%Array.prototype%");
|
|
module.exports = function ArrayCreate(a0) {
|
|
if (_isInteger(a0) && !(a0 < 0)) {
|
|
if (a0 > _Module4475) {
|
|
throw new _Module560("length is greater than (2**32 - 1)");
|
|
}
|
|
const r20 = arguments.length > 1 ? arguments[1] : c2692_2;
|
|
const r21 = [];
|
|
if (r20 !== c2692_2) {
|
|
if (!_Module4476) {
|
|
throw new _Module562("ArrayCreate: a `proto` argument that is not `Array.prototype` is not supported in an environment that does not support setting the [[Prototype]]");
|
|
}
|
|
_Module4476(r21, r20);
|
|
}
|
|
if (a0 !== 0) {
|
|
r21.length = a0;
|
|
}
|
|
return r21;
|
|
}
|
|
throw new _Module541("Assertion failed: `length` must be an integer Number >= 0");
|
|
};
|