Skip to main content
Module

x/eszip/eszip_wasm.generated.js

A compact file format to losslessly serialize an ECMAScript module graph into a single file
Go to Latest
File
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594
// @generated file from wasmbuild -- do not edit// deno-lint-ignore-file// deno-fmt-ignore-file// source-hash: 09b40b6d61b6d742d785a838be334861dc37a2b4let wasm;
const heap = new Array(32).fill(undefined);
heap.push(undefined, null, true, false);
function getObject(idx) { return heap[idx];}
let WASM_VECTOR_LEN = 0;
let cachedUint8Memory0 = new Uint8Array();
function getUint8Memory0() { if (cachedUint8Memory0.byteLength === 0) { cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer); } return cachedUint8Memory0;}
const cachedTextEncoder = new TextEncoder("utf-8");
const encodeString = function (arg, view) { return cachedTextEncoder.encodeInto(arg, view);};
function passStringToWasm0(arg, malloc, realloc) { if (realloc === undefined) { const buf = cachedTextEncoder.encode(arg); const ptr = malloc(buf.length); getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf); WASM_VECTOR_LEN = buf.length; return ptr; }
let len = arg.length; let ptr = malloc(len);
const mem = getUint8Memory0();
let offset = 0;
for (; offset < len; offset++) { const code = arg.charCodeAt(offset); if (code > 0x7F) break; mem[ptr + offset] = code; }
if (offset !== len) { if (offset !== 0) { arg = arg.slice(offset); } ptr = realloc(ptr, len, len = offset + arg.length * 3); const view = getUint8Memory0().subarray(ptr + offset, ptr + len); const ret = encodeString(arg, view);
offset += ret.written; }
WASM_VECTOR_LEN = offset; return ptr;}
function isLikeNone(x) { return x === undefined || x === null;}
let cachedInt32Memory0 = new Int32Array();
function getInt32Memory0() { if (cachedInt32Memory0.byteLength === 0) { cachedInt32Memory0 = new Int32Array(wasm.memory.buffer); } return cachedInt32Memory0;}
let heap_next = heap.length;
function dropObject(idx) { if (idx < 36) return; heap[idx] = heap_next; heap_next = idx;}
function takeObject(idx) { const ret = getObject(idx); dropObject(idx); return ret;}
const cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true,});
cachedTextDecoder.decode();
function getStringFromWasm0(ptr, len) { return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));}
function addHeapObject(obj) { if (heap_next === heap.length) heap.push(heap.length + 1); const idx = heap_next; heap_next = heap[idx];
heap[idx] = obj; return idx;}
const CLOSURE_DTORS = new FinalizationRegistry((state) => { wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b);});
function makeMutClosure(arg0, arg1, dtor, f) { const state = { a: arg0, b: arg1, cnt: 1, dtor }; const real = (...args) => { // First up with a closure we increment the internal reference // count. This ensures that the Rust closure environment won't // be deallocated while we're invoking it. state.cnt++; const a = state.a; state.a = 0; try { return f(a, state.b, ...args); } finally { if (--state.cnt === 0) { wasm.__wbindgen_export_2.get(state.dtor)(a, state.b); CLOSURE_DTORS.unregister(state); } else { state.a = a; } } }; real.original = state; CLOSURE_DTORS.register(real, state, state); return real;}function __wbg_adapter_18(arg0, arg1, arg2) { wasm ._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h60a8a7858e04c32c( arg0, arg1, addHeapObject(arg2), );}
function passArray8ToWasm0(arg, malloc) { const ptr = malloc(arg.length * 1); getUint8Memory0().set(arg, ptr / 1); WASM_VECTOR_LEN = arg.length; return ptr;}/** * Serialize a module graph into eszip. * @param {any} roots * @param {Function} loader * @param {any} import_map_url * @returns {Promise<Uint8Array>} */export function build(roots, loader, import_map_url) { const ret = wasm.build( addHeapObject(roots), addHeapObject(loader), addHeapObject(import_map_url), ); return takeObject(ret);}
function handleError(f, args) { try { return f.apply(this, args); } catch (e) { wasm.__wbindgen_exn_store(addHeapObject(e)); }}function __wbg_adapter_50(arg0, arg1, arg2, arg3) { wasm.wasm_bindgen__convert__closures__invoke2_mut__hf907b91f24b481c9( arg0, arg1, addHeapObject(arg2), addHeapObject(arg3), );}
const ParserFinalization = new FinalizationRegistry((ptr) => wasm.__wbg_parser_free(ptr));/** */export class Parser { static __wrap(ptr) { const obj = Object.create(Parser.prototype); obj.ptr = ptr; ParserFinalization.register(obj, obj.ptr, obj); return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0; ParserFinalization.unregister(this); return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_parser_free(ptr); } /** */ constructor() { const ret = wasm.parser_new(); return Parser.__wrap(ret); } /** * Parse from a BYOB readable stream. * @param {ReadableStreamBYOBReader} stream * @returns {Promise<any>} */ parse(stream) { const ret = wasm.parser_parse(this.ptr, addHeapObject(stream)); return takeObject(ret); } /** * Parse from an in-memory buffer. * @param {Uint8Array} buffer * @returns {Promise<any>} */ parseBytes(buffer) { const ptr0 = passArray8ToWasm0(buffer, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; const ret = wasm.parser_parseBytes(this.ptr, ptr0, len0); return takeObject(ret); } /** * Load module sources. * @returns {Promise<any>} */ load() { const ret = wasm.parser_load(this.ptr); return takeObject(ret); } /** * Get a module source. * @param {string} specifier * @returns {Promise<any>} */ getModuleSource(specifier) { const ptr0 = passStringToWasm0( specifier, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc, ); const len0 = WASM_VECTOR_LEN; const ret = wasm.parser_getModuleSource(this.ptr, ptr0, len0); return takeObject(ret); } /** * Get a module sourcemap. * @param {string} specifier * @returns {Promise<any>} */ getModuleSourceMap(specifier) { const ptr0 = passStringToWasm0( specifier, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc, ); const len0 = WASM_VECTOR_LEN; const ret = wasm.parser_getModuleSourceMap(this.ptr, ptr0, len0); return takeObject(ret); }}
const imports = { __wbindgen_placeholder__: { __wbindgen_string_get: function (arg0, arg1) { const obj = getObject(arg1); const ret = typeof (obj) === "string" ? obj : undefined; var ptr0 = isLikeNone(ret) ? 0 : passStringToWasm0( ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc, ); var len0 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }, __wbindgen_object_drop_ref: function (arg0) { takeObject(arg0); }, __wbindgen_string_new: function (arg0, arg1) { const ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); }, __wbg_new_1d9a920c6bfc44a8: function () { const ret = new Array(); return addHeapObject(ret); }, __wbg_push_740e4b286702d964: function (arg0, arg1) { const ret = getObject(arg0).push(getObject(arg1)); return ret; }, __wbindgen_json_serialize: function (arg0, arg1) { const obj = getObject(arg1); const ret = JSON.stringify(obj === undefined ? null : obj); const ptr0 = passStringToWasm0( ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc, ); const len0 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }, __wbg_new_8d2af00bc1e329ee: function (arg0, arg1) { const ret = new Error(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }, __wbindgen_memory: function () { const ret = wasm.memory; return addHeapObject(ret); }, __wbg_buffer_3f3d764d4747d564: function (arg0) { const ret = getObject(arg0).buffer; return addHeapObject(ret); }, __wbg_newwithbyteoffsetandlength_d9aa266703cb98be: function ( arg0, arg1, arg2, ) { const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }, __wbg_new_8c3f0052272a457a: function (arg0) { const ret = new Uint8Array(getObject(arg0)); return addHeapObject(ret); }, __wbg_resolve_99fe17964f31ffc0: function (arg0) { const ret = Promise.resolve(getObject(arg0)); return addHeapObject(ret); }, __wbg_newwithlength_f5933855e4f48a19: function (arg0) { const ret = new Uint8Array(arg0 >>> 0); return addHeapObject(ret); }, __wbg_read_1bddf8e8af59d1d6: function (arg0, arg1) { const ret = getObject(arg0).read(getObject(arg1)); return addHeapObject(ret); }, __wbg_done_1c9555f2eaa593e9: function (arg0) { const ret = getObject(arg0).done; return ret; }, __wbindgen_is_object: function (arg0) { const val = getObject(arg0); const ret = typeof (val) === "object" && val !== null; return ret; }, __wbg_toString_7be108a12ef03bc2: function (arg0) { const ret = getObject(arg0).toString(); return addHeapObject(ret); }, __wbg_value_a5e55ed0660d29ac: function (arg0) { const ret = getObject(arg0).value; return isLikeNone(ret) ? 0 : addHeapObject(ret); }, __wbg_byteLength_87a0436a74adc26c: function (arg0) { const ret = getObject(arg0).byteLength; return ret; }, __wbg_length_9e1ae1900cb0fbd5: function (arg0) { const ret = getObject(arg0).length; return ret; }, __wbg_set_83db9690f9353e79: function (arg0, arg1, arg2) { getObject(arg0).set(getObject(arg1), arg2 >>> 0); }, __wbg_call_3999bee59e9f7719: function () { return handleError(function (arg0, arg1, arg2, arg3) { const ret = getObject(arg0).call( getObject(arg1), getObject(arg2), getObject(arg3), ); return addHeapObject(ret); }, arguments); }, __wbg_new_9962f939219f1820: function (arg0, arg1) { try { var state0 = { a: arg0, b: arg1 }; var cb0 = (arg0, arg1) => { const a = state0.a; state0.a = 0; try { return __wbg_adapter_50(a, state0.b, arg0, arg1); } finally { state0.a = a; } }; const ret = new Promise(cb0); return addHeapObject(ret); } finally { state0.a = state0.b = 0; } }, __wbg_new_abda76e883ba8a5f: function () { const ret = new Error(); return addHeapObject(ret); }, __wbg_stack_658279fe44541cf6: function (arg0, arg1) { const ret = getObject(arg1).stack; const ptr0 = passStringToWasm0( ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc, ); const len0 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }, __wbg_error_f851667af71bcfc6: function (arg0, arg1) { try { console.error(getStringFromWasm0(arg0, arg1)); } finally { wasm.__wbindgen_free(arg0, arg1); } }, __wbg_call_168da88779e35f61: function () { return handleError(function (arg0, arg1, arg2) { const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }, arguments); }, __wbindgen_throw: function (arg0, arg1) { throw new Error(getStringFromWasm0(arg0, arg1)); }, __wbindgen_cb_drop: function (arg0) { const obj = takeObject(arg0).original; if (obj.cnt-- == 1) { obj.a = 0; return true; } const ret = false; return ret; }, __wbg_then_11f7a54d67b4bfad: function (arg0, arg1) { const ret = getObject(arg0).then(getObject(arg1)); return addHeapObject(ret); }, __wbg_then_cedad20fbbd9418a: function (arg0, arg1, arg2) { const ret = getObject(arg0).then(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }, __wbindgen_closure_wrapper9612: function (arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 142, __wbg_adapter_18); return addHeapObject(ret); }, },};
/** * Decompression callback * * @callback DecompressCallback * @param {Uint8Array} compressed * @return {Uint8Array} decompressed */
/** * Options for instantiating a Wasm instance. * @typedef {Object} InstantiateOptions * @property {URL=} url - Optional url to the Wasm file to instantiate. * @property {DecompressCallback=} decompress - Callback to decompress the * raw Wasm file bytes before instantiating. */
/** Instantiates an instance of the Wasm module returning its functions. * @remarks It is safe to call this multiple times and once successfully * loaded it will always return a reference to the same object. * @param {InstantiateOptions=} opts */export async function instantiate(opts) { return (await instantiateWithInstance(opts)).exports;}
let instanceWithExports;let lastLoadPromise;
/** Instantiates an instance of the Wasm module along with its exports. * @remarks It is safe to call this multiple times and once successfully * loaded it will always return a reference to the same object. * @param {InstantiateOptions=} opts * @returns {Promise<{ * instance: WebAssembly.Instance; * exports: { build: typeof build; Parser : typeof Parser } * }>} */export function instantiateWithInstance(opts) { if (instanceWithExports != null) { return Promise.resolve(instanceWithExports); } if (lastLoadPromise == null) { lastLoadPromise = (async () => { try { const instance = (await instantiateModule(opts ?? {})).instance; wasm = instance.exports; cachedInt32Memory0 = new Int32Array(wasm.memory.buffer); cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer); instanceWithExports = { instance, exports: getWasmInstanceExports(), }; return instanceWithExports; } finally { lastLoadPromise = null; } })(); } return lastLoadPromise;}
function getWasmInstanceExports() { return { build, Parser };}
/** Gets if the Wasm module has been instantiated. */export function isInstantiated() { return instanceWithExports != null;}
/** * @param {InstantiateOptions} opts */async function instantiateModule(opts) { const wasmUrl = opts.url ?? new URL("eszip_wasm_bg.wasm", import.meta.url); const decompress = opts.decompress; const isFile = wasmUrl.protocol === "file:";
// make file urls work in Node via dnt const isNode = globalThis.process?.versions?.node != null; if (isNode && isFile) { // the deno global will be shimmed by dnt const wasmCode = await Deno.readFile(wasmUrl); return WebAssembly.instantiate( decompress ? decompress(wasmCode) : wasmCode, imports, ); }
switch (wasmUrl.protocol) { case "file:": case "https:": case "http:": { if (isFile) { if (typeof Deno !== "object") { throw new Error("file urls are not supported in this environment"); } if ("permissions" in Deno) { await Deno.permissions.request({ name: "read", path: wasmUrl }); } } else if (typeof Deno === "object" && "permissions" in Deno) { await Deno.permissions.request({ name: "net", host: wasmUrl.host }); } const wasmResponse = await fetch(wasmUrl); if (decompress) { const wasmCode = new Uint8Array(await wasmResponse.arrayBuffer()); return WebAssembly.instantiate(decompress(wasmCode), imports); } if ( isFile || wasmResponse.headers.get("content-type")?.toLowerCase() .startsWith("application/wasm") ) { return WebAssembly.instantiateStreaming(wasmResponse, imports); } else { return WebAssembly.instantiate( await wasmResponse.arrayBuffer(), imports, ); } } default: throw new Error(`Unsupported protocol: ${wasmUrl.protocol}`); }}