casper_storage/data_access_layer/
prefixed_values.rs1use crate::{tracking_copy::TrackingCopyError, KeyPrefix};
3use casper_types::{Digest, StoredValue};
4
5#[derive(Debug, Clone, PartialEq, Eq)]
7pub struct PrefixedValuesRequest {
8 state_hash: Digest,
9 key_prefix: KeyPrefix,
10}
11
12impl PrefixedValuesRequest {
13 pub fn new(state_hash: Digest, key_prefix: KeyPrefix) -> Self {
15 Self {
16 state_hash,
17 key_prefix,
18 }
19 }
20
21 pub fn state_hash(&self) -> Digest {
23 self.state_hash
24 }
25
26 pub fn key_prefix(&self) -> &KeyPrefix {
28 &self.key_prefix
29 }
30}
31
32#[derive(Debug)]
34pub enum PrefixedValuesResult {
35 RootNotFound,
37 Success {
39 key_prefix: KeyPrefix,
41 values: Vec<StoredValue>,
43 },
44 Failure(TrackingCopyError),
46}