anvil_zksync_core/node/diagnostics/
transaction.rs1use std::collections::HashMap;
2
3use anvil_zksync_common::address_map::KNOWN_ADDRESSES;
4use zksync_types::{Address, Transaction};
5
6pub fn known_addresses_after_transaction(tx: &Transaction) -> HashMap<Address, Option<String>> {
7 let mut known_addresses: HashMap<Address, Option<String>> = KNOWN_ADDRESSES
8 .iter()
9 .map(|(address, known_address)| (*address, Some(known_address.name.clone())))
10 .collect();
11 for address in [
12 Some(tx.payer()),
13 Some(tx.initiator_account()),
14 tx.recipient_account(),
15 ]
16 .into_iter()
17 .flatten()
18 {
19 known_addresses.entry(address).or_insert(None);
20 }
21 known_addresses
22}