aboutsummaryrefslogtreecommitdiff
path: root/guests_macro/src
diff options
context:
space:
mode:
authorKamen Mladenov <kamen@syndamia.com>2025-02-03 14:52:56 +0200
committerKamen Mladenov <kamen@syndamia.com>2025-02-03 14:52:56 +0200
commit0e2db3d20ccae2090f4a01d172e451c596da0c30 (patch)
tree95acbc2c53f35d8cd932433db0bce9003a86538f /guests_macro/src
parent729c6075045a224724e6b2da6e57721b5d48ab12 (diff)
downloadzkVMs-benchmarks-0e2db3d20ccae2090f4a01d172e451c596da0c30.tar
zkVMs-benchmarks-0e2db3d20ccae2090f4a01d172e451c596da0c30.tar.gz
zkVMs-benchmarks-0e2db3d20ccae2090f4a01d172e451c596da0c30.zip
feat(zkvms_host_io): Add public_inputs and private_inputs attributes to RunWith
Diffstat (limited to 'guests_macro/src')
-rw-r--r--guests_macro/src/parse_fn.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/guests_macro/src/parse_fn.rs b/guests_macro/src/parse_fn.rs
index 0e57879..e5558ad 100644
--- a/guests_macro/src/parse_fn.rs
+++ b/guests_macro/src/parse_fn.rs
@@ -79,6 +79,15 @@ pub fn args_split(item: &TokenStream) -> Vec<TokenStream> {
}
/// Input: "(p1 : t1, p2: t2, ...)"
+/// Output: vec!["p1 : t1", "p2: t2", ...]
+pub fn args_split_public(item: &TokenStream, public: &Vec<&String>) -> Vec<TokenStream> {
+ args_split(item)
+ .into_iter()
+ .filter(|a| public.iter().any(|x| a.to_string().starts_with(*x)))
+ .collect()
+}
+
+/// Input: "(p1 : t1, p2: t2, ...)"
/// Output: vec![p1, p2, ...], vec![t1, t2, ...]
pub fn args_divide(item: &TokenStream) -> (Vec<TokenStream>, Vec<TokenStream>) {
let contents;