feat: add deno_rust_wasm_qr_decode
This commit is contained in:
171
__wasm/deno_rust_wasm_qr_decode/lib/rs_lib.generated.js
Normal file
171
__wasm/deno_rust_wasm_qr_decode/lib/rs_lib.generated.js
Normal file
@@ -0,0 +1,171 @@
|
||||
// @generated file from wasmbuild -- do not edit
|
||||
// deno-lint-ignore-file
|
||||
// deno-fmt-ignore-file
|
||||
// source-hash: 7b04f965aad3774d53b13732c0edf9275f95b5a7
|
||||
let wasm;
|
||||
|
||||
let cachedUint8Memory0;
|
||||
function getUint8Memory0() {
|
||||
if (cachedUint8Memory0.byteLength === 0) {
|
||||
cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer);
|
||||
}
|
||||
return cachedUint8Memory0;
|
||||
}
|
||||
|
||||
let WASM_VECTOR_LEN = 0;
|
||||
|
||||
function passArray8ToWasm0(arg, malloc) {
|
||||
const ptr = malloc(arg.length * 1);
|
||||
getUint8Memory0().set(arg, ptr / 1);
|
||||
WASM_VECTOR_LEN = arg.length;
|
||||
return ptr;
|
||||
}
|
||||
|
||||
let cachedInt32Memory0;
|
||||
function getInt32Memory0() {
|
||||
if (cachedInt32Memory0.byteLength === 0) {
|
||||
cachedInt32Memory0 = new Int32Array(wasm.memory.buffer);
|
||||
}
|
||||
return cachedInt32Memory0;
|
||||
}
|
||||
|
||||
const cachedTextDecoder = new TextDecoder("utf-8", {
|
||||
ignoreBOM: true,
|
||||
fatal: true,
|
||||
});
|
||||
|
||||
cachedTextDecoder.decode();
|
||||
|
||||
function getStringFromWasm0(ptr, len) {
|
||||
return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));
|
||||
}
|
||||
/**
|
||||
* @param {Uint8Array} image_bytes
|
||||
* @returns {string}
|
||||
*/
|
||||
export function decode_qr(image_bytes) {
|
||||
try {
|
||||
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
||||
const ptr0 = passArray8ToWasm0(image_bytes, wasm.__wbindgen_malloc);
|
||||
const len0 = WASM_VECTOR_LEN;
|
||||
wasm.decode_qr(retptr, ptr0, len0);
|
||||
var r0 = getInt32Memory0()[retptr / 4 + 0];
|
||||
var r1 = getInt32Memory0()[retptr / 4 + 1];
|
||||
return getStringFromWasm0(r0, r1);
|
||||
} finally {
|
||||
wasm.__wbindgen_add_to_stack_pointer(16);
|
||||
wasm.__wbindgen_free(r0, r1);
|
||||
}
|
||||
}
|
||||
|
||||
const imports = {
|
||||
__wbindgen_placeholder__: {},
|
||||
};
|
||||
|
||||
const wasm_url = new URL("rs_lib_bg.wasm", import.meta.url);
|
||||
|
||||
/**
|
||||
* Decompression callback
|
||||
*
|
||||
* @callback decompressCallback
|
||||
* @param {Uint8Array} compressed
|
||||
* @return {Uint8Array} decompressed
|
||||
*/
|
||||
|
||||
/** 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 {decompressCallback=} transform
|
||||
*/
|
||||
export async function instantiate(transform) {
|
||||
return (await instantiateWithInstance(transform)).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 {decompressCallback=} transform
|
||||
* @returns {Promise<{
|
||||
* instance: WebAssembly.Instance;
|
||||
* exports: { decode_qr: typeof decode_qr }
|
||||
* }>}
|
||||
*/
|
||||
export function instantiateWithInstance(transform) {
|
||||
if (instanceWithExports != null) {
|
||||
return Promise.resolve(instanceWithExports);
|
||||
}
|
||||
if (lastLoadPromise == null) {
|
||||
lastLoadPromise = (async () => {
|
||||
try {
|
||||
const instance = (await instantiateModule(transform)).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 { decode_qr };
|
||||
}
|
||||
|
||||
/** Gets if the Wasm module has been instantiated. */
|
||||
export function isInstantiated() {
|
||||
return instanceWithExports != null;
|
||||
}
|
||||
|
||||
async function instantiateModule(transform) {
|
||||
switch (wasm_url.protocol) {
|
||||
case "file:": {
|
||||
if (typeof Deno !== "object") {
|
||||
throw new Error("file urls are not supported in this environment");
|
||||
}
|
||||
|
||||
if ("permissions" in Deno) {
|
||||
Deno.permissions.request({ name: "read", path: wasm_url });
|
||||
}
|
||||
const wasmCode = await Deno.readFile(wasm_url);
|
||||
return WebAssembly.instantiate(
|
||||
!transform ? wasmCode : transform(wasmCode),
|
||||
imports,
|
||||
);
|
||||
}
|
||||
case "https:":
|
||||
case "http:": {
|
||||
if (typeof Deno === "object" && "permissions" in Deno) {
|
||||
Deno.permissions.request({ name: "net", host: wasm_url.host });
|
||||
}
|
||||
const wasmResponse = await fetch(wasm_url);
|
||||
if (transform) {
|
||||
const wasmCode = new Uint8Array(await wasmResponse.arrayBuffer());
|
||||
return WebAssembly.instantiate(transform(wasmCode), imports);
|
||||
}
|
||||
if (
|
||||
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: ${wasm_url.protocol}`);
|
||||
}
|
||||
}
|
||||
BIN
__wasm/deno_rust_wasm_qr_decode/lib/rs_lib_bg.wasm
Normal file
BIN
__wasm/deno_rust_wasm_qr_decode/lib/rs_lib_bg.wasm
Normal file
Binary file not shown.
Reference in New Issue
Block a user