decord/source/1423_setFunctionLength.js
2026-08-11 06:20:06 +00:00

69 lines
1.9 KiB
JavaScript

// Module ID: 1423
// Function ID: 1424
// Name: setFunctionLength
// Dependencies: [1424, 540, 541, 542, 1425]
// Module 1423 (setFunctionLength)
let closure_2 = require("hasPropertyDescriptors")();
let closure_3 = require("getEvalledConstructor")("%Math.floor%");
export default function setFunctionLength(fn, num) {
if (typeof fn !== "function") {
const tmp25 = new require(541)("`fn` is not a function");
throw tmp25;
} else {
if (typeof num === "number") {
if (num >= 0) {
if (num <= 4294967295) {
if (callback(num) === num) {
let flag = true;
let flag2 = true;
if ("length" in fn) {
flag = true;
flag2 = true;
if (require(542)) {
const tmp4 = tmp2(542)(fn, "length");
let tmp5 = tmp4;
if (tmp4) {
tmp5 = !tmp4.configurable;
}
let flag3 = true;
if (tmp5) {
flag3 = false;
}
let tmp6 = tmp4;
if (tmp4) {
tmp6 = !tmp4.writable;
}
flag = true;
flag2 = flag3;
if (tmp6) {
flag = false;
flag2 = flag3;
}
}
tmp2 = require;
}
if (!flag2) {
flag2 = flag;
}
if (!flag2) {
flag2 = !tmp;
}
if (flag2) {
const tmp10 = require(1425) /* defineDataProperty */;
if (closure_2) {
tmp10(fn, "length", num, true, true);
} else {
tmp10(fn, "length", num);
}
}
return fn;
}
}
}
}
const tmp19 = new require(541)("`length` must be a positive 32-bit integer");
throw tmp19;
}
};