amis-rpc-design/node_modules/@hapi/hoek/lib/once.js

26 lines
401 B
JavaScript
Raw Normal View History

2023-10-07 19:42:30 +08:00
'use strict';
const internals = {
wrapped: Symbol('wrapped')
};
module.exports = function (method) {
if (method[internals.wrapped]) {
return method;
}
let once = false;
const wrappedFn = function (...args) {
if (!once) {
once = true;
method(...args);
}
};
wrappedFn[internals.wrapped] = true;
return wrappedFn;
};