mirror of
https://github.com/eth-act/ere.git
synced 2026-04-03 03:00:17 -04:00
zkVK methods return public values (#106)
This commit is contained in:
@@ -1,18 +1,23 @@
|
||||
#![no_main]
|
||||
|
||||
use test_utils::guest::BasicStruct;
|
||||
use test_utils::guest::{BasicStruct, BASIC_PROGRAM_BYTES_LENGTH};
|
||||
|
||||
sp1_zkvm::entrypoint!(main);
|
||||
|
||||
pub fn main() {
|
||||
// Read `Hello world` bytes.
|
||||
// Read `bytes`.
|
||||
let bytes = sp1_zkvm::io::read_vec();
|
||||
assert_eq!(String::from_utf8_lossy(&bytes), "Hello world");
|
||||
|
||||
// Read `BasicStruct`.
|
||||
// Read `basic_struct`.
|
||||
let basic_struct = sp1_zkvm::io::read::<BasicStruct>();
|
||||
let output = basic_struct.output();
|
||||
|
||||
// Write `output`
|
||||
sp1_zkvm::io::commit(&output);
|
||||
// Check `bytes` length is as expected.
|
||||
assert_eq!(bytes.len(), BASIC_PROGRAM_BYTES_LENGTH);
|
||||
|
||||
// Do some computation on `basic_struct`.
|
||||
let basic_struct_output = basic_struct.output();
|
||||
|
||||
// Write reversed `bytes` and `basic_struct_output`
|
||||
sp1_zkvm::io::commit_slice(&bytes.into_iter().rev().collect::<Vec<_>>());
|
||||
sp1_zkvm::io::commit(&basic_struct_output);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user