decord/source/4690_ArrayCreate.js
2026-08-25 06:04:03 +00:00

38 lines
1.2 KiB
JavaScript

// Module ID: 4690
// Function ID: 4691
// Name: ArrayCreate
// Dependencies: [540, 4687, 541, 4691, 560, 4692, 562]
// Module 4690 (ArrayCreate)
import getEvalledConstructor from "getEvalledConstructor" /* 540 */;
import _mod541 from "module_541" /* 541 */;
import isInteger from "isInteger" /* 4687 */;
let closure_2 = getEvalledConstructor("%Array.prototype%");
export default function ArrayCreate(arg0) {
if (isInteger(arg0)) {
if (arg0 >= 0) {
if (arg0 > tmp(4691)) {
const tmp12 = new tmp(560)("length is greater than (2**32 - 1)");
throw tmp12;
} else {
const tmp3 = arguments.length > 1 ? arguments[1] : closure_2;
const items = [];
if (tmp3 !== closure_2) {
if (tmp(4692)) {
tmp(4692)(items, tmp3);
} else {
const tmp7 = new tmp(562)("ArrayCreate: a `proto` argument that is not `Array.prototype` is not supported in an environment that does not support setting the [[Prototype]]");
throw tmp7;
}
}
if (0 !== arg0) {
items.length = arg0;
}
return items;
}
}
}
throw new _mod541("Assertion failed: `length` must be an integer Number >= 0");
};