casper_executor_wasm_host/
context.rs1use std::sync::Arc;
2
3use bytes::Bytes;
4use casper_executor_wasm_interface::executor::Executor;
5use casper_storage::{global_state::GlobalStateReader, AddressGenerator, TrackingCopy};
6use casper_types::{
7 account::AccountHash, BlockTime, Key, MessageLimits, StorageCosts, TransactionHash,
8 WasmV2Config,
9};
10use parking_lot::RwLock;
11
12pub struct Context<S: GlobalStateReader, E: Executor> {
14 pub initiator: AccountHash,
16 pub caller: Key,
19 pub callee: Key,
21 pub transferred_value: u64,
26 pub config: WasmV2Config,
27 pub storage_costs: StorageCosts,
28 pub message_limits: MessageLimits,
29 pub tracking_copy: TrackingCopy<S>,
30 pub executor: E, pub transaction_hash: TransactionHash,
32 pub address_generator: Arc<RwLock<AddressGenerator>>,
33 pub chain_name: Arc<str>,
34 pub input: Bytes,
35 pub block_time: BlockTime,
36}