cfx_internal_common/
epoch_execution_commitment.rs

1// Copyright 2020 Conflux Foundation. All rights reserved.
2// Conflux is free software and distributed under GNU General Public License.
3// See http://www.gnu.org/licenses/
4
5/// receipts_root and logs_bloom got after an epoch is executed.
6/// It is NOT deferred.
7#[derive(Clone, Debug, RlpEncodable, RlpDecodable)]
8pub struct EpochExecutionCommitment {
9    pub state_root_with_aux_info: StateRootWithAuxInfo,
10    pub receipts_root: MerkleHash,
11    pub logs_bloom_hash: MerkleHash,
12}
13
14impl MallocSizeOf for EpochExecutionCommitment {
15    fn size_of(&self, _ops: &mut MallocSizeOfOps) -> usize { 0 }
16}
17
18impl_db_encoding_as_rlp!(EpochExecutionCommitment);
19
20use crate::StateRootWithAuxInfo;
21use malloc_size_of::{MallocSizeOf, MallocSizeOfOps};
22use primitives::MerkleHash;
23use rlp::*;
24use rlp_derive::*;