mina_tree/scan_state/transaction_logic/
transaction_witness.rs

1use super::{Transaction, TransactionStatus};
2use crate::{
3    scan_state::{currency::Slot, pending_coinbase::Stack},
4    sparse_ledger::SparseLedger,
5};
6use mina_p2p_messages::v2::MinaStateProtocolStateBodyValueStableV2;
7
8/// <https://github.com/MinaProtocol/mina/blob/436023ba41c43a50458a551b7ef7a9ae61670b25/src/lib/transaction_witness/transaction_witness.ml#L55>
9#[derive(Debug)]
10pub struct TransactionWitness {
11    pub transaction: Transaction,
12    pub first_pass_ledger: SparseLedger,
13    pub second_pass_ledger: SparseLedger,
14    pub protocol_state_body: MinaStateProtocolStateBodyValueStableV2,
15    pub init_stack: Stack,
16    pub status: TransactionStatus,
17    pub block_global_slot: Slot,
18}