From 5eee0334d0a67f6e1a7902c8ef33fff613393fdc Mon Sep 17 00:00:00 2001 From: makerare <97452241+makerare@users.noreply.github.com> Date: Tue, 13 Feb 2024 00:18:45 +0100 Subject: [PATCH] Add imports support to verifyFunctionExecution. Signed-off-by: makerare <97452241+makerare@users.noreply.github.com> --- wasm/src/programs/execution.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/wasm/src/programs/execution.rs b/wasm/src/programs/execution.rs index 9110839ef..744c1004c 100644 --- a/wasm/src/programs/execution.rs +++ b/wasm/src/programs/execution.rs @@ -83,10 +83,16 @@ pub fn verify_function_execution( verifying_key: &VerifyingKey, program: &Program, function_id: &str, + imports: Option, ) -> Result { let function = IdentifierNative::from_str(function_id).map_err(|e| e.to_string())?; let program_id = ProgramID::::from_str(&program.id()).unwrap(); - let mut process = ProcessNative::load_web().map_err(|e| e.to_string())?; + let mut process_native = ProcessNative::load_web().map_err(|e| e.to_string())?; + let process = &mut process_native; + + let program_native = ProgramNative::from_str(program.to_string().as_str()).map_err(|e| e.to_string())?; + ProgramManager::resolve_imports(process, &program_native, imports)?; + if &program.id() != "credits.aleo" { process.add_program(program).map_err(|e| e.to_string())?; }