From 59d613e288b56eb18ef98d64804d5f9e67378c8b Mon Sep 17 00:00:00 2001 From: robal Date: Thu, 9 Feb 2023 13:54:17 +0100 Subject: [PATCH] wrap SmartWeave methods exposed to rust with exception handling code gh-309 --- .../modules/impl/wasm/rust-wasm-imports.ts | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/core/modules/impl/wasm/rust-wasm-imports.ts b/src/core/modules/impl/wasm/rust-wasm-imports.ts index c8ba2d83..7b6548eb 100644 --- a/src/core/modules/impl/wasm/rust-wasm-imports.ts +++ b/src/core/modules/impl/wasm/rust-wasm-imports.ts @@ -134,12 +134,16 @@ export const rustWasmImports = (swGlobal, wbindgenImports, wasmInstance, dtorVal }, arguments); }, __wbg_readContractState: function (arg0, arg1) { - var ret = rawImports.SmartWeave.readContractState(getStringFromWasm0(arg0, arg1)); - return addHeapObject(ret); + return handleError(function (arg0, arg1) { + var ret = rawImports.SmartWeave.readContractState(getStringFromWasm0(arg0, arg1)); + return addHeapObject(ret); + }, arguments) }, __wbg_viewContractState: function (arg0, arg1, arg2) { - var ret = rawImports.SmartWeave.viewContractState(getStringFromWasm0(arg0, arg1), takeObject(arg2)); - return addHeapObject(ret); + return handleError(function (arg0, arg1, arg2) { + var ret = rawImports.SmartWeave.viewContractState(getStringFromWasm0(arg0, arg1), takeObject(arg2)); + return addHeapObject(ret); + }, arguments) }, __wbg_caller: function (arg0) { var ret = rawImports.SmartWeave.caller(); @@ -153,8 +157,10 @@ export const rustWasmImports = (swGlobal, wbindgenImports, wasmInstance, dtorVal getInt32Memory0()[arg0 / 4 + 0] = ptr0; }, __wbg_write: function (arg0, arg1, arg2) { - var ret = rawImports.SmartWeave.write(getStringFromWasm0(arg0, arg1), takeObject(arg2)); - return addHeapObject(ret); + return handleError(function (arg0, arg1, arg2) { + var ret = rawImports.SmartWeave.write(getStringFromWasm0(arg0, arg1), takeObject(arg2)); + return addHeapObject(ret); + }, arguments) }, __wbg_refreshState: function (arg0, arg1) { // TODO