Files
airllm-fork-nodejs/node_modules/node-llama-cpp/dist/utils/safeEventCallback.js
2026-02-05 15:27:49 +08:00

29 lines
927 B
JavaScript

const safeCallbackSymbol = Symbol("safeCallback");
export function safeEventCallback(callback, message) {
if (callback == null)
return undefined;
// do not wrap the callback if it's already wrapped
if (callback?.[safeCallbackSymbol] === true)
return callback;
const res = (...args) => {
try {
const res = callback(...args);
if (res instanceof Promise)
res.catch((error) => {
if (message != null)
console.error(message, error);
else
console.error(error);
});
}
catch (error) {
if (message != null)
console.error(message, error);
else
console.error(error);
}
};
res[safeCallbackSymbol] = true;
return res;
}
//# sourceMappingURL=safeEventCallback.js.map