inkpad_sandbox/
storage.rs1use crate::{Sandbox, StorageKey};
2use inkpad_executor::Result;
3use inkpad_std::Vec;
4
5impl Sandbox {
6 pub fn get_storage(&self, key: &StorageKey) -> Result<Option<Vec<u8>>> {
8 log::debug!(
9 "(get_storage) {:?} ({:?})",
10 key,
11 self.cache.borrow().active()
12 );
13 let v = self.cache.borrow().active_get(key).map(|v| v.to_vec());
14 Ok(v)
15 }
16
17 pub fn set_storage(&mut self, key: StorageKey, value: Vec<u8>) -> Result<()> {
19 log::debug!(
20 "(set_storage) {:?},{:?} ({:?})",
21 key,
22 value,
23 self.cache.borrow().active(),
24 );
25 self.cache.borrow_mut().active_set(key, value);
26 Ok(())
27 }
28}