@sebastianwessel/quickjs
Version:
A typescript package to execute JavaScript and TypeScript code in a WebAssembly QuickJS sandbox
23 lines (22 loc) • 875 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.serializeError = void 0;
const helper_js_1 = require("../../helper.js");
const handleToNative_js_1 = require("../handleToNative.js");
const serializeError = (ctx, handle, rootScope) => {
const d = new Error();
ctx
.newFunction('serializeError', (value, name) => {
const v = (0, handleToNative_js_1.handleToNative)(ctx, value, rootScope);
const n = (0, handleToNative_js_1.handleToNative)(ctx, name, rootScope);
Object.defineProperties(d, v);
d.name = n;
})
.consume(f => {
(0, helper_js_1.call)(ctx, 'internal/serializer/serializeError.js', `(d,fn) => {
fn(Object.getOwnPropertyDescriptors(d),d.name)
}`, undefined, handle, f).dispose();
});
return d;
};
exports.serializeError = serializeError;