(
&self,
prefix: &[u8],
)
| 69 | } |
| 70 | |
| 71 | fn scan_prefix( |
| 72 | &self, |
| 73 | prefix: &[u8], |
| 74 | ) -> StorageResult<Box<dyn Iterator<Item = StorageResult<(Vec<u8>, Vec<u8>)>> + '_>> { |
| 75 | let data = self.data.read(); |
| 76 | let items: Vec<_> = data |
| 77 | .iter() |
| 78 | .filter(|(k, _)| k.starts_with(prefix)) |
| 79 | .map(|(k, v)| Ok((k.clone(), v.clone()))) |
| 80 | .collect(); |
| 81 | Ok(Box::new(items.into_iter())) |
| 82 | } |
| 83 | |
| 84 | fn batch_get(&self, keys: &[&[u8]]) -> StorageResult<Vec<Option<Vec<u8>>>> { |
| 85 | let data = self.data.read(); |