92 lines
3.4 KiB
JavaScript
92 lines
3.4 KiB
JavaScript
// Module ID: 4474
|
|
// Function ID: 39060
|
|
// Name: OrdinaryDefineOwnProperty
|
|
// Dependencies: [4411, 518, 4458, 4462, 519, 4475, 539, 4467, 4463, 4476, 4477]
|
|
|
|
// Module 4474 (OrdinaryDefineOwnProperty)
|
|
|
|
export default function OrdinaryDefineOwnProperty(arg0, arg1, __Writable__) {
|
|
if (require(4411) /* isObject */(arg0)) {
|
|
if (tmp(4458)(arg1)) {
|
|
if (tmp8(4462)(__Writable__)) {
|
|
if (tmp15(519)) {
|
|
const tmp45 = tmp22(519)(arg0, arg1);
|
|
let tmp46 = tmp45;
|
|
if (tmp45) {
|
|
tmp46 = require(4463) /* ToPropertyDescriptor */(tmp45);
|
|
}
|
|
return require(4477) /* ValidateAndApplyPropertyDescriptor */(arg0, arg1, require(4476) /* getEvalledConstructor */(arg0), __Writable__, tmp46);
|
|
} else if (tmp22(4475)(__Writable__)) {
|
|
let tmp40 = require(539);
|
|
const prototype5 = tmp40.prototype;
|
|
tmp40 = new tmp40("This environment does not support accessor property descriptors.");
|
|
throw tmp40;
|
|
} else {
|
|
__Configurable__ = !tmp24;
|
|
if (!(arg1 in arg0)) {
|
|
__Configurable__ = __Writable__["[[Writable]]"];
|
|
}
|
|
if (__Configurable__) {
|
|
__Configurable__ = __Writable__["[[Enumerable]]"];
|
|
}
|
|
if (__Configurable__) {
|
|
__Configurable__ = __Writable__["[[Configurable]]"];
|
|
}
|
|
if (__Configurable__) {
|
|
__Configurable__ = "[[Value]]" in __Writable__;
|
|
}
|
|
let tmp25 = arg1 in arg0;
|
|
if (tmp25) {
|
|
__Configurable__2 = !tmp26;
|
|
if ("[[Configurable]]" in __Writable__) {
|
|
__Configurable__2 = __Writable__["[[Configurable]]"];
|
|
}
|
|
tmp25 = __Configurable__2;
|
|
}
|
|
if (tmp25) {
|
|
__Enumerable__ = !tmp27;
|
|
if ("[[Enumerable]]" in __Writable__) {
|
|
__Enumerable__ = __Writable__["[[Enumerable]]"];
|
|
}
|
|
tmp25 = __Enumerable__;
|
|
}
|
|
if (tmp25) {
|
|
__Writable__ = !tmp28;
|
|
if ("[[Writable]]" in __Writable__) {
|
|
__Writable__ = __Writable__["[[Writable]]"];
|
|
}
|
|
tmp25 = __Writable__;
|
|
}
|
|
if (tmp25) {
|
|
tmp25 = "[[Value]]" in __Writable__;
|
|
}
|
|
if (!__Configurable__) {
|
|
if (!tmp25) {
|
|
let tmp31 = require(539);
|
|
const prototype4 = tmp31.prototype;
|
|
tmp31 = new tmp31("This environment does not support defining non-writable, non-enumerable, or non-configurable properties");
|
|
throw tmp31;
|
|
}
|
|
}
|
|
arg0[arg1] = __Writable__["[[Value]]"];
|
|
return require(4467) /* SameValue */(arg0[arg1], __Writable__["[[Value]]"]);
|
|
}
|
|
} else {
|
|
let tmp15Result = tmp15(518);
|
|
const prototype3 = tmp15Result.prototype;
|
|
tmp15Result = new tmp15Result("Assertion failed: Desc must be a Property Descriptor");
|
|
throw tmp15Result;
|
|
}
|
|
} else {
|
|
let tmp8Result = tmp8(518);
|
|
const prototype2 = tmp8Result.prototype;
|
|
tmp8Result = new tmp8Result("Assertion failed: P must be a Property Key");
|
|
throw tmp8Result;
|
|
}
|
|
} else {
|
|
let tmpResult = tmp(518);
|
|
const prototype = tmpResult.prototype;
|
|
tmpResult = new tmpResult("Assertion failed: O must be an Object");
|
|
throw tmpResult;
|
|
}
|
|
};
|