From 0004e5127eb7d919b3db08b3f24c4b79843f69d6 Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Mon, 3 Feb 2025 10:08:28 +0200 Subject: feat(zkvms/sp1): Make guest commit public inputs --- zkvms/sp1/wrapper_macro/Cargo.toml | 3 +++ zkvms/sp1/wrapper_macro/src/lib.rs | 8 ++++++++ 2 files changed, 11 insertions(+) (limited to 'zkvms/sp1/wrapper_macro') diff --git a/zkvms/sp1/wrapper_macro/Cargo.toml b/zkvms/sp1/wrapper_macro/Cargo.toml index 14348e5..6223ed8 100644 --- a/zkvms/sp1/wrapper_macro/Cargo.toml +++ b/zkvms/sp1/wrapper_macro/Cargo.toml @@ -5,3 +5,6 @@ edition = "2021" [lib] proc-macro = true + +[dependencies] +toml = "0.8.19" diff --git a/zkvms/sp1/wrapper_macro/src/lib.rs b/zkvms/sp1/wrapper_macro/src/lib.rs index 67aaad6..f7954d7 100644 --- a/zkvms/sp1/wrapper_macro/src/lib.rs +++ b/zkvms/sp1/wrapper_macro/src/lib.rs @@ -14,6 +14,14 @@ pub fn make_wrapper(item: TokenStream) -> TokenStream { out.extend(format!("let {} = read();", arg).parse::()); } + let public_inputs = toml::from_str::( + include_str!(concat!(env!("INPUTS_DIR"), "/default_public_input.toml")) + ) + .unwrap(); + for input in public_inputs.keys() { + out.extend(format!("commit(&{});", input).parse::()); + } + let (ts_patterns, _) = args_divide_grouped(&args); out.extend(format!("commit(&zkp::{}{});", name, ts_patterns).parse::()); -- cgit v1.2.3