Files
NapCatQQ/.pnpm-store/v3/files/9b/927b900a4d2fee49041cb494aa4400cd66e61b917301b6a21c0e4e74a73e315861b78067faaa2fb20b982487e1297a4a17079b09b52cf92980b62307351903
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

51 lines
997 B
Plaintext

'use strict';
var $TypeError = require('es-errors/type');
var $setProto = require('set-proto');
var isObject = require('es-object-atoms/isObject');
var OrdinaryGetPrototypeOf = require('./OrdinaryGetPrototypeOf');
// https://262.ecma-international.org/7.0/#sec-ordinarysetprototypeof
module.exports = function OrdinarySetPrototypeOf(O, V) {
if (V !== null && !isObject(V)) {
throw new $TypeError('Assertion failed: V must be Object or Null');
}
/*
var extensible = IsExtensible(O);
var current = OrdinaryGetPrototypeOf(O);
if (SameValue(V, current)) {
return true;
}
if (!extensible) {
return false;
}
*/
try {
$setProto(O, V);
} catch (e) {
return false;
}
return OrdinaryGetPrototypeOf(O) === V;
/*
var p = V;
var done = false;
while (!done) {
if (p === null) {
done = true;
} else if (SameValue(p, O)) {
return false;
} else {
if (wat) {
done = true;
} else {
p = p.[[Prototype]];
}
}
}
O.[[Prototype]] = V;
return true;
*/
};