snarkvm_ledger_debug/
contains.rs1use super::*;
16
17impl<N: Network, C: ConsensusStorage<N>> Ledger<N, C> {
18 pub fn contains_state_root(&self, state_root: &N::StateRoot) -> Result<bool> {
20 self.vm.block_store().contains_state_root(state_root)
21 }
22
23 pub fn contains_block_height(&self, height: u32) -> Result<bool> {
25 self.vm.block_store().contains_block_height(height)
26 }
27
28 pub fn contains_block_hash(&self, block_hash: &N::BlockHash) -> Result<bool> {
30 self.vm.block_store().contains_block_hash(block_hash)
31 }
32
33 pub fn contains_certificate(&self, certificate_id: &Field<N>) -> Result<bool> {
35 self.vm.block_store().contains_certificate(certificate_id)
36 }
37
38 pub fn contains_program_id(&self, program_id: &ProgramID<N>) -> Result<bool> {
40 self.vm.transaction_store().contains_program_id(program_id)
41 }
42
43 pub fn contains_transmission(&self, transmission_id: &TransmissionID<N>) -> Result<bool> {
45 match transmission_id {
46 TransmissionID::Ratification => Ok(false),
47 TransmissionID::Solution(puzzle_commitment) => self.contains_puzzle_commitment(puzzle_commitment),
48 TransmissionID::Transaction(transaction_id) => self.contains_transaction_id(transaction_id),
49 }
50 }
51
52 pub fn contains_puzzle_commitment(&self, puzzle_commitment: &PuzzleCommitment<N>) -> Result<bool> {
54 self.vm.block_store().contains_puzzle_commitment(puzzle_commitment)
55 }
56
57 pub fn contains_transaction_id(&self, transaction_id: &N::TransactionID) -> Result<bool> {
61 self.vm.block_store().contains_transaction_id(transaction_id)
62 }
63
64 pub fn contains_transition_id(&self, transition_id: &N::TransitionID) -> Result<bool> {
68 self.vm.transition_store().contains_transition_id(transition_id)
69 }
70
71 pub fn contains_input_id(&self, input_id: &Field<N>) -> Result<bool> {
75 self.vm.transition_store().contains_input_id(input_id)
76 }
77
78 pub fn contains_serial_number(&self, serial_number: &Field<N>) -> Result<bool> {
80 self.vm.transition_store().contains_serial_number(serial_number)
81 }
82
83 pub fn contains_tag(&self, tag: &Field<N>) -> Result<bool> {
85 self.vm.transition_store().contains_tag(tag)
86 }
87
88 pub fn contains_output_id(&self, output_id: &Field<N>) -> Result<bool> {
92 self.vm.transition_store().contains_output_id(output_id)
93 }
94
95 pub fn contains_commitment(&self, commitment: &Field<N>) -> Result<bool> {
97 self.vm.transition_store().contains_commitment(commitment)
98 }
99
100 pub fn contains_checksum(&self, checksum: &Field<N>) -> bool {
102 self.vm.transition_store().contains_checksum(checksum)
103 }
104
105 pub fn contains_nonce(&self, nonce: &Group<N>) -> Result<bool> {
107 self.vm.transition_store().contains_nonce(nonce)
108 }
109
110 pub fn contains_tpk(&self, tpk: &Group<N>) -> Result<bool> {
114 self.vm.transition_store().contains_tpk(tpk)
115 }
116
117 pub fn contains_tcm(&self, tcm: &Field<N>) -> Result<bool> {
119 self.vm.transition_store().contains_tcm(tcm)
120 }
121}