Urara-Blog/node_modules/.pnpm-store/v3/files/2f/e3b7f9d083d8e7edf717f94fac9af9d7265318432a10779253af9829b28f5b7ef7814234d34d67323ec0fcd2af6efbebf7301a0f6ad158601783154e487f0d
2022-08-14 01:14:53 +08:00

20 lines
562 B
Text

"use strict";
module.exports.mixin = function mixin(target, source) {
const keys = Object.getOwnPropertyNames(source);
for (let i = 0; i < keys.length; ++i) {
Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));
}
};
module.exports.wrapperSymbol = Symbol("wrapper");
module.exports.implSymbol = Symbol("impl");
module.exports.wrapperForImpl = function (impl) {
return impl[module.exports.wrapperSymbol];
};
module.exports.implForWrapper = function (wrapper) {
return wrapper[module.exports.implSymbol];
};