| 12345678910111213141516171819202122232425 | 
							- 'use strict';
 
- var reflectSetProto = require('./Reflect.setPrototypeOf');
 
- var originalSetProto = require('./Object.setPrototypeOf');
 
- var setDunderProto = require('dunder-proto/set');
 
- var $TypeError = require('es-errors/type');
 
- /** @type {import('.')} */
 
- module.exports = reflectSetProto
 
- 	? function setProto(O, proto) {
 
- 		// @ts-expect-error TS can't narrow inside a closure, for some reason
 
- 		if (reflectSetProto(O, proto)) {
 
- 			return O;
 
- 		}
 
- 		throw new $TypeError('Reflect.setPrototypeOf: failed to set [[Prototype]]');
 
- 	}
 
- 	: originalSetProto || (
 
- 		setDunderProto ? function setProto(O, proto) {
 
- 			// @ts-expect-error TS can't narrow inside a closure, for some reason
 
- 			setDunderProto(O, proto);
 
- 			return O;
 
- 		} : null
 
- 	);
 
 
  |